Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
deftypes [2019/03/12 14:46] – [G3D File Format] admin | deftypes [Unknown date] (current) – removed - external edit (Unknown date) 127.0.0.1 | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== Internal Model Definition ====== | ||
- | Gorilla3D holds model, animation and material data inside of an internal structure for better instancing, abstraction and management. | ||
- | |||
- | The so-called DefTypes can be stored and loaded to/from *.G3D file format. | ||
- | |||
- | ===== Structure ===== | ||
- | |||
- | Take a look at the following schematic structure of a model definition. | ||
- | |||
- | < | ||
- | -TModelDef | ||
- | // holds a list of TMeshDef instances | ||
- | | ||
- | | ||
- | // a reference to the owner model | ||
- | | ||
- | | ||
- | | ||
- | |||
- | // holds a list of TMaterialDef instances | ||
- | -List:: | ||
- | | ||
- | // a reference to the owner model | ||
- | | ||
- | |||
- | // holds a list of textures | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | |||
- | // holds a list of shader codes | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | |||
- | // holds a list of sub materials for layered material sources | ||
- | | ||
- | | ||
- | [...] | ||
- | | ||
- | | ||
- | | ||
- | -/ | ||
- | |||
- | // holds a list of THumanoidDef instances | ||
- | | ||
- | | ||
- | // a reference to the owner model | ||
- | | ||
- | // holds a list of TControllerDef references | ||
- | | ||
- | |||
- | // represents a tree of TJointDef nodes | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | |||
- | // holds a list of TControllerDef instances | ||
- | | ||
- | | ||
- | // a reference to the mesh, the controller handles | ||
- | | ||
- | |||
- | // is a sub component of TSkinDef | ||
- | | ||
- | | ||
- | // the owner controller of the skin definition | ||
- | | ||
- | |||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | |||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | |||
- | // holds a list of TAnimationDef instances | ||
- | | ||
- | | ||
- | // reference to the owner model | ||
- | | ||
- | |||
- | // holds a list of TAnimationStageDef instances | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | </ | ||
- | |||
- | ===== G3D File Format ===== | ||
- | |||
- | The Gorilla3D file format is a representation of the internal model structure defintion. | ||
- | It allows different kinds of storage formats: | ||
- | |||
- | ^ Format | ||
- | | BSON | binary json format | | ||
- | | JSON | default json format | |