I have been told to research up on interchange formats, only comes up with certain interchange formats without actually explaining what they are.
What are interchange formats, specifically in the context of game development?
Answer
Interchange formats are file types that are designed for - or commonly used for - transfer ("interchange") between tools.
For instance, artists will make models in Maya. Maya's native file format is the .mb
format. This format is only really usable by Maya, so it is not consumable by other tools.
The 3DS .fbx
format has a good SDK and even some mediocre documentation. Almost all 3D modeler packages, including Maya, can read and write .fbx
files. Furthermore, additional tools and even game engines can easily read .fbx
files, making them useful for working with a complete pipeline.
Game engines themselves usually prefer a custom file format, largely for speed reasons. While engines sometimes come bundled with exporters for packages like Maya to be able to directly save into the engine's preferred format, these plugins don't help when additional tools are needed as part of the artists' workflow. For this reason, many engines instead provide asset converters that can take .fbx
files into the engine's native format, allowing artists to work in their preferred tools and easily get the work into the engine without manual conversion or import/export steps.
These qualities all make .fbx
an example of an interchange format. It is not the only one, of course, but one of the most common.
As an artist working with source control, you may often see both the original tool-specific files (e.g. .mb
) and the interchange formats (.fbx
) checked in, though not always. You generally would not see the engine-specific format checked in as those would be generated on the fly by the engine's asset conversion pipeline.
No comments:
Post a Comment