Skip to main content

Large Models, LOD and Simplification

The ByMe platform stores Geometry and Material assets at different Levels of Detail:

  • LOD 0 = High quality,
  • LOD 1 = Medium quality,
  • LOD 2 = High efficiency.

LOD usage​

Which LOD is used in which context depends on each ByMe Application, the general guidelines being:

  • LOD 1 is used is the web planner, which enables "real-time" navigation in the scene,
  • High Quality renders are built with a mix of LOD 0 and LOD 1 depending on object size in the scene,
  • LOD 2 is planned for future use on severely limited devices.

Why LODs ?​

LODs are required to achieve the delicate balance between image quality and experience smoothness in different contexts, the most stringent being "real time" navigation of the user in complex, multi-object scenes on low-end devices.

These constraints might be perceived as detrimental to the visual quality of the 3D objects, especially for those professionals who are experts in virtual shooting or single-object scenes. Indeed everyone would like to enjoy high-poly 3D.

These constraints are designed to provide a compelling experience within the bounds of common consumer devices' performance on large scenes, and will be revised. As technology evolves, we will evolve the LOD processing in the future and potentially reprocess your assets with renewed algorithms and criteria.

LOD contribution​

For a given Product, the assets corresponding to each of the 3 LODs can be provided to the ByMe platform in 3DCloud or through the ByMe API.

If, for a given Product, less than 3 assets are provided (ie. some LODs left empty), the following rules apply:

  • If no asset is provided at all at either LOD, the Product becomes a non-3D object.
  • for LOD 0, the ByMe platform selects:
    • the asset provided as LOD 0,
    • if empty, the asset provided as LOD1,
    • if empty, the asset provided as LOD2.
  • for LOD 1, the ByMe platform selects:
    • the asset provided as LOD 1,
    • if empty, the asset provided as LOD 0,
    • if empty, the asset provided as LOD 2.
  • for LOD 2, the ByMe platform selects:
    • the asset provided as LOD 2,
    • if empty, the asset provided as LOD 1,
    • if empty, the asset provided as LOD 0.

LOD thresholds​

Before storing an asset for a given LOD, the ByMe platform checks the selected asset against the thresholds for this LOD.

Triangles in BM3Textures embedded in BM3BM3Mat Textures
LOD 0T0 = 1.4M trianglesunlimitedunlimited
LOD 1T1 (see below)12 maps, 1MB total1024x1024 maps
LOD 2T2 (see below)12 maps, 128kB total256 x 256 maps

LOD 1 maximum triangles formula​

D being the largest dimension of the object bounding box in centimeters,

T1 is the maximum triangles count:

  • If 0 < D <= 90 : T1 = 8000 triangles
  • If 90 < D <= 230 : T1 = [0.1691 x (D²) - 24.405 x D + 8855.5] triangles
  • If 230 < D <= 600 : T1 = [45.435 x D + 1738.9] triangles
  • If 600 > D : T1 = 29000 triangles

Example : the LOD 1 model of a 200cm large sofa should be provided with less than 10739 triangles, or it will be automatically simplified.

Geometry

LOD 2 maximum triangles formula​

T2 = T1 / 2

Texture and Geometry Simplification​

If the asset exceeds one of the thresholds, the asset is automatically simplified.

ScopeThresholdContextSimplificationResulting asset
BM3Triangle countOrdinary nodeGeometry decimation, Texture aggregationAll ordinary nodes are regrouped into a single optimized node with a single material (built as a texture atlas). The resulting texture and triangle size is a function of object size and detail density, and can reach 50k (LOD 1) / 25k (LOD 2) triangles at most.
BM3Triangle countTransparency node, Light Source node, Publication Material nodeGeometry decimation, Texture compressionAll these nodes are simplified to bring their number of triangles down to the threshold. Maps larger than 1024px (LOD 1) / 256px (LOD 2) are reduced to 1024px (resp. 256px)
BM3Map CountExceeds 12Texture aggregationUnder thresholds
BM3MatTotal sizeExceeds 1MB (LOD 1) / 128kB (LOD 2)Texture compressionAll maps dimensions divided by 2, repeated until < 1MB / 128kB

Simplification Recommendations​

Our recommendation for best results is to provide input textures below the thresholds in order to avoid automatic simplification.

Automatic geometry simplification is done through mesh decimation and textures adjustment. It is obviously convenient but has several drawbacks:

  • Some simplifications may appear sub-optimal visually,
  • This processing induces a delay before the Range Manager can experiment with the model,
  • The resulting model is not suitable for Smart Scaling (see corresponding section for details), because of potential edge positions shifting, as well as UVs being transformed into texture atlases prevents them from proper looping.

Hence our recommendation for best results is to provide input models below the threshold in order to avoid automatic simplification.

Working with Large Models, Large Textures​

Geometry Editor performance depends on your particular hardware. A generally advised maximum is to avoid opening models and textures above LOD 0 maximums.