Material Conventions
These conventions apply to all meshes entering the scene — via
b3d-loader, b3d-library, or any
component that calls register().
Property-Based (automatic from Blender materials)
| Property |
Threshold |
Effect |
alpha > 0.95 |
snapped to 1.0 |
Treated as fully opaque (avoids blend cost) |
alpha ≤ 0.95 |
— |
Alpha blend, depth pre-pass, double-sided, excluded from shadow casting |
unlit (glTF KHR_materials_unlit) |
— |
Respected as-is |
Transmission > 0 + _mirror |
— |
Cubemap-based refraction with proper IOR (replaces glTF screen-space) |
Name Suffixes (behavioral overrides, not material appearance)
| Suffix |
Effect |
_noshadow / -noshadow |
Mesh doesn't receive shadows |
_nocast / -nocast |
Mesh doesn't cast shadows |
_mirror / -mirror |
Dynamic reflection probe (+ refraction if transmissive) |
-ignore |
Node is disposed on load |
_collide* |
Physics collider (sphere/box/cylinder/mesh) |