Game Ready/Multi-Material Setup Tool for Maya.

General / 19 August 2019

It's been a while since I last posted something so here we go. While working on the TV series in the UK, I got to learn a bit of python. Since coming back to Barcelona, I've released 3 really simple tools for fun and to keep improving my python scripts.

To everyone coming from 3Ds Max, Maya has a tone of great stuff, but when it comes to setting up and exporting assets for your games, it is not as easy and intuitive as Max. 

Many of my friends and colleagues have been having issues with Maya's scale, freezing transforms, the xForm from Max, setting up multi-material objects, exporting and so on. That's why I decided to create this tool in my free time.  


- Batch Rename: Rename one or multiple objects without having to open the "Outliner" or the "Channel Box".  

- Apply and rename a material to one or multiple objects or faces of an object without having to scroll all the way down to where the material is in the "Attribute Editor", and without having to open the "Hypergraph"

- Color picker: Change the color of your material quick and easy. 

- Combine multiple objects and set their pivot to the lowest point of the object with one click

- Equivalent to the reset xForm from Max in maya. 

- After saving your file, name it and export your FBX with one click:

  • Smoothing Groups and Smooth Mesh one. 
  • No animation, cameras, lights, constraints and connections. 
  • Customize your own Preset to override the default options. 


- Scripts
- Instructions
- Icons


- If you have any feedback on how to improve the tool and want something added, email me at


Download and install the tool here, make sure to watch the demo and installation video: 

In case you just want to check out the code: 

(Warning!, copy pasting the code from the link above into the Script Editor won't work, make sure to download the tool from Gumroad, and follow the instructions in the video)


Here's what the functions do:

def input_UI():

Responsible for creating the UI and how it should behave when the user interacts with it. 

def assign_material(): 

Responsible for assigning a material to one or more objects and to one or more face polygons. This will create a new material, with your custom name.

def set_color(): 

Sets the color that you have selected on the materials of the objects or face polygons that you have selected. 

def setup_object(): 

Rename one object without opening the outliner, or batch rename multiple selected objects. 

def reset_xForm(): 

Freezes transformations using the 'makeIdentity', deletes history and sets the pivot to the bottom of the bounding box of the object. Intended to use only before exporting your model. 

def combine_fun(): 

This will combine any selected objects, it will delete its history, center the pivot and move it to the bottom of the bounding box of the new object while keeping the old name of the first object selected. 

def export_fbx():

Using your '.fbxexportpreset', it will export the fbx to the same path where you have your Maya file saved. If the file is not saved, it will not export the fbx. 

Thanks for reading, I hope someone can find this useful :D


First ever credit on Shane the Chef !

General / 02 April 2018
This will be a really quick one. Not long ago I thought that I was pretty far from seeing my name on the credits of an animated series or film on TV. A few months ago I started working at Cloth Cat Animation. Today, Shane The Chef has been released on Channel5 in the UK. 
It is an honor and I am very proud to be part of this team and I can't explain what I felt when I saw my name on the screen. A huge congratulations to the entire team ! If you have kids, get ready ! There are 51 more episodes ahead :) #LetsGetCooking #ShaneTheChef


Make sure to follow Cloth Cat on twitter:
Make sure to like the facebook page:

Semi-Stylized Forest Substances - Substance Designer

Making Of / 13 November 2017
For our first uni project we've been asked to create a short advert in Maya. 

This is the idea we came up with:
"An eagle is flying through a dead forest with falling trees, carrying an acorn. As he is flying around trees, he barely dodges a falling tree and drops the acorn. It falls on the ground. We see another animal step on it and it gets buried into the dirt. Then a small plant starts to grow from the acorn in timelapse. The other animal is now running across a stone path in a treeless wasteland as trees and plants grow wherever it goes. It runs up to a cliff edge and stops as camera carries on past them into a landscape nature shot. Logo appears."

I've been in charge of crerating textures, materials, some models and the eagle (from modeling to rigging). We were going for a dark semi stylized environment and here is some wip of it. Our terrain will have a "dirt/mud" material, a "pine needles" material and a "diry rock" material.
Here are some rocks I've made and textured using Maya and Zbrush and Substance Painter.

The acorn:
Some bark textures:
Some more wip for the eagle:
Rigging GIF:

How to make Maya rigs play nice with Unity and Unreal Engine 4.

Article / 17 June 2017
This will be a quick article. I've been importing rigged characters into Unity and Unreal Engine 4 for more than a year, and I've experienced all kind of problems. The most disturbing one though, was getting an extremely huge/small, broken mesh like the one you can see in the picture below. Or similar. The purpose of this article is to help out people encountering the same issue, since there is not much information online, and it's quite hard to find.

If you are getting this error when exporting from Maya and your model is broken in Unity/UE4; "ImportFBX Warnings: File contains 23..." You have to take a look at every joint that Unity or Maya names in the error log, select it in Maya, and go to Attribute Editor (CTRL+A for win) and under the "Joint" section, turn "Segment Scale Compensate" off.
If the amount of joints you have in the log is extremely huge you can use a MEL script. Just select all the joints and the script will be turning SSC off for all of them.
string $selected[] = `ls -type joint`;
select -r $selected;

string $sel[] = `ls -sl`;
string $singleJnt;
for ($singleJnt in $sel)
setAttr ($singleJnt + ".segmentScaleCompensate") 0;

If you wish to expand your knowledge in this area, further information can be found in the Autodesk Knowledge Network, where I got the MEL script: Turning Off Segment Scale Compensate in Maya.

Image was taken from: This thread.

Jeff's Tower VR

General / 05 June 2017
Summer is finally here! We've all handed in our final projects at South Wales University, and while for some people, it feels good to not have any work to do, people like me, need to be busy and work on new stuff 24/7.
This last week, I helped a 3D Character Artist friend who is working in a VR project. They needed one of their characters to be rigged, and so I decided to help them. The links to the game and to my friend's portfolio are linked down below.
The whole body can be controlled by an FK system but it has a few add ons. One of the most interesting things that I've been wanting to do for a long time, was a dynamic tail. For this one, I used a dynamic curve and a spline IK. I basically had the main root chain of bones. This is the one that will be baked and exported to Unreal Engine 4, and it's the one bind to the character's skin. Then I had a bone chain called DRV, from driver. I connected this chain to the dynamic curve. Then I tweaked a little bit the values of the hair system created by the dynamic curve. I also turned on the plane collision. Then using constraints, I linked the DRV tail to the main tail, and I created controllers to control the FK system and the dynamic system, and both systems were blended using the constraints, and the Set Driven Key tool from Maya.
The rig also has an IK/FK switch for the arms, and CCs to fully control the wings. When switching between modes, the corresponding controllers appear/disappear. A little bit of MEL scripting was taken from one of the Pluralsight courses ("Rigging a sea creature"), to blend the rotation of the body bones, so when you rotate one of them, the adjacent ones rotate proportionally. This gives an extraordinary sense of organic, and it also helps the skinning. Apart from that it has all the other common controllers. The feet controllers have attributes to control the ankle, ball, toe and heel rotation. Sorry this is not a "beginner friendly" explanation and it's not super detailed.

First UE4 Environment

General / 15 May 2017
So many things have happened for the last two months. The project that me and my friends were going to work on, had to be reevaluated. One of my friends found a job, and had another personal project going on, and the one that was going to rigg and animate the animals, dropped the project for personal issues, so I decided to stop making them.
But since I wanted to learn more about Unreal Engine 4, and since it was my first time using it, I decided to model a few more things during the last week, and I used three corals and three rocks that my friend had done before focusing in his personal project, and here's what I ended up with. I would say the whole scene took about 6 or 7 days to make, from models and textures, to materials and scene setup. It looks like an unfinished project (which it is), but I'm pretty happy with what I got with my 3rd year friend guidance, and my work.

What is the RMAH map?

Article / 07 May 2017
So my teachers asked me to give them some of my models, with the corresponding textures, and they were asking me to send them rough, metallic and ao maps (and height when needed). Instead, I prepared what many people call RMAH maps. That's why I prepared this video. I haven't seen much information about it online so here it is.

UE4 gives you full control over the channels (r,g,b,a) of an image. So if you store different maps, into different channels, you can break down that image and plug the red, green and blue channels separately.

Nano Mesh: Zbrush Workflow

General / 16 March 2017
So, I'm doing a lot of props for my next project, so I'm speeding up my workflow. This is one of the methods I use to achieve complex shapes and meshes.
1. I created 6 shapes or meshes in Maya. After that, I imported all 6 meshes to Zbrush, and I put them all in the same tool, but in different subtools.
2. After that you are ready to go to the brush palette, and click "Create insert multi mesh". Create a low poly surface where you want to place your nano mesh, go to brush again, and hit "Create Nano Mesh brush". Now, if you go ahead and press the space bar while your mouse is over a polygon, a pop up menu will appear. In it, you can find the available options on where to place you nano meshes.
3. After checking that it was working, I organised my mesh into polygroups and started placing the nano meshes. After sculpting in Zbrush, tweaking, and giving my prop randomness...
4. I exported my high poly, and I decimated it to get a low poly. Since this model will be static in the game engine, I don't have to worry about quads or topology that much. To get the UV's I used Maya's tools, but for more complex meshes or characters I use RoadKill. I used Knaldto get my height map. Then I went to Substance Painter, and I baked my other maps there. I textured it taking advantage of the curvature, thickness and the AO maps. Very helpful for creating masks. After that, I sent it to UE4. I set up a material aaand done.
Final mesh has 1k vertices, and the material I set up, is a distance based tessellation material. So it only tessellates and uses the height map when you get close; the closer you get the more detailed you see the model.
#zbrush #nanomesh #3d #3dart #allegorithmic #ue4

New big project going on !

Making Of / 03 March 2017
Two friends of mine and me have started a new project. After a while thinking about what to do, and how to approach it, we are going to do an underwater environment in UE4, which is completley different to what we've done in the past.
It will be set in Australia, somewhere in the Great Barrier, midday, with vivid colours and a disney-ish semi-realistic style. Set in 2017, in a sunny day” 

Specific place: Cairns

I won't be doing it with everything, but here's a quick breakdown of one of the first models.
C&C are welcome. It's gonna be awesome :D Feedback will definitely help me to improve.

Playing with height maps Substance Designer !

General / 28 February 2017
So yesterday I was playing with height maps, I had nothing in mind, no reference, just for fun and to get more familiar with the software. Here's a short demo of how amazing this software is. Endless possibilities.