Hey all,
I have a few questions about the Loading textures and models using Metal fast resource loading project. I'm not experienced in 3D rendering or Mac development in general, so bear with me :)
I noticed that the model and texture data for the scene objects had a.dat extension and appeared to be binary data files. This is different from the models and textures from the Rendering a Scene with Deferred Lighting in C++, which contains .obj and .mtl files that seem to be commonly exported from 3D modelling programs like Blender or Maya.
First question: I didn't notice any explanation of for the difference in format between the two projects in the source code. From reading a bit online it seems like binary formats are more efficient and generally more representative of what you'd want to actually ship, is that correct?
Second, I was also wondering if the binary format used in "Loading textures and models using Metal fast resource loading" is in a standard format, or if it was created by the project's author just for the project.
Third, I was wondering what the typical process was for storing assets in a binary format. Are these usually directly exported from 3D modelling programs? Or is intermediate output from 3D modelling programs (such as .obj files) usually parsed by the developer and then written to the binary format? If this is the case, are there commonly used libraries for this, or do people usually just hand-roll parsers?
Any recommended learning material would be appreciated.
Thank you!