This reference page is linked to from the following overview topics: Updated Objects, MotionBuilder 2014.
Base class for Geometry.
Definition in file fbgeometry.h.
#define FBSDK_DLL K_DLLIMPORT |
Be sure that FBSDK_DLL is defined only once...
Definition at line 48 of file fbgeometry.h.
Definition at line 61 of file fbgeometry.h.
{ kFBGeometry_POINTS = 0x0000, //GL_POINTS, kFBGeometry_LINES = 0x0001, //GL_LINES, kFBGeometry_LINE_LOOP = 0x0002, //GL_LINE_LOOP, kFBGeometry_LINE_STRIP = 0x0003, //GL_LINE_STRIP, kFBGeometry_TRIANGLES = 0x0004, //GL_TRIANGLES, kFBGeometry_TRIANGLE_STRIP = 0x0005, //GL_TRIANGLE_STRIP, kFBGeometry_TRIANGLE_FAN = 0x0006, //GL_TRIANGLE_FAN, kFBGeometry_QUADS = 0x0007, //GL_QUADS, kFBGeometry_QUADS_STRIP = 0x0008, //GL_QUAD_STRIP, kFBGeometry_POLYGON = 0x0009, //GL_POLYGON, };
enum FBGeometryArrayID |
ID to use when requesting a specific array of data for a model.
Definition at line 76 of file fbgeometry.h.
{ kFBGeometryArrayID_Point = 1 << 0, kFBGeometryArrayID_Normal = 1 << 1, kFBGeometryArrayID_Tangent = 1 << 2, kFBGeometryArrayID_Binormal = 1 << 3, kFBGeometryArrayID_Color = 1 << 4 };
Type of data when requesting an array.
Definition at line 93 of file fbgeometry.h.
{ kFBGeometryArrayElementType_Unknown, kFBGeometryArrayElementType_Integer, kFBGeometryArrayElementType_Float, kFBGeometryArrayElementType_Float2, kFBGeometryArrayElementType_Float3, kFBGeometryArrayElementType_Float4, kFBGeometryArrayElementType_FloatMatrix4x4, kFBGeometryArrayElementType_IntegerArrayPointer };
Determine how the element is mapped on a surface.
kFBGeometryMapping_NONE
The mapping is
undetermined.kFBGeometryMapping_BY_CONTROL_POINT
There will be
one mapping coordinate for each surface control point/vertex.kFBGeometryMapping_BY_POLYGON_VERTEX
There will be
one mapping coordinate for each vertex, for each polygon/strip it
is part of. This means that a vertex will have as many mapping
coordinates as polygons it is part of.kFBGeometryMapping_BY_POLYGON
There can be only
one mapping coordinate for the whole polygon/strip.kFBGeometryMapping_BY_EDGE
There will be one
mapping coordinate for each unique edge in the mesh. This is meant
to be used with smoothing layer elements.kFBGeometryMapping_ALL_SAME
There can be only one
mapping coordinate for the whole surface.kFBGeometryMapping_NONE | |
kFBGeometryMapping_BY_CONTROL_POINT | |
kFBGeometryMapping_BY_POLYGON_VERTEX | |
kFBGeometryMapping_BY_POLYGON | |
kFBGeometryMapping_BY_EDGE | |
kFBGeometryMapping_ALL_SAME |
Definition at line 120 of file fbgeometry.h.
Determine how the mapping information is stored in the array of coordinate.
kFBGeometryReference_DIRECT
This indicates that
the mapping information for the n'th element is found in the n'th
place of DirectArray.kFBGeometryReference_INDEX
, This indicates that
the mapping information for the n'th element is found in the n'th
place of IndexArray.kFBGeometryReference_INDEX_TO_DIRECT
This
indicates that the KLayerElementTemplate::mIndexArray contains, for
the n'th element, an index in the
KLayerElementTemplate::mDirectArray array of mapping elements.
eINDEX_TO_DIRECT is usually useful to store coordinates for
eBY_POLYGON_VERTEX mapping mode elements. Since the same
coordinates are usually repeated a large number of times, it saves
spaces to store the coordinate only one time and refer to them with
an index. Materials and Textures are also referenced with this mode
and the actual Material/Texture can be accessed via the
KLayerElementTemplate::mDirectArraykFBGeometryReference_DIRECT | |
kFBGeometryReference_INDEX | |
kFBGeometryReference_INDEX_TO_DIRECT |
Definition at line 141 of file fbgeometry.h.
Definition at line 151 of file fbgeometry.h.
{ kFBGeometryUpdateNone = 0, kFBGeometryUpdateAll = 1 << 0, kFBGeometryUpdatePositionAndNormal = 1 << 1, kFBGeometryUpdateSkinWeight = 1 << 2, kFBGeometryUpdateInverseNormal = 1 << 3, kFBGeometryUpdateMappingMode = 1 << 4, };
enum FBSurfaceMode |
Surface modes.
kFBSurfaceModeRaw |
Raw data. |
kFBSurfaceModeLowNoNormals |
Low quality, no normals. |
kFBSurfaceModeLow |
Low quality. |
kFBSurfaceModeHighNoNormals |
High quality, no normals. |
kFBSurfaceModeHigh |
High quality. |
Definition at line 766 of file fbgeometry.h.
enum FBSurfaceType |
Surface types.
Definition at line 777 of file fbgeometry.h.
enum FBNurbType |
Surface types.
kFBNurbTypePeriodic |
Periodic Type Nurb. |
kFBNurbTypeClosed |
Closed Type Nurb. |
kFBNurbTypeOpen |
Open Type Nurb. |
Definition at line 861 of file fbgeometry.h.
FB_DEFINE_COMPONENT | ( | K_DLLIMPORT | , |
Geometry | |||
) |
FB_DEFINE_COMPONENT | ( | K_DLLIMPORT | , |
Mesh | |||
) |
__FB_FORWARD | ( | FBGeometry | ) |
FB_DEFINE_ENUM | ( | K_DLLIMPORT | , |
GeometryMappingMode | |||
) |
FB_DEFINE_ENUM | ( | K_DLLIMPORT | , |
GeometryReferenceMode | |||
) |
__FB_FORWARD | ( | FBMesh | ) |
__FB_FORWARD | ( | FBSurface | ) |
FB_DEFINE_ENUM | ( | K_DLLIMPORT | , |
SurfaceMode | |||
) |
FB_DEFINE_ENUM | ( | K_DLLIMPORT | , |
SurfaceType | |||
) |
FB_DEFINE_ENUM | ( | K_DLLIMPORT | , |
NurbType | |||
) |
__FB_FORWARD | ( | FBNurbs | ) |
__FB_FORWARD | ( | FBPatch | ) |
K_DEPRECATED_2014 const int kFBGeometryArrayID_NormalByPoint = kFBGeometryArrayID_Normal |
Definition at line 86 of file fbgeometry.h.
K_DEPRECATED_2014 const int kFBGeometryArrayID_VertexColor = kFBGeometryArrayID_Color |
Definition at line 89 of file fbgeometry.h.