|
@@ -1,12 +1,12 @@
|
|
|
= Level of Detail (LOD) Optimization
|
|
|
-:revnumber: 2.0
|
|
|
-:revdate: 2020/07/15
|
|
|
+:revnumber: 2.1
|
|
|
+:revdate: 2020/07/24
|
|
|
:uri-jme3: https://github.com/jMonkeyEngine/jmonkeyengine/blob/master
|
|
|
|
|
|
|
|
|
A mesh with a high level of detail has lots of polygons and looks good close up. But when the mesh is further away (and the detail is not visible), the high-polygon count slows down performance unnecessarily.
|
|
|
|
|
|
-One solution for this problem is to use high-detail meshes for objects close to the camera, and low-detail meshes for objects far from the camera. As the player moves through the scene, you must keep replacing close objects by more detailed meshes, and far objects by less detailed meshes. The goal is to keep few high-quality slow-rendering objects in the foreground, and many low-quality fast-rendering objects in the background. (Experienced users can compare this approach to xref:jme3/advanced/terrain.adoc[JME's TerraMonkey terrain system], which internally uses the specialized GeoMipMapping algorithm to generate a terrain's Levels of Detail.)
|
|
|
+One solution for this problem is to use high-detail meshes for objects close to the camera, and low-detail meshes for objects far from the camera. As the player moves through the scene, you must keep replacing close objects by more detailed meshes, and far objects by less detailed meshes. The goal is to keep few high-quality slow-rendering objects in the foreground, and many low-quality fast-rendering objects in the background. (Experienced users can compare this approach to xref:terrain/terrain.adoc[JME's TerraMonkey terrain system], which internally uses the specialized GeoMipMapping algorithm to generate a terrain's Levels of Detail.)
|
|
|
|
|
|
You see now why you may want to be able to generate Levels of Detail for complex Geometries automatically. JME3 supports a Java implementation of the Ogre engine's LOD generator (originally by Péter Szücs and Stan Melax): You use link:{uri-jme3}/jme3-core/src/tools/java/jme3tools/optimize/LodGenerator.java[jme3tools.optimize.LodGenerator] in conjunction with link:{uri-jme3}/jme3-core/src/main/java/com/jme3/scene/control/LodControl.java[com.jme3.scene.control.LodControl].
|
|
|
|
|
@@ -164,4 +164,4 @@ the lower the quality.
|
|
|
* link:https://hub.jmonkeyengine.org/t/brand-new-lod-generator/26341[https://hub.jmonkeyengine.org/t/brand-new-lod-generator/26341]
|
|
|
* link:https://github.com/worldforge/ember/tree/master/src/components/ogre/lod[https://github.com/worldforge/ember/tree/master/src/components/ogre/lod]
|
|
|
* link:http://www.melax.com/polychop[http://www.melax.com/polychop]
|
|
|
-* xref:jme3/advanced/terrain.adoc[JME3 TerraMonkey Terrain]
|
|
|
+* xref:terrain/terrain.adoc[JME3 TerraMonkey Terrain]
|