top of page

FBX Viewer

FBX Viewer is my first directed focus study (DFS) during summer semester, focusing on importing binary .FBX file into my own game engine using official FBX SDK by Autodesk. This study involving loading vertexes info for whitebox model rendering, reading filepaths of binded texture maps and applying them to models, loading global transformation of joints as animation keyframes and updating vertexes each frame with keyframe transformation to form animation.

dfslooping800600_orig.gif

FBX Parsing:

FBX files use a hierarchical structure to organize data, similar to a tree structure, where each node represents an object, such as model(mesh), bone(skeleton), light, camera, etc. Therefore, reading an FBX file involving traversing its tree structure and process the data on each node based on type.

image.png

Skeleton:

FBX files use a hierarchical structure to organize data, similar to a tree structure, where each node represents an object, such as model(mesh), bone(skeleton), light, camera, etc. Therefore, reading an FBX file is basically traversing its tree structure and process the data on each node based on type.

image.png

Animation:

Each pose of the model is determined by the different positions of its joints, that is to say, the position and rotation of the joints control the movement of the model.In the FBX file, each vertex  has its weight information created during the skinning. As the joints move, each vertex recalculates its new position based on the joint weights. With all the vertices updated, the model forms a new pose. And if we keep doing that every frame, they become animation.

image.png
Small.gif

Credit:

  • Mutant model and animations sourced from Mixamo.com, by Adobe

  • Wolf model and animation sourced from Free3D.com, by Dennis Haupt (3dhaupt)

bottom of page