This reference page is linked to from the following overview topics: MotionBuilder 2014, Updated Objects.
Base class for Geometry. More...
#include <kaydaradef.h>
#include <fbsdk/fbcore.h>
#include <fbsdk/fbcomponent.h>
Go to the source code of this file.
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::mDirectArray kFBGeometryReference_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 | ( | FBSDK_DLL | , |
Geometry | |||
) |
FB_DEFINE_COMPONENT | ( | FBSDK_DLL | , |
Mesh | |||
) |
__FB_FORWARD | ( | FBGeometry | ) |
FB_DEFINE_ENUM | ( | FBSDK_DLL | , |
GeometryMappingMode | |||
) |
FB_DEFINE_ENUM | ( | FBSDK_DLL | , |
GeometryReferenceMode | |||
) |
__FB_FORWARD | ( | FBMesh | ) |
__FB_FORWARD | ( | FBSurface | ) |
FB_DEFINE_ENUM | ( | FBSDK_DLL | , |
SurfaceMode | |||
) |
FB_DEFINE_ENUM | ( | FBSDK_DLL | , |
SurfaceType | |||
) |
FB_DEFINE_ENUM | ( | FBSDK_DLL | , |
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.