3D Content Creation Guidelines
Starting from Layar 3.0, it is possible for developers to add 3D objects to their layers. For this purpose, we have defined the Layar3D (.l3d) file format that allows storage of textured 3D models in a single file. This file format is optimized for mobile parsing and viewing. To allow developers to create their own 3D models for use in Layar, we developed a 3D Model Converter to convert models in the Wavefront (.obj/.mtl) format to Layar3D (.l3d).
You can use any 3D modeling software application to create your 3D models, as long as you can export the model to Wavefront (.obj/.mtl) format. When creating your models, take the following into account:
- Please keep the model complexity as low as possible. The current mobile phones are not powerful enough to render complex models at a decent frame rate. We suggest you keep the maximum total number of polygons visible at the same time at 10000.
- We only support mesh based objects. While .obj can also hold NURBS based objects, this is not supported.
- The model should consist of triangles only. Make sure that you convert all quads or higher polygons to triangles.
- We assume that the unit for the vertex coordinates in the 3D model is set to 1 meter. You can model your object for the correct size or use a scaling factor in your layer at a later stage.
- We support transparency on the normal material colors in Layar client v6.0 and above. This feature can be found in the latest 3D model converter (v3.0 and above).
- Blending is also supported in Layar client v6.0 and above. When blending is enabled, it means that color value of this material is blended with the color of any other objects that are rendered behind it. If it is disabled, it means the objects that are rendered behind it are hidden from view. This can be used to merge virtual and real objects in a more natural way. This feature can also be found in the latest 3D model converter (v3.0 and above).
- The maximum file size of the 3d model is 1mb.
Please NOTE that the maximum file size is not restricted by the layar client. However, based on best practices, 1mb should be enough to show nice 3d models on a mobile phone device. Models with lots of details will not be seen on a mobile screen. It is a big challenge for the layar client performance as well since it is highly possible to cause rendering issues. The user experience will not be good if the user needs to wait for very long time to download 3d models.
We do support texturing of the 3D model, but only for setting the diffuse color of the material. At this moment we do not support multiple textures, e.g. for bump mapping.
- Texture images MUST be resized to have their width and height be powers of 2, e.g.: 16x16, 32x32, 64x64, 256x128, etc.
- Please keep your texture images small as larger texture require more bandwith and have a performance impact on the client.
- Transparency in textures is supported.
On the client we do not check any MIME types, so we have not defined one.
Tutorials for creating good 3D models
- Below is a basic tutorial on how to create a 3D object with general tips and tricks.
- A more detailed and advanced manual(please see attached pdf file) on how to create good 3D objects in Layar.
- .L3D model examples: If you want to try out how 3d models look like in the Layar reality browser before creating your own 3d model, please download Layar .l3d models in the attachment.