I saw a few Tutorials, always referring to *.GLTF but a 3D Artist now is telling me i should ALLWAYS use FBX for any kind of 3D Objects?
*.GLTF or *.FBX ?
- Edited
Both are supported in Godot, however which works better depends on what modeling app you are using. Blender works better with glTF and FBX works better with Autodesk apps. But FBX is a proprietary Autodesk format, while glTF is an open standard made by the same people that made OpenGL and Vulkan. For that reason I would rather support glTF. But in either case, you should get the same basic functionality so it's not a huge deal.
More viewers are supporting glTF.
@cybereality said: ...while glTF is an open standard made by the same people that made OpenGL and Vulkan.
Huh, I could have sworn glTF(2.0) was originally created by id software(working with Khronos). Googling now though revealed that it was Collada working group together with Jan Paul van Waveren(RIP) while working in Oculus after he left id soft.
is there anything wrong with just using .obj files?
- Edited
@Erich_L said: is there anything wrong with just using .obj files?
There's nothing wrong with it for static meshes, but .obj
doesn't support animated meshes or animations, it only has support for just mesh geometry. .gltf
and .fbx
both support animated meshes.
Note that .obj technically can be used together with .bvh BioVision Hierarchy(skeleton/armature rig & animation, a motion-capture format) files but far as I'm aware godot doesn't support this.
@TwistedTwigleg said:
@Erich_L said: is there anything wrong with just using .obj files?
There's nothing wrong with it for static meshes, but
.obj
doesn't support animated meshes or animations, it only has support for just mesh geometry..gltf
and.fbx
both support animated meshes.
Can I assume then that for static meshes then .obj files will be a wee bit more efficient/faster to load?
@Erich_L said:
@TwistedTwigleg said:
@Erich_L said: is there anything wrong with just using .obj files?
There's nothing wrong with it for static meshes, but
.obj
doesn't support animated meshes or animations, it only has support for just mesh geometry..gltf
and.fbx
both support animated meshes.Can I assume then that for static meshes then .obj files will be a wee bit more efficient/faster to load?
Yeah, from what I understand and what I found doing some quick research, it seems .obj
files are a tad faster and more optimized than .fbx
. I wasn't able to find anything conclusive on .gltf
but I imagine it's probably a tad slower than .obj
.
OBJ is a text-based format, which makes it larger and slower to load and save compared to binary formats. The CPU has more work to do to interpret a text-based format compared to a binary format. Also, OBJ's accompanying material file (.mtl
) does not support PBR materials, which limits its usefulness in 2021 (except for retro-looking games).
glTF 2.0 exists in both text-based (.gltf
) and binary (.glb
) formats. I recommend using .glb
whenever possible in production, but exporting in text-based .gltf
can be useful for troubleshooting purposes.
Thanks @Calinou . I've been using gltf text format, as I had problems editing material with binary glb. But I finally found a way to export full PBR materials from Blender into Godot. There didn't seem to be much info in the official docs, but I did find this video by chance which explains it perfectly.
@Calinou said: OBJ is a text-based format, which makes it larger and slower to load and save compared to binary formats.
TBF part of the wavefront object file format/family is also the .mod binary format. But the binary format was/is proprietary and undocumented making it irrelevant.
https://people.cs.clemson.edu/~dhouse/courses/405/docs/brief-obj-file-format.html