Fbx and OpenGL skeleton System

Source: Internet
Author: User

Fbx is a 3D model format provided by Autodesk. Because Autodesk has acquired popular 3D modeling software such as Maya and 3D MAX, fbx is a perfect universal format.

 

Fbx is mainly used for 3D scene communication, so it describes the entire 3D project in a single file, including camera settings, lighting parameters, texture pictures, music, animation, and skeleton, key Frame data.

 

Fbx is a closed-source format. We do not know the internal storage method of fbx files, but Autodesk provides a good SDK, you can call the DLL and other library files in the SDK to create/export fbx data. Fbx sdks now support C ++ and python, and support windows, Linux, and Mac OS platforms.

 

The scenario (scene) interface provided by the SDK contains eleven node structures:

 

Cameras, lights, bones (skeleton), and grids (mesh) are all nodes, and the nodes can also have subnodes.

 

If lattributetype = kfbxnodeattribute. emarker: <br/> displaymarker (pnode) <br/> Elif lattributetype = kfbxnodeattribute. eskeleton: <br/> displayskeleton (pnode) <br/> Elif lattributetype = kfbxnodeattribute. emesh: <br/> displaymesh (pnode) <br/> Elif lattributetype = kfbxnodeattribute. enurb: <br/> displaynurb (pnode) <br/> Elif lattributetype = kfbxnodeattribute. epatch: <br/> displaypatch (pnode) <br/> Elif lattributetype = kfbxnodeattribute. ecamera: <br/> displaycamera (pnode) <br/> Elif lattributetype = kfbxnodeattribute. elight: <br/> displaylight (pnode) <br/>

 

Patch, nurb ??

 

Non-Uniform Rational B-spline, a set with a specific gravity control point and a curve order and a node set vector. A typical example is the besell curve, which can be seen in PS, gimp, and AutoCAD. The whole curve is controlled by nodes and angles. It can also be used to describe a surface. It corresponds to a mesh and represents two different implementation methods. For details, see wiki.

 

Important node Structure: mesh, skeleton

 

Mesh stores important data of the model structure, including vertex coordinates, color, UV (texture coordinates), and normal.

 

Important Concepts: layer, control point, vertex, eby_control_point, eby_polygon_vertex ,:

 

Layer, level: Normal, texture coordinates, etc. are stored in the layer. Each model can have multiple layers, and each layer has a set of textures, normal, and so on. However, we usually only use one layer, and many modeling software only supports one layer.

 

There are two important ing relationships between the normal, texture, and color and vertex data. by_control_point is that each control point corresponds to a normal and texture data, and by_polygon_vertex is that each vertex corresponds to a normal, texture, and other data. That is to say, because a point can be contained in multiple polygon, and in different polygon, it can have different normal and color.

 

Kfbxlayerelement. edirect, kfbxlayerelement. eindex_to_direct reference method :???

 

Material, Texture Materials and textures: texture problems cannot be solved only by texture coordinates. Because fbx directly stores texture maps in fbx files, a model can use multiple texture maps, the specific correspondence and management are very important.

 

 

Skeleton: A bone system is an important aspect of Advanced Model Animation. It simulates real things and provides the following methods: Bone (bone), joint (joint), and weight (weight). The bones and joints are the control points of motion. They move the bones and use the weight data to calculate the motion vector of each vertex. Finally, the motion vector is assigned to the model to complete the motion.

 

Skeleton:Http://gpwiki.org/index.php/OpenGL:Tutorials:Basic_Bones_System

 

Fbx: http://www.cnblogs.com/clayman/archive/2010/12/10/1901779.html

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.