UV Values separate for AO map and Normal and Roughness for GLTF export?

Hi there,

I am facing problem because of the GLTF export as it is combining Ambient Occlusion + Roughness + Metalic.

Actually AO map which i have baked from Maya “Render to Texture” tool to create ambient map for that Mesh… but when i have created Stingray Material (PBR) and connected AO (for which i really do not need tiling UV values should be 1,1 ) and given wooden textures which requires tiling with its normal map and roughness map for wooden texture…(here i gave UV values to be 6,6)
wooden textures BC_base colour, N_ normal map, R_roughness map:

So the problem is when i export this as GLTF its changing the UV value for AO map or sometimes it is changing UV values for Normal or Roughness maps… which is not desired.
Problem image (AO map tiling - not desired):

Actual desired output should be for GLTF output: check the below image

So finally what i want is AO map should have different UV values and Normal/Roughness map should have different UV values… So how should i do that??


I don’t think that’s possible. Currently the glTF schema combines AO/Metal/Rough as a single texture, and any UV tiling will be applied to the texture as a whole. The only workaround I can think of is to bake your Metallic/Rough texture tiling, and use that with your input AO map with the tiling amount you want all channels to share.


Metallic and Roughness are packed together, not Normal

Thanq so much for the reply… is it the same case if i export in GLB format?

i mean wil GLB format also combines AO+Roughness+Metal

Yes, gltf and glb are the same format, just packed differently :slight_smile:


Edited my previous comment to clarify METALLIC and roughess packed together in the same texture, not normal and roughness.

looking at the schema, you can actually separate AO and Metal/Roughness, as we can indicate separate textures that contain that data, we only choose to pack AO with Metal roughness as they are all single channel textures:

Currently the Maya exporter packs all channels together and shares the UV scaling. I don’t currently plan on adding a separate workflow for separating AO and metal rough, right now, unfortunately

how i solved this problem in my project
maybe that not is not a best solution

  1. make scene by the unwrapped uv without tiles
  2. add a tile (x, y number for each mesh )
    value for correct mesh scaling title to the unit standard 1 m
  • look the right panel top Tile U and v value is 22
  • i use a 1024 image for make that like 100x100 for understand 1 m size (not so exact)
  1. define the this tile value to diffuse + roughness + metallic + normal +… all map uv with out AO and keep the AO scale in 1
  2. now i define the material in the tile exact size
  1. when i select any material in design mood all material fit in the real tile size in the any scene
    that work if you have 2 number for each scene mesh and have exact size of any material size

sample result

in this solution you need custom PBR material for tile maps
also you can have 2 AO map one receive from the material and other come from the scene light Map …

that need a editor for set and test new uv tiles after each scene published

1 Like