Here's the list of options, plus their requirements:
- glTF (recommended choice)
- Version 2.0 (see specification for details)
- Supported extensions
- Texture transforms (
- Unlit materials (
- Texture transforms (
- Autodesk FBX
- Separate texture files (not embed)
- Blender 2.79b or later
- Materials have to be based on the Principled Shader node
Regardless of the format choice the scene units have to be Meters!
- Correct original size (in meters).
- Manifold meshes.
- Correct and consistent up- and forward-axis.
- Quads and triangles only.
- Keep the pivot/center point in the lower center of the object’s bounding box.
- Keep the root transform at the scene’s origin with no rotation or scaling applied.
- Back-facing polygons are culled (only one side is visible) keep that in mind.
- Objects can contain multiple materials and sub-objects in a hierarchy.
- Sub-objects of the same material should be merged/joined together to save draw calls at runtime.
Detail variants and complexity limits
For different use-cases you may provide different versions (levels of detail) of the geometry.
One is detail/product view, where you view/configure a single product / piece of furniture.
The other is the plan view, where you see up to hundreds of objects and rooms/walls/floors.
These are the geometry detail profiles
- Low profile (required)
Used in real-time renderings on low-end devices.
Requirement for Roomle floor planner solution.
- Middle profile (optional/recommended)
Used in real-time renderings in detail views and more powerful devices.
Ideal quality specification for Roomle configurator high-quality product visualization.
- High profile (optional/recommended)
Used in offline (non-real-time) renderings like image previews and product renderings only.
If you provide middle and/or high profile assets as well, keep the objects for the different profiles in separate source files.
Rule of thumb: Complexity/triangle count should be as low as possible, but as high as necessary.
All geometry will be converted to triangles, so triangles are our basis to measure complexity.
The recommended/maximum triangle count depends on the object size and complexity/shape. For normally sized objects (like chairs, tables or couches) these are the limit guides (k means *1000, so 3k = 3000):
|Low Profile||Middle Profile||High Profile|
|Soft Triangle Count Limit||3k||30k||none|
|Hard Triangle Count Limit||10k||100k||5 million **|
We distinguish a soft and hard limit
- Soft triangle count limit
Try to keep your triangle count below the soft limit if possible. You may occasionally have objects of big size and complexity, where keeping this limit and maintaining a good look is not possible. Only in that case you may exceed this limit.
- Hard triangle count limit
Every object, no matter how big or complex, must have a triangle count below the hard limit.
**) The limit for high profile geometry is the limit of the software and hardware used for rendering. At the moment of writing this is a theoretical estimation.
Whenever textures are applied, correct UV layouts have to be provided.
- If the object uses specular shaded materials, normal maps or reflections provide either custom tangents or a UV map to make sure the specular highlights are consistently correct.
Materials & Textures
You may provide textures for the following channels
- diffuse (with or without alpha channel)
- JPEG or PNG Images
- No special characters in (file) names (see Naming convention below)
- Make sure the texture file paths in the 3D file are relative and correct. Otherwise they are not guaranteed to be assigned.
We automatically optimize images for real-time rendering by scaling them down and limit the total number of textures.
|Low profile||Middle profile||High profile|
|Max. resolution||512x512||2048x2048||no limit|
|Max number of textures||3||12||no limit|
Additional real-time notes:
- Images are scaled so that the pixel size is a power of two (eg. 32, 64, 128, 256, 512 or 1024 Pixel)
- A lossy image compression is applied
Keep the automatic down-scaling in mind when creating UV layouts! UV islands with a narrow distance might introduce bleeding artefacts.
File names of 3D or texture files, object names, material names, etc. may only consist of
alphanumeric characters (digits & letters) found in the ASCII standard supplemented by
underscores “_” and dash “”.
- In case of uncertainty, feel free to get in touch with us. We’ll be glad to assist you.
- We recommend you to give us one or more representative objects up front, so we can
evaluate them and give early generic feedback.
- Our tools and pipeline are constantly refined and improved to reflect the latest state of
the art. Stay in touch to always get the most recent recommendations for asset