SynergyXR 3D Model Support

SynergyXR – 3D Model Support

SynergyXR currently supports GLB and FBX 3D model file formats. When FBX files are uploaded through the SynergyXR Web Manager, they are automatically converted to GLB format to ensure consistent performance across devices.
To help users and developers get the best results, we provide a set of 3D Model Best Practice articles - available both as a simple and an advanced version:

3D Model Best Practices – Simple

3D Model Best Practices – Advanced

Memory management

Efficient memory usage is critical on XR devices. If available memory is exceeded, applications typically crash. To avoid this, SynergyXR includes built-in memory management across all applications. Instead of crashing, the system will notify the user if there is not enough memory to display specific content.
It is important to understand that a model’s file size on disk (e.g. on a Windows PC) does not reflect the memory usage on device. To achieve smooth rendering, XR devices load model textures fully uncompressed into memory. This prevents additional processing overhead during rendering but also means textures consume significantly more memory than their disk size suggests.


Approximate memory usage per texture resolution:

  • 256x256 pixel resolution: 0,5 MB memory on device
  • 512x512 pixel resolution: 2,0 MB memory on device
  • 1024x1024 pixel resolution: 8,4 MB memory on device
  • 2048x2048 pixel resolution: 33,5 MB memory on device
  • 4096x4096 pixel resolution: 134 MB memory on device

These memory estimates highlight why texture resolution is a key factor in optimization. We recommend avoiding 4K textures entirely and, in general, using the lowest resolution that still achieves the desired visual quality.
When working with multiple texture maps (e.g. color, occlusion, metallic, roughness), they do not all need to share the same resolution. A common approach is:

  • Highest resolution for albedo/color
  • Low to medium resolution for occlusion, roughness, and metallic (these are combined into one texture after GLB export)

This strategy helps maintain visual quality while reducing memory usage, allowing more content to be displayed simultaneously.

Supported 3D model features

The following 3D model features are supported in SynergyXR.
Texture channels are listed with identifiers: R (red), G (green), B (blue), A (alpha).

  • Supported file formats:
    • GLB (preferred)
    • FBX (automatically converted to GLB during upload)
  • Mesh & Geometry
    • Index buffer must be 16-bit (max 65,535 vertices per mesh) since 32-bit is not supported on all devices.
    • Vertices, Normals, Tangents, UV0 and UV1 (two UV sets supported).
  • Animation
    • Bones & skinned meshes with animations (FBX animations are rebaked.)
    • Supports multiple animation clips (FBX only supports one clip on upload.)
    • Animation UI allows play, stop, and scrubbing
    • Keyframed animations of transforms (position, rotation, scale), skeletal rigs (bones), and morph targets (shape keys).
    • Animations of materials/textures, shaders, lights, or physics simulations are NOT supported.
  • Textures
    • Albedo
    • Metallic workflow (preferred): Metallic (B), Roughness (G), Occlusion (R)
    • Specular workflow: Specular (RGB), Gloss (A)
    • Normal (OpenGL)
    • Occlusion (R) (can be separate from MetalRough)
    • Emission
    • Individual tiling and offset for each texture
    • Multi-material (submeshes)
    • Shared materials/textures (no unnecessary duplicates)
  • Material Properties
    • Base color
    • Emission strength & color
    • Specular color (if no SpecGloss texture)
    • Metallic setup:
      • Roughness / Smoothness
    • Normal strength
    • Occlusion strength
    • Transparency: base alpha + alpha channel in albedo
    • Clearcoat: Weight, Roughness, IOR, (Tint not supported)
  • Rendering
    • Front or double-sided rendering
    • NB! You must enable Backface Culling for the material in Blender’s material settings before export to have single sided models (better performance, but you can’t “look inside” the model.)