Is there any special way to render a gltf model?

For some reason the color looks off and the iron looks way more reflective than normal.

It works fine when I loaded the model with assimp and rendered with the same shaders.

I tried putting the assimp loaded material on the GLTF Iron Sphere and got the got the same result.

Tried comparing vertices between the assimp and gltf , and for some reason the gltf version had a lot less vertices for the same model in a different format. I tried tried loading the gltf file through assimp, and the material actually looked iron…

GLTF doesn’t seem to load bitangent automatically like Assimp does I’ve been finding the bitangent by:

```
GLTFVertex vertex;
vertex.Position = glm::vec4(glm::make_vec3(&PositionBuffer[x * 3]), 1.0f);
vertex.Normal = glm::normalize(glm::vec3(NormalsBuffer ? glm::make_vec3(&NormalsBuffer[x * 3]) : glm::vec3(0.0f)));
vertex.UV = UVBuffer ? glm::make_vec2(&UVBuffer[x * 2]) : glm::vec3(0.0f);
vertex.Color = ColorBuffer ? glm::make_vec4(&ColorBuffer[x * 4]) : glm::vec4(0.7f, 0.7f, 0.7f, 1.0f);
vertex.Tangant = TangantBuffer ? glm::make_vec4(&TangantBuffer[x * 4]) : glm::vec4(0.0f);
vertex.BiTangant = cross(vertex.Normal, glm::vec3(vertex.Tangant.x, vertex.Tangant.y, vertex.Tangant.z)) * vertex.Tangant.w;
```

Materials are loaded in these formats:

Albedo: VK_FORMAT_R8G8B8A8_SRGB

Normal: VK_FORMAT_R8G8B8A8_UNORM

MetallicRoughness: VK_FORMAT_R8G8B8A8_UNORM

AmbientOcclusion: VK_FORMAT_R8G8B8A8_UNORM

In the shader:

Metal is set to the Blue Channel.

Roughness is set to the Green Channel.

Or could it have more to do with how blender exports gltf models?