Working with 3D GLB Assets in MyWebAR:

Recommendations and Best Practices
If you're planning to bring 3D models into your WebAR experiences, you'll need to work with GLB files. This guide walks you through everything you need to know — from understanding the format itself to exporting clean, optimized models that look great and load fast on any device.
Whether you're a 3D artist, a designer experimenting with AR for the first time, or a developer integrating assets into a project, this article will help you get the best results with the least headaches.
Understanding the Format: What Are glTF and GLB?
glTF (GL Transmission Format) is an open standard developed by the Khronos Group — the same organization behind OpenGL and Vulkan. Think of it as the "JPEG of 3D": a modern, efficient way to store and transmit 3D scenes, models, textures, materials, and animations.

The format comes in two flavors:

  • .gltf is a JSON-based text file. It's human-readable and references external resources (textures, binary geometry data) as separate files. This makes it convenient for development and debugging, but less practical for distribution since you need to keep all the linked files together.
  • .glb is the binary version of glTF. It packages everything — geometry, textures, materials, animations — into a single self-contained file. This is the format MyWebAR works with, and the one you should be exporting to.
Why GLB Works Best for WebAR?
There are a few reasons GLB has become the go-to format for web-based augmented reality:

  • Single file, zero dependencies. Everything your model needs is packed inside one .glb file. No missing textures, no broken paths — just drag, drop, and it works.
  • Optimized for the web. GLB files are compact by design. The binary format keeps file sizes down, which translates directly into faster loading times for your AR experiences. This matters a lot on mobile networks.
  • Consistent rendering across platforms. GLB uses a standardized PBR (Physically-Based Rendering) material model, which means your model will look predictable and accurate whether it's viewed on an iPhone, an Android device, or a desktop browser.
Choosing Your 3D Software
You can export GLB files from most modern 3D applications, but the quality of the export varies significantly between tools.
Blender (Recommended)
Blender is our top recommendation. It offers native, well-maintained glTF/GLB export with full support for PBR materials, skeletal and transform animations, blend shapes, and a wide range of export settings. It's free, open-source, and has the largest community around glTF workflows.

If you're starting from scratch or choosing a tool specifically for WebAR content creation, Blender is the way to go.
Tools like 3ds Max, Maya, Cinema 4D, and SketchUp can also export to GLB, either natively or through plugins. If you're using one of these, make sure you have the latest version of the glTF export plugin installed — older versions may produce files with compatibility issues or missing features.
Other Software
Tools like 3ds Max, Maya, Cinema 4D, and SketchUp can also export to GLB, either natively or through plugins. If you're using one of these, make sure you have the latest version of the glTF export plugin installed — older versions may produce files with compatibility issues or missing features.

Tip: Regardless of which software you use, always ensure that Y-Up axis orientation is enabled in your export settings. This is the standard orientation for glTF and prevents your model from appearing rotated or flipped in MyWebAR.

Geometry: Keeping Your Models Lean
Mobile devices and web browsers have limited processing power compared to a desktop workstation. The geometry of your model — how many triangles it contains, how it's structured — has the biggest impact on performance.
Triangle Count
Aim to keep your scenes under 50,000 to 100,000 triangles. This is a comfortable range for most smartphones to handle smoothly in a real-time AR context.

For reference:
Going beyond 100K triangles doesn't mean your model won't work — but you'll start to notice slower load times, frame drops, and increased battery drain, especially on older or budget devices.
Clean Up Before You Export
Before hitting the export button, take a few minutes to clean up your scene:

 Remove empty objects. Leftover empties, cameras, lights, and helper objects that aren't part of your model add unnecessary data to the file.
  Merge meshes that share the same material. If you have 15 separate objects all using the same wood texture, merging them into a single mesh reduces draw calls and improves rendering performance.
  Apply all modifiers. Subdivision surfaces, mirrors, booleans — if you're using modifiers in Blender or similar tools, make sure to apply them before export. Unapplied modifiers may not translate correctly into the GLB format.
  Delete hidden geometry. Faces that will never be visible (like the underside of a table that sits on a surface) are still rendered by the engine. Removing them reduces triangle count for free.
Materials and Textures
The way your model looks in AR depends heavily on how its materials and textures are set up. GLB uses a standardized PBR (Physically-Based Rendering) pipeline, which gives you realistic and consistent results — as long as you follow a few guidelines.
Use PBR Materials with the Metalness/Roughness Workflow
This is the material model that glTF was built around. If you're working in Blender, this is the default when using the Principled BSDF shader. In other software, make sure you're working with a metalness/roughness setup rather than a specular/glossiness one.
 
The key texture maps in this workflow are:

  Base Color (Albedo) — the main color/diffuse texture of your surface.
  Metallic — defines which parts of the surface are metallic (white) and which are non-metallic (black).
  Roughness — controls how smooth or rough the surface appears. Black is mirror-smooth, white is fully rough.
  Normal Map — adds surface detail (bumps, scratches, fabric weave) without adding actual geometry.
  Occlusion — simulates soft shadows in crevices and corners.
  Emissive — makes parts of the surface glow or appear self-lit.
Texture Size Recommendations
Larger textures look sharper but significantly increase file size and memory usage. For most WebAR use cases, the sweet spot is:
 
Texture Format Tips
Use JPG for Base Color maps when your model doesn't require transparency. JPG compresses much better than PNG, which keeps your GLB file size down.
Use PNG only when you need an alpha channel — for example, if your model has transparent or cut-out parts (glass, leaves, decals).
Use texture atlases when possible. Instead of assigning separate textures to every material, combine multiple textures into a single image and adjust UV coordinates accordingly. Fewer textures means fewer draw calls and better performance.
Embedding Textures
When exporting to GLB, always make sure the "Embed Textures" option is enabled. This ensures all texture files are packed inside the .glb file rather than referenced as external files. Without this, your textures will be missing when the model is loaded in MyWebAR.
Lighting
Lighting is one area where the behavior of a GLB file may differ from what you see in your 3D software's viewport.
Why You Shouldn't Embed Lights
Lights included in your GLB file can produce unexpected visual artifacts when rendered in a WebAR context. The lighting setup that looked perfect in Blender may appear washed out, overly bright, or inconsistent across devices.
 
Our recommendation: Do not include lights in your GLB export. Instead, configure lighting directly inside the MyWebAR editor, where you have full control over how it interacts with the AR camera feed and the real-world environment.
 
Environment Maps for Reflections
If your model has metallic or glossy surfaces, you'll want realistic reflections. The best way to achieve this in WebAR is through HDR environment maps, which can be set up in the MyWebAR editor. These provide smooth, natural-looking reflections based on a 360° environment image, and they work consistently across all devices.
Animations
GLB supports several types of animation, and MyWebAR can play them back in your AR experiences. Here's what's available and how to prepare it.
Supported Animation Types
Transform animations — position, rotation, and scale changes over time. This is the simplest type and covers most motion needs: spinning objects, floating effects, sliding elements, and so on.
Skeletal animations — bone-based deformation, commonly used for characters, animals, or any organic motion. Your model needs an armature (skeleton) with properly weighted vertices.
Blend shapes (morph targets) — vertex-level deformations stored as shape keys. Useful for facial expressions, product variations, or any animation where you need to smoothly interpolate between predefined shapes.
Preparing Animations for Export
Getting animations to export correctly can be tricky if you skip a few important steps:

  Always enable "Bake Animation" during export. Baking converts any procedural or constraint-driven animation into simple keyframe data that the glTF format can reliably store. Without baking, animations driven by physics simulations, IK constraints, or expressions may not export at all — or may export incorrectly.
  Avoid complex animation dependencies. Drivers, constraints, and procedural setups that work beautifully inside Blender often don't translate to glTF. Keep your animation logic as straightforward as possible — direct keyframes on transforms and bones.
  Merge animation actions when exporting multiple animated objects. If your scene contains several objects with separate animation actions, consolidate them before export to avoid conflicts and ensure everything plays back in sync.
  Test the animation in MyWebAR after export. Don't assume that what plays correctly in Blender will behave identically in the browser. Do a quick test upload to catch any issues early.

Export Checklist
Before uploading your GLB to MyWebAR, run through this quick checklist:

  1. Triangle count is under 100,000 (ideally under 50,000)
  2. All empty objects, unused cameras, and lights are removed
  3. Meshes sharing the same material are merged
  4. All modifiers are applied
  5. Materials use the PBR Metalness/Roughness workflow
  6. Textures are 1024×1024 or 2048×2048 (no larger than needed)
  7. JPG is used for Base Color where transparency isn't required
  8. "Embed Textures" is enabled in export settings
  9. Y-Up axis orientation is enabled
  10. No lights are included in the scene
  11. Animations are baked before export
  12. The exported GLB has been tested in MyWebAR


Troubleshooting Common Issues
Model appears rotated or upside down. Your axis orientation was likely set to Z-Up instead of Y-Up during export. Re-export with Y-Up enabled.
 
Textures are missing or appear black. You probably didn't enable "Embed Textures" in the export settings. Re-export with this option turned on.
 
Model loads slowly or causes frame drops. Your triangle count is too high, your textures are too large, or both. Reduce geometry complexity and consider using 1024×1024 textures instead of 2048×2048.
 
Lighting looks different from what you see in Blender. Remove any embedded lights from your scene and configure lighting inside the MyWebAR editor instead.
 
Animation doesn't play or plays incorrectly. Make sure "Bake Animation" was enabled during export. Check that your animation doesn't rely on constraints, drivers, or other procedural setups that can't be baked into simple keyframes.
 Parts of the model are invisible. Check for flipped normals — faces whose normals point inward will be invisible in most real-time renderers. In Blender, you can visualize normals in the Viewport Overlays menu and recalculate them with Mesh → Normals → Recalculate Outside.


Summary
GLB is the ideal format for bringing 3D content into WebAR — it's compact, self-contained, and renders consistently across devices. The key to a great result is preparing your assets thoughtfully: keep geometry lean, use PBR materials with right-sized textures, handle lighting in the MyWebAR editor rather than in the file, and always bake your animations before export.
 
If you follow the guidelines in this article, your models should load fast, look great, and work reliably across the wide range of devices your audience will be using.
 
Have questions or running into issues with a specific model? Reach out to our support team — we're happy to take a look and help you get the best result.