Generate efficient 3D assets
In this first part, we will focus on the necessary steps that should be performed when importing 3D assets to Simumatik. On the next page, we will take a look at some additional steps that can be performed if the results need to be improved. This course is meant to be suitable to follow for any CAD or modelling software you might be using.
In short, these are the steps that will be followed:
Prepare and simplify the model. This can either be done in your CAD software of choice, or in Blender.
Convert the model to a format that can be imported by Blender.
Use Blender to optimize the model.
In Blender: Modify materials, and minimize the number of materials.
Give the model a standardized position and rotation.
Export the model from Blender in .glb format.
Open the model in an online glTF Viewer to see the result.
Upload the model to Simumatik.
Preparing the model (in your CAD software)
If you have the possibility of making changes to the model in your go-to CAD software, remove any unnecessary parts of the model such as threaded screws, nuts and other detailed but not visible objects.
When exporting from your CAD software, choose a format that is supported by Blender. Some good options are .dae(Collada)/.glb/.gltf/.obj. The .stl filetype can also be used, but keep in mind that it does not include colour data etc, just the geometry. Below is a full list of the formats Blender can import by default.
Using Blender to optimize the model
First of all, make sure you have Blender installed. It is open-source, free, and can be downloaded from blender.org/download.
When starting Blender, there will be a default scene with some objects. To delete all default objects, press A on the keyboard to select everything, then press the X key and choose delete.
Import the model
To import your model in Blender, go to File -> Import and select the format you used when exporting the model.
Remove unnecessary objects (in Blender)
After importing the model, do some clean-up in Blender if necessary. To remove any node that is not needed, simply select it by clicking on it and then press the X key. To see internal details you can switch to the wireframe mode by pressing SHIFT + Z.
If the entire model gets selected when you are trying to only select a part of it, try performing these steps:
Select the model by clicking it
Enter edit mode by pressing TAB on the keyboard
Press P and select either “By material” or “By Loose parts”, depending on whether it makes sense to split by materials or not.
Press TAB again to go back to Object mode.
This will separate loose parts in the model and allow you to select specific details to delete more easily. How easy the model is to work with will heavily depend on how the software it was exported from handles the specific format.
Join all nodes in the model
It’s important to make sure that there is only one mesh object in the file for performance reasons. This is how to join all meshes in Blender:
Click any part of the model to make it active.
Press A on the keyboard to select everything.
Press CTRL + J to join all objects.
Simplifying the model
Blender has a modifier that can simplify the geometry of a mesh. By doing the previous step first (joining all objects), this modifier will be applied to the entire model.
Activate the object you want to simplify by clicking on it.
Press the wrench icon located in the bottom right window.
Click ‘Add Modifier’ and choose the ‘Decimate’ modifier.
Reducing the ‘Ratio’ in this modifier will reduce the Face Count. Keep the Ratio as low as possible without deforming the model too much.
Apply the modifier by pressing CTRL + A while hovering the modifier.
To make the model look better, we can switch to the material preview mode and make some modifications. Place the mouse in the 3d view, hold the Z key and select “Material Preview”. Now switch to the Material Properties tab located in the bottom right window. Make sure that the object you want to modify is selected in the 3d view. Now if there are already some materials in the list, you can modify them by selecting them in the list. Otherwise, you can create a new material by pressing the ‘New’ button. Modify the ‘Base Color’, ‘Metallic’ and ‘Roughness’ parameters to make the material look the way you want it to.
To center the origin of the object, select it (left click), then right-click and select ‘Set Origin’ -> ‘Origin to 3D Cursor’, and then right-click and select ‘Geometry to Origin’.
Note: if the 3D cursor (red white ring) is not in the world center, you first need to right-click and choose ‘Snap’ -> ‘Cursor to World Origin’.
The object can also be moved manually by pressing the G key for “grab” or R for “rotate”. The X, Y and Z keys can be used to limit the motion in one axis. For example G followed by Y lets you move the object on the y axis. And R followed by Z makes it rotate around the z axis. You can then use the number keys on the keyboard to input an exact number, like 90 degrees, and press ENTER to confirm.
Export and review result
To export the file, go to ‘File’ -> ‘Export’ -> ‘glTF 2.0 (.glb/.gltf)’. Now open it in this online glTF Viewer and press the button in the bottom left corner to get some statistics about the model. The number of draw calls should not be greater than the number of materials in the model. Also make sure that the triangle count is not too high. If the triangle count is reaching above 100 000 it’s a good idea to do some further optimization, try to keep it below 50 000. What number is acceptable mainly depends on how many instances of the component will be added to a system and on how much your computer can handle. To reduce it you can either delete some parts of the model or try to use a more aggressive ratio in the ‘Decimate’ modifier.
Now it’s time to upload the model to Simumatik.