Polygonal Mind
  • Home
  • Metaverse Builder
  • CryptoAvatars
  • MegaCube
  • Blog
  • Decentraland
  • Projects
  • Assets

Blog

I'm LODing it (Level of Detail)

9/16/2019

0 Comments

 
The Mission
Resources
Creating LOD meshes for game engines
​in a fast and reliable way.
  • MayaLT 2019
  • Unity 2019
  • A mesh you want to LOD
First of all, what's a LOD?

LOD (Level Of Detail) is a method of game optimization that decreases the complexity of a 3d mesh (or lately even shader, textures, etc.) as it gets further away from the player, and it's usually used in conjunction with other optimization techniques like culling. The most common execution of this method consists of utilizing a secondary mesh, which replaces the original with a lower resolution one at a certain distance to avoid having too much unnecessary detail. The initial mesh can be generated automatically, but you will have to fix stuff manually!
LOD levels into Maya 3D
Using MayaLT to create automatic LODs

Maya has a built-in tool that lets you create automatic LODs based on either camera distance or % of the total poly count. You can access it in Edit > Hierarchy > LOD (Level of Detail) > Generate LOD Meshes. Click the box right next to this last button to get access to the options instead of the defaults.
generate LOD meshes with Maya
These are the settings we've been using for our latest project, which you'll know more about soon!
In many cases (most of the time, to be honest) you'll just use this as a kickstart and improve upon the automatically generated mesh.
Maya generate LOD meshes options
General Workflow

1. ​First, duplicate the mesh we are going to LOD and hide it. This is the equivalent to duplicating the background layer and working in a regular layer in Photoshop, just to make sure we keep the original material in case something went wrong.
Boat mesh into Maya
2. ​Then use the tool to create as many LODs as you need.
Maya tool to create LODs
3. ​Extract the meshes from the LOD group by unparenting them to examine and fix any problems
​you could find, individually.
Maya extract LOD meshes
4. Apply the material of the original mesh to the LODded one, so you can see how close to the original mesh's look it is.

5. After that, follow the troubleshooting steps below to fix the problems you caught.
​
6. Finally, when you're happy with the result, rename everything to your chosen naming convention
​and export.
Troubleshooting

  • Imperfect autoLODs: As I said before, the automatic tools are not perfect. Thus, is up to us to fix the computer-generated errors. Specially round or cylindrical surfaces are very hard to get right on the first try, and are what usually will need some more love from the human side.
Original LOD mesh
Original
Maya automatic LOD mesh
Automatic LOD
Modified LOD mesh maya
Modified fixed LOD
  • UVs got distorted: automatic LODding usually maintains the UVs for the most part, but if you have to make any manual changes to improve it (SPOILER: YOU WILL) you'll need to ​fix the UVs to match the original mesh's, especially when utilizing Target Welds, Merges and some other similar operations.
UVs automatic LOD Maya
UVs LOD modified
  • Popping: When a LODded mesh is very different from the original one, you can see what's called pop, or popping. Our job is to make this transition as seamless and smooth as possible, by using more LOD levels. The idea is to balance optimization with good looking LODs (so the player doesn't notice the lowpoly model too soon).
LOD change when camera go further
Using LODs in Unity 2019

Unity has a built in LOD system. First, you need to have the correct hierarchy for it to work correctly. Import your mesh and the LODs of that mesh to the scene, create a new empty GameObject, put the original mesh and its LODs inside the empty GameObject. Then select the parent > go to the Inspector Panel > Click on Add Component > search for "LOD Group"
LOD groups into Unity
LOD group Unity 3D
You'll then see 4 slots, for different LODs. You can add and delete as many as you want by right clicking over them and selecting "Insert before" or "Delete", respectively.
Edit LOD group into Unity
You can now assign a mesh you have prepared before to every LOD by clicking on the big square "Add" button by having previously clicked on the desired LOD.
LOD example into Unity 3D
Also, by dragging between the transition of the LODs from left to right, you can set up the separation of the different LODs based off the distance. By dragging the camera icon you can preview the system working as it would happen in real time when the player was getting closer or further from the mesh.
Camera movement for LOD meshes into Unity 3D
The Conclusion

As it happens with any tool, if you just leave the results that got automatically generated the result is going to be a lot worse than if you tweak it a bit to fit your needs (for example, just drag and dropping Smart Materials vs actually understanding material layering and utilizing Smart Materials to accelerate your texturing process in Substance Painter or Quixel).
​
The beauty of this is the combination of the automatic process and the human input, generating a faster mesh than doing it all manually, but getting a better result due to the fixes done by the user.
Post by:

Alex @Vontadeh

Alejandro Bielsa is a junior 3D artist working at Polygonal Mind's in-house team.
Passionate about videogames, vivid tutorial drinker and cat lover.

0 Comments

    Categories

    All
    Blender
    CryptoAvatars
    Decentraland
    Decentraland En Español
    Maya
    Metaverse
    Mixamo
    Morphite
    Substance Painter
    The Sandbox
    Totally Reliable Delivery Service
    Unity 3D
    Updates
    Vrchat

    Archives

    March 2022
    July 2021
    June 2021
    May 2021
    April 2021
    March 2021
    February 2021
    January 2021
    December 2020
    October 2020
    August 2020
    July 2020
    June 2020
    May 2020
    April 2020
    March 2020
    February 2020
    December 2019
    October 2019
    September 2019
    August 2019
    June 2019
    May 2019
    February 2019
    January 2019
    December 2018
    November 2018
    October 2018
    September 2016

    Picture
Home
Projects
Assets

Picture
Crypto
Friendly
Picture

Subscribe to get some 💚 in your inbox once in a while.

Follow us and your visit will never be forgotten!
Picture
Picture
Picture

 © 2015-2022 POLYGONAL MIND LTD. ALL RIGHTS RESERVED.
  • Home
  • Metaverse Builder
  • CryptoAvatars
  • MegaCube
  • Blog
  • Decentraland
  • Projects
  • Assets