Instance Methods | Properties | List of all members
CC3SkinMeshNode Class Reference

#import <CC3VertexSkinning.h>

Inheritance diagram for CC3SkinMeshNode:
Inheritance graph

Instance Methods

(void) - boneWasTransformed:
(CC3SkinSection *) - skinSectionForFaceIndex:
(CC3SkinSection *) - skinSectionForVertexIndexAt:
- Instance Methods inherited from CC3MeshNode
(CC3Material *) - __deprecated
(void) - __deprecated
(void) - __deprecated
(void) - __deprecated
(void) - __deprecated
(void) - addTexture:
(CC3Face- deformedFaceAt:
(CC3Vector- deformedFaceCenterAt:
(CC3Vector- deformedFaceNormalAt:
(CC3Plane- deformedFacePlaneAt:
(CC3Vector- deformedVertexLocationAt:fromFaceAt:
(void) - drawWithVisitor:
(CC3Mesh *) - ensureMesh
(void) - expectsVerticallyFlippedTexture:inTextureUnit:
(BOOL) - expectsVerticallyFlippedTextureInTextureUnit:
(CC3Face- faceAt:
(CC3Vector- faceCenterAt:
(GLuint) - faceCountFromVertexCount:
(GLuint) - faceCountFromVertexIndexCount:
(CC3Face- faceFromIndices:
(CC3FaceIndices- faceIndicesAt:
(CC3FaceNeighbours- faceNeighboursAt:
(CC3Vector- faceNormalAt:
(CC3Plane- facePlaneAt:
(GLuint) - findFirst:globalIntersections:ofGlobalRay:acceptBackFaces:acceptBehindRay:
(GLuint) - findFirst:intersections:ofLocalRay:acceptBackFaces:acceptBehindRay:
(void) - flipHorizontallyTextureUnit:
(void) - flipTexturesHorizontally
(void) - flipTexturesVertically
(void) - flipVerticallyTextureUnit:
(CC3Material *) - makeMaterial
(CC3Mesh *) - makeMesh
(void) - moveMeshOriginTo:
(void) - moveMeshOriginToCenterOfGeometry
(void) - movePivotTo:
(void) - populateAsBitmapFontLabelFromString:fromFontFile:andLineHeight:andTextAlignment:andRelativeOrigin:andTessellation:
(void) - populateAsCenteredRectangleWithSize:
(void) - populateAsCenteredRectangleWithSize:andTessellation:
(void) - populateAsCenteredRectangleWithSize:andTessellation:withTexture:invertTexture:
(void) - populateAsCenteredRectangleWithSize:withTexture:invertTexture:
(void) - populateAsCenteredTexturedRectangleWithSize:
(void) - populateAsCenteredTexturedRectangleWithSize:andTessellation:
(void) - populateAsCubeMappedSolidBox:
(void) - populateAsDiskWithRadius:andTessellation:
(void) - populateAsHollowConeWithRadius:height:andTessellation:
(void) - populateAsLineStripWith:vertices:andRetain:
(void) - populateAsRectangleWithSize:andPivot:
(void) - populateAsRectangleWithSize:andPivot:andTessellation:
(void) - populateAsRectangleWithSize:andPivot:andTessellation:withTexture:invertTexture:
(void) - populateAsRectangleWithSize:andPivot:withTexture:invertTexture:
(void) - populateAsRectangleWithSize:andRelativeOrigin:
(void) - populateAsRectangleWithSize:andRelativeOrigin:andTessellation:
(void) - populateAsSolidBox:
(void) - populateAsSolidBox:withCorner:
(void) - populateAsSphereWithRadius:andTessellation:
(void) - populateAsTexturedBox:
(void) - populateAsTexturedBox:withCorner:
(void) - populateAsTexturedRectangleWithSize:andPivot:
(void) - populateAsTexturedRectangleWithSize:andPivot:andTessellation:
(void) - populateAsTriangle:withTexCoords:andTessellation:
(void) - populateAsWireBox:
(CC3Mesh *) - prepareParametricMesh
(void) - removeAllTextures
(void) - removeLocalShaders
(void) - repeatTexture:
(void) - repeatTexture:forTextureUnit:
(CC3ShaderProgram *) - selectShaderProgram
(void) - setTexture:forTextureUnit:
(void) - setTextureRectangle:forTextureUnit:
(void) - setVertexBitangent:at:
(void) - setVertexBoneIndex:forBoneInfluence:at:
(void) - setVertexBoneIndices:at:
(void) - setVertexBoneWeights:at:
(void) - setVertexColor4B:at:
(void) - setVertexColor4F:at:
(void) - setVertexHomogeneousLocation:at:
(void) - setVertexIndex:at:
(void) - setVertexLocation:at:
(void) - setVertexMatrixIndex:forVertexUnit:at:
(void) - setVertexMatrixIndices:at:
(void) - setVertexNormal:at:
(void) - setVertexTangent:at:
(void) - setVertexTexCoord2F:at:
(void) - setVertexTexCoord2F:at:forTextureUnit:
(void) - setVertexTexCoord2F:forTextureUnit:at:
(void) - setVertexWeight:forBoneInfluence:at:
(void) - setVertexWeight:forVertexUnit:at:
(void) - setVertexWeights:at:
(CC3Texture *) - textureForTextureUnit:
(CGRect) - textureRectangleForTextureUnit:
(void) - updateGLBuffers
(void) - updateVertexBitangentsGLBuffer
(void) - updateVertexBoneIndicesGLBuffer
(void) - updateVertexBoneWeightsGLBuffer
(void) - updateVertexColorsGLBuffer
(void) - updateVertexIndicesGLBuffer
(void) - updateVertexLocationsGLBuffer
(void) - updateVertexNormalsGLBuffer
(void) - updateVertexTangentsGLBuffer
(void) - updateVertexTextureCoordinatesGLBuffer
(void) - updateVertexTextureCoordinatesGLBufferForTextureUnit:
(CC3Vector- vertexBitangentAt:
(GLuint) - vertexBoneIndexForBoneInfluence:at:
(GLvoid *) - vertexBoneIndicesAt:
(GLfloat *) - vertexBoneWeightsAt:
(ccColor4B) - vertexColor4BAt:
(ccColor4F) - vertexColor4FAt:
(GLuint) - vertexCountFromFaceCount:
(CC3Vector4- vertexHomogeneousLocationAt:
(GLuint) - vertexIndexAt:
(GLuint) - vertexIndexCountFromFaceCount:
(CC3Vector- vertexLocationAt:
(GLuint) - vertexMatrixIndexForVertexUnit:at:
(GLvoid *) - vertexMatrixIndicesAt:
(CC3Vector- vertexNormalAt:
(CC3Vector- vertexTangentAt:
(ccTex2F) - vertexTexCoord2FAt:
(ccTex2F) - vertexTexCoord2FAt:forTextureUnit:
(ccTex2F) - vertexTexCoord2FForTextureUnit:at:
(GLfloat) - vertexWeightForBoneInfluence:at:
(GLfloat) - vertexWeightForVertexUnit:at:
(GLfloat *) - vertexWeightsAt:
- Instance Methods inherited from CC3LocalContentNode
(void) - checkDrawingOrder
(CC3Box- localContentBoundingBoxRelativeTo:
- Instance Methods inherited from CC3Node
(void) - addAndLocalizeChild:
(void) - addAnimation:asTrack:
(GLuint) - addAnimationFrom:to:
(void) - addAnimationFrom:to:asTrack:
(GLuint) - addAnimationFrom:to:ofBaseTrack:
(void) - addAnimationFrom:to:ofBaseTrack:asTrack:
(GLuint) - addAnimationFromCAFFile:
(void) - addAnimationFromCAFFile:asTrack:
(GLuint) - addAnimationFromCAFFile:linkedToCSFFile:
(void) - addAnimationFromCAFFile:linkedToCSFFile:asTrack:
(GLuint) - addAnimationFromFrame:toFrame:
(void) - addAnimationFromFrame:toFrame:asTrack:
(GLuint) - addAnimationFromFrame:toFrame:ofBaseTrack:
(void) - addAnimationFromFrame:toFrame:ofBaseTrack:asTrack:
(GLuint) - addAnimationFromPODFile:
(void) - addAnimationFromPODFile:asTrack:
(GLuint) - addAnimationInResource:
(void) - addAnimationInResource:asTrack:
(void) - addAnimationState:
(void) - addAxesDirectionMarkers
(void) - addChild:
(void) - addContentFromPODFile:
(void) - addContentFromPODFile:withName:
(void) - addContentFromPODResourceFile:
(void) - addContentFromPODResourceFile:withName:
(void) - addDirectionMarker
(void) - addDirectionMarkerColored:inDirection:
(void) - addShadowVolumes
(void) - addShadowVolumesForLight:
(void) - addTransformListener:
(void) - alignInvertedTextures
(void) - alignTextures
(GLfloat) - animationBlendingWeightOnTrack:
(CCTime) - animationTimeOnTrack:
(NSString *) - appendStructureDescriptionTo:withIndent:
(void) - applyEffectNamed:inPFXResourceFile:
(void) - applyEffectNamed:inPFXResourceNamed:
(void) - applyLocalTransformsTo:
(CC3Node *) - asBumpMapLightTrackingWrapper
(CC3Node *) - asCameraTrackingWrapper
(CC3Node *) - asOrientingWrapper
(CC3Node *) - asTrackingWrapper
(void) - bindRestPose
(CC3Box- boundingBoxRelativeTo:
(void) - buildTransformMatrixWithVisitor:
(void) - cleanupActions
(CC3Node *) - closestNodeIntersectedByGlobalRay:
(BOOL) - containsAnimationOnTrack:
(id) - copy
(id) - copyWithName:
(void) - createBoundingVolume
(void) - createBoundingVolumes
(void) - createGLBuffers
(void) - createSkinnedBoundingVolumes
(CC3NodeBoundingVolume *) - defaultBoundingVolume
(void) - deleteBoundingVolumes
(void) - deleteGLBuffers
(NSString *) - describeAnimationStateForFrames:
(NSString *) - describeAnimationStateForFrames:fromTime:toTime:
(NSString *) - describeCurrentAnimationState
(void) - disableAllAnimation
(void) - disableAllAnimationOnTrack:
(void) - disableAllLocationAnimation
(void) - disableAllQuaternionAnimation
(void) - disableAllScaleAnimation
(void) - disableAnimation
(void) - disableAnimationOnTrack:
(void) - disableLocationAnimation
(void) - disableQuaternionAnimation
(void) - disableScaleAnimation
(BOOL) - doesIntersectBoundingVolume:
(BOOL) - doesIntersectFrustum:
(BOOL) - doesIntersectGlobalRay:
(BOOL) - doesIntersectNode:
(void) - doNotBufferVertexBitangents
(void) - doNotBufferVertexBoneIndices
(void) - doNotBufferVertexBoneWeights
(void) - doNotBufferVertexColors
(void) - doNotBufferVertexContent
(void) - doNotBufferVertexIndices
(void) - doNotBufferVertexLocations
(void) - doNotBufferVertexNormals
(void) - doNotBufferVertexPointSizes
(void) - doNotBufferVertexTangents
(void) - doNotBufferVertexTextureCoordinates
(void) - enableAllAnimation
(void) - enableAllAnimationOnTrack:
(void) - enableAllLocationAnimation
(void) - enableAllQuaternionAnimation
(void) - enableAllScaleAnimation
(void) - enableAnimation
(void) - enableAnimationOnTrack:
(void) - enableLocationAnimation
(void) - enableQuaternionAnimation
(void) - enableScaleAnimation
(void) - ensureRigidSkeleton
(void) - establishAnimationFrameAt:
(void) - establishAnimationFrameAt:onTrack:
(NSArray *) - flatten
(void) - flattenInto:
(void) - flipNormals
(void) - freezeAllInanimatesOnTrack:
(void) - freezeIfInanimateOnTrack:
(CCAction *) - getActionByTag:
(CC3NodeAnimation *) - getAnimationOnTrack:
(CC3NodeAnimationState *) - getAnimationStateOnTrack:
(CC3MeshNode *) - getMeshNodeNamed:
(CC3Node *) - getNodeNamed:
(CC3Node *) - getNodeTagged:
(CC3ShadowVolumeMeshNode *) - getShadowVolumeForLight:
(CC3Vector- globalLocationOfGlobalRayIntesection:
(CC3Matrix *) - globalRotationMatrix
(BOOL) - hasShadowVolumes
(BOOL) - hasShadowVolumesForLight:
(void) - hide
(BOOL) - isAnimationEnabledOnTrack:
(BOOL) - isDescendantOf:
(BOOL) - isShadowVisible
(void) - linkToPODNodes:
(CC3Vector- locationOfGlobalRayIntesection:
(void) - markAnimationDirty
(void) - markBoundingVolumeDirty
(void) - markTransformDirty
(PODStructPtr- nodePODStructAtIndex:fromPODResource:
(CC3NodePuncturingVisitor *) - nodesIntersectedByGlobalRay:
(void) - nodeWasDestroyed:
(void) - nodeWasTransformed:
(NSInteger) - numberOfRunningActions
(void) - pauseAllActions
(void) - prewarmForShadowVolumes
(void) - reattachBonesFrom:
(void) - releaseRedundantContent
(void) - remove
(void) - removeAllChildren
(void) - removeAllDirectionMarkers
(void) - removeAllTransformListeners
(void) - removeAnimation:
(void) - removeAnimationState:
(void) - removeAnimationTrack:
(void) - removeChild:
(void) - removeShaders
(void) - removeShadowVolumes
(void) - removeShadowVolumesForLight:
(void) - removeTransformListener:
(void) - resumeAllActions
(void) - retainVertexBitangents
(void) - retainVertexBoneIndices
(void) - retainVertexBoneWeights
(void) - retainVertexColors
(void) - retainVertexContent
(void) - retainVertexIndices
(void) - retainVertexLocations
(void) - retainVertexNormals
(void) - retainVertexPointSizes
(void) - retainVertexTangents
(void) - retainVertexTextureCoordinates
(void) - rotateBy:
(void) - rotateByAngle:aroundAxis:
(void) - rotateByAngle:aroundAxis:atLocation:
(void) - rotateByQuaternion:
(CCAction *) - runAction:
(CCAction *) - runAction:withTag:
(void) - selectShaders
(void) - setAnimationBlendingWeight:onTrack:
(void) - setSkeletalBoundingVolume:
(void) - show
(void) - stopAction:
(void) - stopActionByTag:
(void) - stopAllActions
(void) - touchDisableAll
(void) - touchEnableAll
(void) - trackTargetWithVisitor:
(void) - transformAndDrawWithVisitor:
(void) - translateBy:
(void) - updateAfterTransform:
(void) - updateBeforeTransform:
(void) - wasAdded
(void) - wasRemoved
- Instance Methods inherited from CC3Identifiable
(id) - copyAsClass:
(void) - copyUserDataFrom:
(id) - copyWithName:asClass:
(id) - copyWithZone:withName:
(id) - copyWithZone:withName:asClass:
(BOOL) - deriveNameFrom:
(BOOL) - deriveNameFrom:usingSuffix:
(NSString *) - fullDescription
(id) - init
(id) - initAtIndex:fromPODResource:
(void) - initUserData
(id) - initWithName:
(id) - initWithTag:
(id) - initWithTag:withName:
(GLuint) - nextTag
(void) - populateFrom:


NSArray * skinSections
- Properties inherited from CC3MeshNode
CC3Mesh *meshModel __deprecated
ccColor4F pureColor __deprecated
BOOL hasPremultipliedAlpha __deprecated
GLuint vertexUnitCount __deprecated
GLenum matrixIndexType __deprecated
ccColor4F ambientColor
ccBlendFunc blendFunc
CCColorRef color
ccColor4F diffuseColor
GLenum drawingMode
CC3NormalScaling effectiveNormalScalingMethod
ccColor4F emissionColor
BOOL expectsVerticallyFlippedTextures
GLuint faceCount
BOOL hasRigidSkeleton
BOOL hasSkeleton
BOOL hasTextureAlpha
BOOL hasTexturePremultipliedAlpha
BOOL isDrawingPointSprites
BOOL isOpaque
BOOL isUsingGLBuffers
CCOpacity opacity
int podMaterialIndex
GLfloat reflectivity
GLfloat shininess
BOOL shouldApplyOpacityToColor
BOOL shouldCacheFaces
BOOL shouldDrawLowAlpha
BOOL shouldUseLighting
BOOL shouldUseLightProbes
ccColor4F specularColor
GLuint textureCount
CGRect textureRectangle
GLuint vertexBoneCount
GLenum vertexBoneIndexType
GLenum vertexColorType
CC3VertexContent vertexContentTypes
GLuint vertexCount
GLuint vertexIndexCount
- Properties inherited from CC3LocalContentNode
CC3Box globalLocalContentBoundingBox
CC3Vector globalLocalContentCenterOfGeometry
CC3Box localContentBoundingBox
CC3Vector localContentCenterOfGeometry
BOOL shouldDrawLocalContentWireframeBox
- Properties inherited from CC3Node
CC3Vector sceneUpDirection __deprecated
CC3Vector worldUpDirection __deprecated
GLfloat scaleTolerance __deprecated
CC3Vector globalLightLocation __deprecated
CC3Matrix *transformMatrix __deprecated
CC3Matrix *transformMatrixInverted __deprecated
CC3Node *dirtiestAncestor __deprecated
CC3Matrix *parentTransformMatrix __deprecated
CC3Scene *world __deprecated
BOOL shouldCleanupWhenRemoved __deprecated
ccColor4F ambientColor
ccBlendFunc blendFunc
CC3Box boundingBox
GLfloat boundingVolumePadding
GLfloat cameraDistanceProduct
CC3Vector centerOfGeometry
NSArray * children
CCColorRef color
BOOL containsAnimation
GLfloat decalOffsetFactor
GLfloat decalOffsetUnits
GLenum depthFunction
ccColor4F diffuseColor
NSArray * directionMarkers
ccColor4F emissionColor
BOOL expectsVerticallyFlippedTextures
CC3Vector forwardDirection
CC3Box globalBoundingBox
CC3Vector globalCenterOfGeometry
CC3Vector globalForwardDirection
CC3Vector4 globalHomogeneousPosition
CC3Vector4 globalLightPosition
CC3Vector globalLocation
CC3Vector globalRightDirection
CC3Vector globalRotation
CC3Vector globalScale
CC3Vector globalUpDirection
BOOL hasLocalContent
BOOL hasSoftBodyContent
BOOL hasTarget
BOOL isAnimationEnabled
BOOL isBasePODNode
BOOL isBillboard
BOOL isCamera
BOOL isLight
BOOL isLightProbe
BOOL isMeshNode
BOOL isOpaque
BOOL isRunning
BOOL isScene
BOOL isShadowVolume
BOOL isTouchable
BOOL isTrackingForBumpMapping
BOOL isTransformDirty
BOOL isTransformRigid
BOOL isUniformlyScaledGlobally
BOOL isUniformlyScaledLocally
GLenum lineSmoothingHint
GLfloat lineWidth
CC3Vector location
CC3NormalScaling normalScalingMethod
CCOpacity opacity
GLint podContentIndex
GLint podParentIndex
GLint podTargetIndex
CC3Vector projectedLocation
CGPoint projectedPosition
CC3Quaternion quaternion
CC3Vector referenceUpDirection
GLfloat reflectivity
const char * renderStreamGroupMarker
CC3Vector rightDirection
CC3Vector rotation
GLfloat rotationAngle
CC3Vector rotationAxis
CC3Vector scale
GLfloat shadowExpansionLimitFactor
GLushort shadowLagCount
GLushort shadowLagFactor
GLfloat shadowOffsetFactor
GLfloat shadowOffsetUnits
NSArray * shadowVolumes
GLfloat shadowVolumeVertexOffsetFactor
GLfloat shininess
BOOL shouldAddShadowVolumeEndCapsOnlyWhenNeeded
BOOL shouldAllowTouchableWhenInvisible
BOOL shouldApplyOpacityAndColorToMeshContent
BOOL shouldAutoremoveWhenEmpty
BOOL shouldAutotargetCamera
BOOL shouldBlendAtFullOpacity
BOOL shouldCacheFaces
BOOL shouldCastShadows
BOOL shouldCastShadowsWhenInvisible
BOOL shouldCullBackFaces
BOOL shouldCullFrontFaces
BOOL shouldDisableDepthMask
BOOL shouldDisableDepthTest
BOOL shouldDrawAllBoundingVolumes
BOOL shouldDrawAllDescriptors
BOOL shouldDrawAllLocalContentWireframeBoxes
BOOL shouldDrawAllWireframeBoxes
BOOL shouldDrawBoundingVolume
BOOL shouldDrawDescriptor
BOOL shouldDrawInClipSpace
BOOL shouldDrawWireframeBox
BOOL shouldIgnoreRayIntersection
BOOL shouldInheritTouchability
BOOL shouldLogIntersectionMisses
BOOL shouldLogIntersections
BOOL shouldShadowBackFaces
BOOL shouldShadowFrontFaces
BOOL shouldSmoothLines
BOOL shouldStopActionsWhenRemoved
BOOL shouldTrackTarget
BOOL shouldUseClockwiseFrontFaceWinding
BOOL shouldUseFixedBoundingVolume
BOOL shouldUseLighting
BOOL shouldUseLightProbes
BOOL shouldUseSmoothShading
CC3Vector skeletalScale
ccColor4F specularColor
NSString * structureDescription
CC3Vector targetLocation
CC3TargettingConstraint targettingConstraint
BOOL touchEnabled
NSSet * transformListeners
GLfloat uniformScale
CC3Vector upDirection
BOOL visible
GLint zOrder
- Properties inherited from CC3Identifiable
NSObject *sharedUserData __deprecated
NSString * name
NSString * nameSuffix
GLint podIndex
BOOL shouldIncludeInDeepCopy
GLuint tag
NSObject * userData
- Properties inherited from <CC3Cacheable>
NSString * name

Additional Inherited Members

- Class Methods inherited from CC3LocalContentNode
(ccColor4F) + localContentWireframeBoxColor
(void) + setLocalContentWireframeBoxColor:

Detailed Description

CC3SkinMeshNode is a CC3MeshNode specialized to use vertex skinning to draw the contents of its mesh.

It is one of the key structural descendant nodes of a CC3SoftBodyNode instance.

The CC3SkinMeshNode contains a collection of skin sections, in the form of CC3SkinSection instances. Each CC3SkinSection instance relates a section of the mesh, in the form of a range of vertices, to a set of bones in the skeleton.

Each CC3SkinSection applies the transformations in the referenced bones to the the vertices in the section of the mesh that it controls, and draws that section of the mesh by drawing the vertices within its range in a single GL call.

After copying a CC3SkinMeshNode, the newly created copy will still be influenced by the original skeleton. The result is that both the original mesh and the copy will move and be deformed in tandem as the skeleton moves.

If you are creating a chorus line of dancing characters, this may be the effect you are after. However, if you are creating a squadron of similar, but independently moving, characters, each CC3SkinMeshNode copy should be controlled by a separate skeleton. To do this, after creating a copy of the skeleton bone node assembly as well, you can use the reattachBonesFrom: method to attach the skin mesh node to the new skeleton.

When copying a CC3SkinMeshNode as part of copying a CC3SoftBodyNode instance, a copy of the skeleton is also created, and the reattachBonesFrom: method is automatically invoked. When copying CC3SoftBodyNode, you do not need to invoke the reattachBonesFrom: method on the new CC3SkinMeshNode directly.

The use of bounding volumes with skinned meshes can be tricky, because the locations of the vertices are affected both by the location of the mesh node, as with any mesh, but also by the location of the bones. In addition, bone transformation is handled by the GPU, and unless the CPU is also tasked with transforming each vertex, it is difficult for the app to know the true range of the vertices.

Because of this, the createBoundingVolumes method will be ignored by instances of this class, and a bounding volume will not automatically be assigned to this node, to ensure that the mesh will not be culled when it shouldn't if the automatic bounding volume is not the correct shape. This mesh will therefore be drawn for each frame, even if it is not in front of the camera (ie- inside the camera's frustum).

It is left to the application to determine the best approach to managing the assignment of a bounding volume, possibly using one of the following approaches:

Method Documentation

- (void) boneWasTransformed: (CC3Bone *)  aBone

Callback method indicating the specified bone has been transformed.

This implementation clears the internal mesh faces cache, because the faces of the skinned mesh are deformed by the movement of the bones that influence this skin mesh node.

- (CC3SkinSection*) skinSectionForFaceIndex: (GLint)  faceIndex

Returns the skin section that deforms the specified face.

The specified faceIndex value refers to the index of the face, not the vertices themselves. So, a value of 5 will retrieve the three vertices that make up the fifth triangular face in this mesh. The specified index must be between zero, inclusive, and the value of the faceCount property, exclusive.

- (CC3SkinSection*) skinSectionForVertexIndexAt: (GLint)  index

Returns the skin section that deforms the specified vertex.

Each skin section operates on a consecutive array of vertex indices. If this mesh uses vertex indexing, the specified index should be an index into the vertex index array.

If this mesh does not use vertex indexing, then the specified index should be the index of the vertex in the vertex locations array.

Property Documentation

- (CC3Matrix*) skeletalTransformMatrix

Returns the transform matrix of this skin mesh node, relative to the coordinate system of the skeleton that influences the vertices of this mesh node.

The root of the skeleton is the nearest ancestor CC3SoftBodyNode.

- (CC3Matrix*) skeletalTransformMatrixInverted

Returns the inverse of the matrix in the skeletalTransformMatrix property.

- (NSArray*) skinSections

The collection of CC3SkinSections that are managed by this node.

The documentation for this class was generated from the following file: