v2.0.2
Classes | Macros | Enumerations | Functions
CC3Mesh.h File Reference
#import "CC3Node.h"
#import "CC3VertexArrays.h"
#import "CC3Material.h"

Classes

class  CC3FaceArray
 
struct  CC3FaceNeighbours
 
class  CC3Mesh
 
struct  CC3MeshIntersection
 

Macros

#define kCC3FaceNoNeighbour   ((GLuint)~0)
 

Enumerations

enum  CC3VertexContent {
  kCC3VertexContentNone = 0, kCC3VertexContentLocation = 1 << 0, kCC3VertexContentNormal = 1 << 1, kCC3VertexContentTangent = 1 << 2,
  kCC3VertexContentBitangent = 1 << 3, kCC3VertexContentColor = 1 << 4, kCC3VertexContentTextureCoordinates = 1 << 5, kCC3VertexContentPointSize = 1 << 6,
  kCC3VertexContentBoneWeights = 1 << 7, kCC3VertexContentBoneIndices = 1 << 8, __deprecated = kCC3VertexContentBoneWeights, __deprecated = kCC3VertexContentBoneWeights
}
 

Functions

static CC3MeshIntersectionCC3NearestMeshIntersection (CC3MeshIntersection *meshHits, NSUInteger hitCount)
 
static NSString * NSStringFromCC3FaceNeighbours (CC3FaceNeighbours faceNeighbours)
 
static NSString * NSStringFromCC3MeshIntersection (CC3MeshIntersection mi)
 
NSString * NSStringFromCC3VertexContent (CC3VertexContent vtxContent)
 

Macro Definition Documentation

#define kCC3FaceNoNeighbour   ((GLuint)~0)

Indicates that a face has no neighbour over a particular edge.

Enumeration Type Documentation

This enum defines the components of a bitwise-OR of flags enumerating the types of vertex content contained within a mesh.

Valid components of this type include biwise-OR combinations of the the values in this enum.

An absence of any bitwise-OR components in a CC3VertexContent is represented by kCC3VertexContentNone.

All valid meshes must contain a kCC3VertexContentLocation, and a meshes will raise an assertion if an attempt is made to set the vertex content without that component.

Enumerator
kCC3VertexContentNone 

Bitwise-OR component of CC3VertexContent variables that indicates an absence of any vertex content.

kCC3VertexContentLocation 

Bitwise-OR component of CC3VertexContent variables that indicates each vertex contains location information.

Vertices must always include location info.

kCC3VertexContentNormal 

Bitwise-OR component of CC3VertexContent variables that indicates each vertex contains normal information.

This component is required if and only if the mesh is to interact with light sources.

kCC3VertexContentTangent 

Bitwise-OR component of CC3VertexContent variables that indicates each vertex contains tangent information.

This component is required if and only if the mesh is using tangent-space bump-mapping.

kCC3VertexContentBitangent 

Bitwise-OR component of CC3VertexContent variables that indicates each vertex contains bitangent information.

This component is optionally included when the mesh is using tangent-space bump-mapping.

kCC3VertexContentColor 

Bitwise-OR component of CC3VertexContent variables that indicates each vertex contains color information.

This component is required if and only if each vertex on the mesh will have its own color. If this component is not included, all vertices in the mesh will have the color specified by the coloring properties of the material of the mesh node.

kCC3VertexContentTextureCoordinates 

Bitwise-OR component of CC3VertexContent variables that indicates each vertex maps to a position on a texture.

This component is required if and only if the mesh is covered by a texture.

kCC3VertexContentPointSize 

Bitwise-OR component of CC3VertexContent variables that indicates each vertex contains point size information.

This component is required if and only if the vertices are part of a point pariticle mesh, and each particle will have its own size. If this component is not included in a point particle mesh, all particles will have the same size.

kCC3VertexContentBoneWeights 

Bitwise-OR component of CC3VertexContent variables that indicates each vertex contains a series of weights to allow the vertex to be manipulated by a series of weighted bones.

This component is required if and only if the mesh is a vertex skinned mesh. This component requires that the kCC3VertexContentBoneIndices also be specified.

kCC3VertexContentBoneIndices 

Bitwise-OR component of CC3VertexContent variables that indicates each vertex contains a series of bone indices to allow the vertex to be manipulated by a series of weighted bones.

This component is required if and only if the mesh is a vertex skinned mesh. This component requires that the kCC3VertexContentBoneWeights also be specified.

__deprecated 
Deprecated:
Renamed to kCC3VertexContentBoneWeights
Deprecated:
Renamed to kCC3VertexContentBoneIndices
__deprecated 
Deprecated:
Renamed to kCC3VertexContentBoneWeights
Deprecated:
Renamed to kCC3VertexContentBoneIndices

Function Documentation

static CC3MeshIntersection* CC3NearestMeshIntersection ( CC3MeshIntersection meshHits,
NSUInteger  hitCount 
)
inlinestatic

Returns a pointer to the CC3MeshIntersection structure contained within the specified array of CC3MeshIntersection structures that has the smallest distance component.

The hitCount parameter indicates the size of the meshHits array. Returns NULL if hitCount is zero.

static NSString* NSStringFromCC3FaceNeighbours ( CC3FaceNeighbours  faceNeighbours)
inlinestatic

Returns a string description of the specified CC3FaceNeighbours struct.

static NSString* NSStringFromCC3MeshIntersection ( CC3MeshIntersection  mi)
inlinestatic

Returns a string description of the specified CC3MeshIntersection struct.

NSString* NSStringFromCC3VertexContent ( CC3VertexContent  vtxContent)

Returns a string description of the specified vertex content components.