top of page
Writer's pictureAlis A

Basic Optimization - LOD

Updated: Jul 6, 2023




What is LOD?

To start the conversation, what is LOD? This common acronym stands for “Level Of Detail”, a word you will hear A LOT about in scenario optimization.


Using LODs has its advantages, as they are “simple” to create and generate a quick and noticeable result, even with simple configurations made by a beginner.


How does LOD work?

Suppose we have an SM of a car, what is done in theory is to replicate this object, and reduce its quality as it replicates new levels, where these are swapped based on screen percentage or screen size.

Screen dize is basically a different way of calculating distances.


In Unreal Engine 4 the base LOD, numbered as “0” will always be with the screen percentage equal to 1, this represents that the object occupies 100% of the screen, or that it would have the full size, hence screen size.


As this number “1” is reduced to “0.75”, “0.5” and “0.25” in the LOD levels, the distance that the SM will be changed to one with fewer triangles increases, that is, the greater the distance between the camera and the object, the smaller the size of the object on the screen.


Understanding LOD Configuration (LOD Settings)

LOD Group - Here you can choose a group with UE standards for automatic creation of each LOD level. Each group has a number of LODs, but in general there is no big difference, I recommend using “SmallProp” or “LargeProp”. The distance of the levels is not defined by the group, but by SM characteristics, so ignore this distance fact as we will manually configure it for a better result.


LOD Import - Before UE4 had a system that automatically generates LOD levels based on a base SM, I needed to create the LODs manually in a 3D modeling program like Blender, then export and re-import into the engine. In the advanced method I will explore this import functionality better by merging with the automatic generation of UE4.


Number of LODs - If you don't want to use a LOD group in the above options, you can just add a specific amount of LOD for UE4 to create automatically. Currently the maximum level is 8. This option is very similar to the LOD Group, but it will be VERY useful for us in the advanced method.


Auto Compute LOD Distance - If this option is active, when adding LODs using the "Number Of LODs" option, or if LODs already exist, it will block the editing of the distance between levels and will calculate it automatically. An option that I'm not used to using, as distances are rarely assertive.



Configuring the LOD


  • Disabling Auto Distance

Uncheck “Auto Compute LOD Distance”

  • Reducing Shadows

Go to a category above under “LOD 0” (Shown in Image) and expand the “Sections” section. (I will go into more detail about shadows in an upcoming post)

If your SM has a lot of materials or some material that fits in the following list, it is recommended to disable the shadows. Parts of the SM that are barely visible

  • Parts too small to notice shadows.

  • Which have translucent materials (Glass).

  • Emissive Materials.

  • Internal parts that are not visible.

  • Parts that your shadow does not cause visual changes because they are in a location that the rest of the SM itself makes shadows impossible to perceive.

It is important that shadows that should never be visible are configured in LOD 0, before creating any other LODs, otherwise you will have to configure each LOD manually.


You can also use the options on the left side “Highlight” or “Isolate” to visualize the parts that are using the specific material slot, so you can identify exactly parts of the object and decide what to do.


  • Applying the LODs

After configuring the shadows in LOD 0, go back to the “LOD Settings” category. In the “Number Of LOD” option, set the value to 4 and click “Apply Changes”.


  • Viewing the LODs

Two categories above we have “LOD Picker”, expand and check “Custom”. Now you can view and edit each of your SM's 4 LOD levels, from “Screen Size”, “Lightmaps”, materials and reduction settings.


  • Relevant informations

The most relevant information for us at the moment is: number of triangles (Tris) and screen size (Screen Size).

  1. Here the number of triangles and vertices in the level is shown.

  2. Shows the screen size set in 3.

These two pieces of information are shown in several places.


Since in the upper left corner of the viewport you can see all the current LOD settings based on the camera in the viewport.


  • Reduction Settings

To reduce the tris of a LOD level just expand “Reduction Settings”

Termination - The engine will use the triangles or vertices to calculate the reduction.

Percent Triangles - Percentage of base LOD. (In the default case of UE4, LOD 0)

Welding Threshold - It is the weld distance from the vertices. The higher the number set, the greater the number of vertices the engine will join, this function usually severely modifies the object's silhouette.


  • Tris Reduction

You can reduce each of the LODs as you wish, but I recommend using the default used by UE4. (Half reduction for each LOD, always comparing the previous LOD) What I recommend last is to deselect the shadows of all materials in the last LOD. so your SM will have less “Draw Calls” at long distances. Besides that your scene will have less tris, because it has less shadows.

NOTE: The engine duplicates SM with active shadows, so they can be generated. The fewer parts of the SM that are shadowed, the less the amount of tris generated.


  • Screen Size

Generally, if the SM has its volume well suited, the distances are easier to set.

How to choose a good distance? Use of the factors: SM appearance and platform the project will run on.

  • PC Platform - Being the platform that you can “exaggerate” the most in the charts. Of course, considering the type of your project and the target audience. For people with low-end PCs to use your design, you'll need to balance beauty and performance.

  • Multiple Platforms - UE4 supports multiple platforms, with that in mind each LOD level has the option to add a “Screen Size” for each platform, so when you package the project it will automatically use the appropriate settings. Remembering that this is only valid for the LOD distance, the “screen size”.


This is a configuration that I usually use, of course it's not a rule, mainly because each project is unique, and demands an analysis of who develops it, with some adjustments you can get what you need.


LOD is not limited to Tris reduction only, as you have seen, we can reduce shadows that affect the calls of a project (Subject for another post). Other more advanced settings of more rigorous optimizations can be done in the LOD and I intend to make a post with this information only.


I hope I have helped you to gain a little more information about scenario development, and that this can help you go further and further! My name is Alisson Almeida Environment Artist and creator of SixSides and if this article was useful to you, share it with your friends and until next time!

コメント

5つ星のうち0と評価されています。
まだ評価がありません

評価を追加
bottom of page