top of page
optimize modeling

Lesson 2 : Optimize modeling scene

We will learn how to optimize a modeling scene. We will focus on the process as a whole, with a specific emphasis on the software Maya.

This will enable you to create clean scenes and provide you with valuable advice for effective optimization. A clean modeling scene is essential for a well-structured rigging scene.

Table of Contents

1. Why optimize a modeling scene ?
2. Performance optimization
3.
Ergonomic optimization
4. Sources

1. Why optimize a modeling scene ?

Optimizing a modeling scene is indeed a very important thing. It must be optimized to achieve good performance and to allow the rigging, animation, lookdev artists, etc. to work under good conditions. This will enable the film production to progress smoothly.

​

Of course, the more organized and neatly arranged a scene is, the

easier it will be for you to navigate within it, and it will also be easier

for others. In this course, we will talk truthfully, but we will mainly

focus on how to optimize in Maya.

​

We discuss modeling in a rigging course because it's important

to have a clean modeling scene in order to properly work on a

rigging scene.

​

Optimizing 3D modeling scenes is essential to ensure fast and stable

performance. Here are some tips to help you optimize your scenes

when publishing your scene after you have validated everything in it:

optimisation maya

2. Performance optimization

To begin the course, we can discuss Deleting Unused Elements. Go through your scene and remove any objects, materials, or lights that are not being used. This will help reduce the size of your scene and improve performance.

​

For instance, in Maya, there is a button in the toolbar to do this. If you go to the Hyper Shade and click on

"Delete unused Nodes", Maya will automatically remove all unused materials and DAG nodes from the scene.

delete unused nodes

However, Maya will not automatically remove any unnecessary "Transform" nodes or unused "Shape" nodes. You will need to either use a script or manually go through and check if any nodes are still useful to you or not.

​

In Maya, if you have empty nodes lingering around or elements like "surface" or other "Shape" that are completely unnecessary, delete them. Of course, make sure that these elements are truly not needed.

Freeze Transform

You will also need to ensure that all your groups and meshes have "freezeTransform" applied, meaning there should be no values in translation, rotation, and scale. This will help you avoid numerous calculations, whether related to lighting, rig deformation, or anything related to modeling itself.

 

For example, if you create UVs on a mesh that is not "freezeTransform", and its parent groups are not as well, you'll encounter unexpected results with the UVs. This is because the UVs will be computed based on the transformation, leading to stretching and distorting the textures applied to the mesh in an undesirable manner.

​

Here's an example: one cube with "freezeTransform"and another without it.

don't do this                                                      do this 

freezeTransform
freezeTransform

Center pivot

Right after "freezeTransform" all your meshes and ensuring that they are indeed "freezeTransform", you will need to verify that each group and each mesh has its pivot point at the world center. This is crucial, whether for rigging or for exports you may perform for special effects (FX). This step is essential to avoid offsets that may occur if you scale the model between different software programs.

don't do this                                                      do this 

center pivot
center pivot

Import Reference

What you will also need to do is, if you have referenced scenes in the scene, during the publish process, you'll have to either import them or remove them if they're not needed. This is because a referenced scene includes all the nodes from that scene. So, if in the referenced scene, there are unnecessary nodes or groups, they will also be present in your final scene. Therefore, it is imperative to either import your referenced scene or delete it if not needed. This is often the first step when cleaning a scene during the publish process.

don't do this                                                      do this 

reference maya
import reference maya
import reference maya

Delete history

Of course, one crucial thing to do is to apply all the modification nodes. The histories of the nodes need to be clean. For example, if you add an edge loop in Maya, it will create a history that needs to be cleaned.

​

In Blender, if you add a modifier, it needs to be applied. In your modeling scene, there should only be the pure modeling without any modifiers or history. Remember, when you create UVs, it creates a history, so once you've created the UVs, be sure to also remember to delete the history.

don't do this                                                      do this 

delete history
delete history
delete history

Merge shape

One important thing to know in Maya is that for every element created, every node, Maya must compute or interact with it. So, the fewer nodes you have, the more optimized the scene will be.

​

For instance, if you create three separate transforms that follow each other, Maya will have to calculate three transforms instead of just one. This also applies to meshes, the more meshes you combine, the faster Maya will be able to compute, as it won't need to calculate the transform node associated with each shape.

​

For example, if we have 15 meshes, Maya will have to load 15 transforms and 15 shapes. However, if we merge these 15 meshes, Maya should only have to load one transform and 15 shapes.

Of course, it's important not to overdo it.

don't do this                                                      do this 

merge mesh
merge mesh
merge mesh
merge mesh

don't do this                                                      do this 

groupe maya
groupe maya

Double shape

Lastly, you need to be mindful of double or triple shapes. This is more specific to Maya, as in Maya, it's possible to have multiple meshes within one transform node.

intermediate Objects

Indeed, some shapes are hidden within the transform node because the "Intermediate Objects" setting is activated, which prevents these shapes from being visible.

​

Even in the Outliner, when you enable "Shapes" in the display, they won't be visible. However, if you deactivate the "Intermediate Objects" setting in the transform node, you'll be able to see them in the scene (both in the Outliner and the Viewport). Be cautious about this, as it can be quite tricky.

​

Afterward, you can delete them (please note that this advice applies to modeling scenes, as hidden shapes can be useful in rigging).

intermediate Objects
intermediate Objects

3. Ergonomic optimization

An optimally organized scene is not only about performance; it's also about how you arrange and name it. A poorly organized scene will be much more challenging to use compared to a well-named scene with all the nodes properly renamed. For each element in your scene, it's important to have a distinct name. Avoid using the same names exactly, as this can create issues when exporting as Alembic, for example.

 

For instance, in Maya and other software, groups will have the prefix "grp_" and the group's name. For all meshes, they will have the prefix "msh_" and for surfaces, "surf_".

don't do this                                                      do this 

outliner
outliner

Delete namespace

You will also need to remove the "namespaces." This is more relevant to Maya. When you import something into Maya, it will automatically create a "namespaces" (you can also create your own "namespaces"). They are very useful to prevent breaking your Maya scene. However, when it comes to publishing a modeling scene or similar, you should remove them to keep everything as clean as possible.

don't do this                                                      do this 

namespace
namespace
namespace

Name scene

One thing that doesn't necessarily pertain to optimization, but is still worth mentioning, is the importance of doing incremental saves. Creating multiple versions of your scene allows you to backup and maintain a history of everything you've done, making it easier to revert if what you've done doesn't work out. And of course, it's crucial to name your scenes appropriately, avoiding accents, spaces, and using underscores "_" instead.

don't do this                                                      do this 

project maya
porjet maya

Conclusion

I've listed quite a few things for you that will help you optimize your scenes properly. Of course, there are other ways to optimize even further. For example, using instances for repeating models to avoid having the same model loaded 15 times, which would require the computer to process all 15 instead of just one.

 

Alternatively, you can even read the scene as a text file to modify the pure code of the scene. However, this requires a very deep knowledge of coding and the software being used. Keep in mind that this course is here to introduce you and provide the basics of optimization in your scenes, as this is crucial for effective work.

I hope this lesson has served you well !

4. Sources

bottom of page