GSoC 2012 - Automatic mesh LOD management system

From WorldForgeWiki
Jump to: navigation, search


I'm Peter Szücs and I will work on improving performance of Ember with an automatic mesh lod management system.


Ember uses high quality graphical models, but doesn’t provide low quality versions of them. When a model is far away from the camera it is not required to render high quality models, since the user sees it on screen for just few pixels. This makes Ember to require high-end graphics cards. The automatic LOD (Level of detail) management system is about to solve this problem. It will create from high quality models multiple low quality models, by reducing vertex count with an algorithm. This allows for far away rendering to use low quality models, which will increase graphical performance. Next to the automatic LOD management, I want to provide possibility to manually configure the LOD for a given model, which will allow fine-tuning for performance critical models. I will also design and create a GUI for the manual LOD configurations in the model editor to make fine-tuning an easy task.

Planned schedule

  1. Learn cegui and the model editor in ember. (1 week)
  2. Design and create a GUI in the model editor for manual LOD configurations. (2 week)
  3. Save/load the LOD configurations into the model definition file. (1 week)
  4. Implement the manual LOD system, which allows importing LOD levels from blener or 3ds max. (1 week)
  5. Implement the automatic LOD generation. (1 week)
  6. Research: analyze the LOD configurations and determine the perfectly balanced parameters for automatic LOD management. (1 week)
  7. Implement the automatic LOD management system. (2 week)

How to use it?

Basically it works automatically, so you don't need to use it.
However there is the possibility to set the LOD for a specific model manually.
Lets say you want to configure LOD manually for the bear model.

  1. Type into the chat box "/show_modelEdit", which will show up the model editor.
  2. Select the bear model from the list.
  3. Click on the "Level of detail" tab.
  4. Uncheck the "automatic mesh lod management" checkbox.
  5. Click on "Add" button to add a new LOD level, which will pop up a window for input.
  6. Type 90 for the distance, then click ok button.
  7. Now you can select "Automatic vertex reduction" from the combobox.
  8. Select proportional with 0.5 as parameter. This means it will have the half of the vertexes removed when its farer from the camera then 90 units.