beastapi/beastmesh.h Source File

beastmesh.h
Go to the documentation of this file.
1 /*
2 Copyright 2014 Autodesk, Inc. All rights reserved.
3 Use of this software is subject to the terms of the Autodesk license agreement
4 provided at the time of installation or download, or which otherwise
5 accompanies this software in either electronic or hard copy form.
6 */
7 
11 #ifndef BEASTMESH_H
12 #define BEASTMESH_H
13 
14 #include "beastapitypes.h"
15 
16 #ifdef __cplusplus
17 extern "C" {
18 #endif // __cplusplus
19 
28 ILB_DLL_FUNCTION ILBStatus ILBBeginMesh(ILBManagerHandle beastManager,
29  ILBConstString uniqueName,
30  ILBMeshHandle* targetMesh);
31 
39 ILB_DLL_FUNCTION ILBStatus ILBEndMesh(ILBMeshHandle mesh);
40 
51 ILB_DLL_FUNCTION ILBStatus ILBFindMesh(ILBManagerHandle beastManager,
52  ILBConstString uniqueName,
53  ILBMeshHandle* target);
54 
66 ILB_DLL_FUNCTION ILBStatus ILBAddVertexData(ILBMeshHandle mesh,
67  const ILBVec3* positionData,
68  const ILBVec3* normalData,
69  int32 vertexCount);
70 
77 ILB_DLL_FUNCTION ILBStatus ILBBeginMaterialGroup(ILBMeshHandle mesh,
78  ILBConstString materialName);
79 
85 ILB_DLL_FUNCTION ILBStatus ILBEndMaterialGroup(ILBMeshHandle mesh);
86 
99 ILB_DLL_FUNCTION ILBStatus ILBAddTriangleData(ILBMeshHandle mesh,
100  const int32* indexData,
101  int32 indexCount);
102 
111 ILB_DLL_FUNCTION ILBStatus ILBBeginUVLayer(ILBMeshHandle mesh,
112  ILBConstString layerName);
113 
121 ILB_DLL_FUNCTION ILBStatus ILBEndUVLayer(ILBMeshHandle mesh);
122 
132 ILB_DLL_FUNCTION ILBStatus ILBAddUVData(ILBMeshHandle mesh,
133  const ILBVec2* uvData,
134  int32 vertexCount);
135 
143 ILB_DLL_FUNCTION ILBStatus ILBBeginColorLayer(ILBMeshHandle mesh,
144  ILBConstString layerName);
145 
152 ILB_DLL_FUNCTION ILBStatus ILBEndColorLayer(ILBMeshHandle mesh);
153 
154 
162 ILB_DLL_FUNCTION ILBStatus ILBAddColorData(ILBMeshHandle mesh,
163  const ILBLinearRGBA* colorData,
164  int32 vertexCount);
165 
173 ILB_DLL_FUNCTION ILBStatus ILBBeginTangents(ILBMeshHandle mesh);
174 
182 ILB_DLL_FUNCTION ILBStatus ILBEndTangents(ILBMeshHandle mesh);
183 
195 ILB_DLL_FUNCTION ILBStatus ILBAddTangentData(ILBMeshHandle mesh,
196  const ILBVec3* tangentData,
197  const ILBVec3* bitangentData,
198  int32 vertexCount);
199 
200 #ifdef __cplusplus
201 
202 }
203 #endif // __cplusplus
204 
205 #endif // BEASTMESH_H
Color with alpha definition All colors are expressed in linear space as opposed to gamma corrected...
Definition: beastapitypes.h:356
This header is the base for getting platform consistent types for the Beast API.
ILBStatus ILBEndColorLayer(ILBMeshHandle mesh)
Finalizes a color layer.
ILBStatus ILBBeginColorLayer(ILBMeshHandle mesh, ILBConstString layerName)
Creates a new color layer.
const ILBCharType * ILBConstString
Beast api const string type.
Definition: beastapitypes.h:245
ILBStatus ILBBeginMaterialGroup(ILBMeshHandle mesh, ILBConstString materialName)
Begins a material group.
ILBStatus ILBAddVertexData(ILBMeshHandle mesh, const ILBVec3 *positionData, const ILBVec3 *normalData, int32 vertexCount)
Adds a chunk of vertex data to a mesh.
Two dimensional geometric vector type.
Definition: beastapitypes.h:290
ILBStatus ILBBeginMesh(ILBManagerHandle beastManager, ILBConstString uniqueName, ILBMeshHandle *targetMesh)
Begins creation of a mesh.
ILBStatus ILBEndMaterialGroup(ILBMeshHandle mesh)
End a material group.
ILBStatus ILBEndUVLayer(ILBMeshHandle mesh)
Ends the UV layer currently being created.
ILBStatus ILBEndMesh(ILBMeshHandle mesh)
Finalizes a mesh.
Handle for Beast meshes Intentionally hidden implementation.
ILBStatus ILBAddTriangleData(ILBMeshHandle mesh, const int32 *indexData, int32 indexCount)
Add triangles to a material group.
ILBStatus ILBAddTangentData(ILBMeshHandle mesh, const ILBVec3 *tangentData, const ILBVec3 *bitangentData, int32 vertexCount)
Adds a batch of tangents and bitangents (binormals) to a mesh.
Three dimensional geometric vector type.
Definition: beastapitypes.h:320
ILBStatus ILBFindMesh(ILBManagerHandle beastManager, ILBConstString uniqueName, ILBMeshHandle *target)
Finds a cached mesh.
ILBStatus ILBBeginTangents(ILBMeshHandle mesh)
Begins adding tangents and bitangents to the mesh.
ILBStatus ILBAddUVData(ILBMeshHandle mesh, const ILBVec2 *uvData, int32 vertexCount)
Adds a batch of UV coordinates to a mesh.
ILBStatus ILBAddColorData(ILBMeshHandle mesh, const ILBLinearRGBA *colorData, int32 vertexCount)
Add color data to the active color set.
Handle for Beast managers Intentionally hidden implementation.
ILBStatus ILBBeginUVLayer(ILBMeshHandle mesh, ILBConstString layerName)
Creates a new UV layer.
ILBStatus ILBEndTangents(ILBMeshHandle mesh)
Ends adding tangent data to the mesh.
ILBStatus
Status codes for Beast API calls.
Definition: beastapitypes.h:153