Conventions

Summary Table

Blender 3ds Max Maya glTF Verge3D
Coordinate System
X - right, Y - far, Z - up X - right, Y - up, Z - near (OpenGL)
2D Textures (UV)
(0, 0) bottom left corner ? (0, 0) upper left corner (0, 0) upper left corner
Image/Video/Canvas and disabled flipping
Normal Map
  • R [0, 255] - X [-1, 1]
  • G [0, 255] - Y [-1, 1]
  • B [0, 255] - Z [0, 1]
X - right, Y - up, Z - near (OpenGL)
  • R [?, ?] - X [?, ?]
  • G [?, ?] - Y [?, ?]
  • B [?, ?] - Z [?, ?]
X - right, Y - down, Z - near (DirectX)
  • R [?, ?] - X [?, ?]
  • G [?, ?] - Y [?, ?]
  • B [?, ?] - Z [?, ?]
X - right, Y - up, Z - near (OpenGL)
  • R [0, 255] - X [-1, 1]
  • G [0, 255] - Y [-1, 1]
  • B [128, 255] - Z [1/255, 1]
X - right, Y - up, Z - near (OpenGL)
?
Cube Map
| Left -X | Back -Y | Right +X |
| Down -Z | Up +Z | Forward +Y |
N/A N/A N/A OpenGL:
0 GL_TEXTURE_CUBE_MAP_POSITIVE_X
1 GL_TEXTURE_CUBE_MAP_NEGATIVE_X
2 GL_TEXTURE_CUBE_MAP_POSITIVE_Y
3 GL_TEXTURE_CUBE_MAP_NEGATIVE_Y
4 GL_TEXTURE_CUBE_MAP_POSITIVE_Z
5 GL_TEXTURE_CUBE_MAP_NEGATIVE_Z
... with +X and -X swapped
Equirectangular Map
? ? ? Generic 2D texture Depends on exported material profile
Occlusion, Roughness, Metalness (glTF-based)
Separate RGB node
AO taken from textures with "...Occlusion..." name
Texture composed from:
  • Base Weight Map
  • Rougness Map
  • Metalness Map
Channels of file node
  • O - R
  • R - G
  • M - B
MeshStandardMaterial/MeshPhysicalMaterial:
  • .aoMap
  • .roughnessMap
  • .metalnessMap
Transparency (glTF-based)
  1. Value Only - Principled BSDF->Alpha
  2. Texture Only - implicit 4 component of Principled BSDF->Base Color (export) and Image Texture->Alpha to Principled BSDF->Alpha (viewport)
no multiplication possible
  1. Value Only - Principled BSDF->Alpha
  2. Texture Only - implicit 4 component of Physical Material->Base Color (export) Bitmap to Transparency Color Map (viewport only)
no multiplication possible?
alpha value only, texture not supported 4 component of baseColorFactor and baseColorTexture MeshStandardMaterial.opacity, MeshStandardMaterial.alphaMap (green):
Matrices
Post-multiplied
Quaternions
[x, y, z, w] Post-multiplied

Coordinate Systems

Software / Standard Default System Handedness Notes
3ds Max Z-up right
Blender Z-up right
Bullet Y-up right
Cinema4D Y-up left
DirectX Y-up left
Houdini Y-up right
Maya Y-up right configurable to Z-up right-handed
OpenGL/WebGL/glTF Y-up right
Unity Y-up left
Unreal Z-up left
Verge3D Y-up right

References

Normal Maps