I'm new to GD so if this is too broad I apologize. I'm looking for some quick information.

What binary file format supports the basic game rendering information?

  • raw position vertices
  • Texture/UV
  • (or) Color
  • Normals
  • Animation keyframes

I'm aware that .obj and .dae have all of the above, however these files are in ascii. What file type supports these and is in binary?

And is it common to make custom 3d model format for one's game engine?

  • \$\begingroup\$ An example of a binary format would fbx (primarily developed by Autodesk) EDIT: FBX files can also be stored in ASCII format. And yes, it is common to create a custom format for game engines, as the ones used for 3D tools contain a lot of information that is not needed for games. Also you usually create a format that allows you to read in the relevant data faster (e.g.: in a specific order). \$\endgroup\$ Commented Jan 14, 2017 at 21:09
  • \$\begingroup\$ Actually - nearly every commonly used format for 3D models can be saved as either binary or ASCII - the format itself does not change, only how the data it contains is stored on disk \$\endgroup\$ Commented Jan 14, 2017 at 21:11
  • \$\begingroup\$ @UnholySheep Thanks a ton! You should answer-ize your question and post it. \$\endgroup\$
    – Dellowar
    Commented Jan 14, 2017 at 21:20

1 Answer 1


As mentioned in the comments:

Nearly every common data format used by 3D tools can be stored as either ASCII or binary, the difference is only in how the contained data is stored on disk - the actual format does not change. One example for this is the FBX format.

For the second question: It is common practice to use custom formats for 3D models and animations in game engines. The ones used by 3D content creation tools contain a lot of information that is unnecessary for games. Also the data is usually rearranged so that it can be simply read into the corresponding buffers (e.g.: for rendering) at runtime and does not need to be prepared. The conversion from common 3D formats to engine-specific ones is part of the so-called "Asset Conditioning Pipeline" (and is commonly performed either via Plugins, e.g.: for Autodesk Maya, or special standalone tools that are part of the engine)


Not the answer you're looking for? Browse other questions tagged .