Packageaway3d.core.base
Classpublic class SkinnedSubGeometry
InheritanceSkinnedSubGeometry Inheritance CompactSubGeometry Inheritance SubGeometryBase Inheritance Object

SkinnedSubGeometry provides a SubGeometry extension that contains data needed to skin vertices. In particular, it provides joint indices and weights. Important! Joint indices need to be pre-multiplied by 3, since they index the matrix array (and each matrix has 3 float4 elements)



Public Properties
 PropertyDefined By
  animatedData : Vector.<Number>
[read-only] The animated vertex positions when set explicitly if the skinning transformations couldn't be performed on GPU.
SkinnedSubGeometry
 InheritedautoDeriveVertexNormals : Boolean
True if the vertex normals should be derived from the geometry, false if the vertex normals are set explicitly.
SubGeometryBase
 InheritedautoDeriveVertexTangents : Boolean
True if the vertex tangents should be derived from the geometry, false if the vertex normals are set explicitly.
SubGeometryBase
 InheritedautoGenerateDummyUVs : Boolean
Defines whether a UV buffer should be automatically generated to contain dummy UV coordinates.
SubGeometryBase
  condensedIndexLookUp : Vector.<uint>
[read-only] If indices have been condensed, this will contain the original index for each condensed index.
SkinnedSubGeometry
  numCondensedJoints : uint
[read-only] The amount of joints used when joint indices have been condensed.
SkinnedSubGeometry
 InheritednumTriangles : uint
[read-only] The total amount of triangles in the SubGeometry.
SubGeometryBase
 InheritednumVertices : uint
[read-only]
CompactSubGeometry
 InheritedparentGeometry : Geometry
SubGeometryBase
 InheritedscaleU : Number
[read-only] Scales the uv coordinates
SubGeometryBase
 InheritedscaleV : Number
[read-only]
SubGeometryBase
 InheritedsecondaryUVOffset : int
[read-only]
CompactSubGeometry
 InheritedsecondaryUVStride : uint
[read-only]
CompactSubGeometry
 InheriteduseFaceWeights : Boolean
Indicates whether or not to take the size of faces into account when auto-deriving vertex normals and tangents.
SubGeometryBase
 InheritedUVData : Vector.<Number>
[override] [read-only]
CompactSubGeometry
 InheritedUVOffset : int
[override] [read-only]
CompactSubGeometry
 InheritedUVStride : uint
[override] [read-only]
CompactSubGeometry
 InheritedvertexData : Vector.<Number>
[override] [read-only]
CompactSubGeometry
 InheritedvertexNormalData : Vector.<Number>
[override] [read-only]
CompactSubGeometry
 InheritedvertexNormalOffset : int
[override] [read-only]
CompactSubGeometry
 InheritedvertexNormalStride : uint
[override] [read-only]
CompactSubGeometry
 InheritedvertexOffset : int
[override] [read-only]
CompactSubGeometry
 InheritedvertexStride : uint
[override] [read-only]
CompactSubGeometry
 InheritedvertexTangentData : Vector.<Number>
[override] [read-only]
CompactSubGeometry
 InheritedvertexTangentOffset : int
[override] [read-only]
CompactSubGeometry
 InheritedvertexTangentStride : uint
[override] [read-only]
CompactSubGeometry
Protected Properties
 PropertyDefined By
 Inherited_activeBuffer : VertexBuffer3D
CompactSubGeometry
 Inherited_activeContext : Context3D
CompactSubGeometry
 Inherited_activeDataInvalid : Boolean
CompactSubGeometry
 Inherited_autoDeriveVertexNormals : Boolean = true
SubGeometryBase
 Inherited_autoDeriveVertexTangents : Boolean = true
SubGeometryBase
 Inherited_autoGenerateUVs : Boolean = false
SubGeometryBase
 Inherited_bufferContext : Vector.<Context3D>
CompactSubGeometry
 Inherited_contextIndex : int
CompactSubGeometry
 Inherited_faceNormals : Vector.<Number>
SubGeometryBase
 Inherited_faceNormalsDirty : Boolean = true
SubGeometryBase
 Inherited_faceTangents : Vector.<Number>
SubGeometryBase
 Inherited_faceTangentsDirty : Boolean = true
SubGeometryBase
 Inherited_faceWeights : Vector.<Number>
SubGeometryBase
 Inherited_indexBuffer : Vector.<IndexBuffer3D>
SubGeometryBase
 Inherited_indexBufferContext : Vector.<Context3D>
SubGeometryBase
 Inherited_indices : Vector.<uint>
SubGeometryBase
 Inherited_indicesInvalid : Vector.<Boolean>
SubGeometryBase
 Inherited_numIndices : uint
SubGeometryBase
 Inherited_numTriangles : uint
SubGeometryBase
 Inherited_numVertices : uint
CompactSubGeometry
 Inherited_uvsDirty : Boolean = true
SubGeometryBase
 Inherited_vertexBuffer : Vector.<VertexBuffer3D>
CompactSubGeometry
 Inherited_vertexData : Vector.<Number>
SubGeometryBase
 Inherited_vertexDataInvalid : Vector.<Boolean>
CompactSubGeometry
 Inherited_vertexNormalsDirty : Boolean = true
SubGeometryBase
 Inherited_vertexTangentsDirty : Boolean = true
SubGeometryBase
Public Methods
 MethodDefined By
  
SkinnedSubGeometry(jointsPerVertex:int)
Creates a new SkinnedSubGeometry object.
SkinnedSubGeometry
  
activateJointIndexBuffer(index:int, stage3DProxy:Stage3DProxy):void
Assigns the attribute stream for joint indices
SkinnedSubGeometry
  
activateJointWeightsBuffer(index:int, stage3DProxy:Stage3DProxy):void
Assigns the attribute stream for joint weights
SkinnedSubGeometry
 Inherited
activateSecondaryUVBuffer(index:int, stage3DProxy:Stage3DProxy):void
CompactSubGeometry
 Inherited
activateUVBuffer(index:int, stage3DProxy:Stage3DProxy):void
CompactSubGeometry
 Inherited
activateVertexBuffer(index:int, stage3DProxy:Stage3DProxy):void
CompactSubGeometry
 Inherited
activateVertexNormalBuffer(index:int, stage3DProxy:Stage3DProxy):void
CompactSubGeometry
 Inherited
activateVertexTangentBuffer(index:int, stage3DProxy:Stage3DProxy):void
CompactSubGeometry
 Inherited
applyTransformation(transform:Matrix3D):void
[override]
CompactSubGeometry
  
[override] Clones the current object.
SkinnedSubGeometry
 Inherited
CompactSubGeometry
  
dispose():void
[override] Cleans up any resources used by this object.
SkinnedSubGeometry
 Inherited
fromVectors(verts:Vector.<Number>, uvs:Vector.<Number>, normals:Vector.<Number>, tangents:Vector.<Number>):void
CompactSubGeometry
 Inherited
getIndexBuffer(stage3DProxy:Stage3DProxy):IndexBuffer3D
Retrieves the VertexBuffer3D object that contains triangle indices.
SubGeometryBase
 Inherited
scale(scale:Number):void
[override]
CompactSubGeometry
 Inherited
scaleUV(scaleU:Number = 1, scaleV:Number = 1):void
[override]
CompactSubGeometry
  
updateAnimatedData(value:Vector.<Number>):void
SkinnedSubGeometry
 Inherited
updateData(data:Vector.<Number>):void
Updates the vertex data.
CompactSubGeometry
 Inherited
updateIndexData(indices:Vector.<uint>):void
Updates the face indices of the SubGeometry.
SubGeometryBase
Protected Methods
 MethodDefined By
 Inherited
createBuffer(contextIndex:int, context:Context3D):void
CompactSubGeometry
 Inherited
disposeIndexBuffers(buffers:Vector.<IndexBuffer3D>):void
Disposes all buffers in a given vector.
SubGeometryBase
 Inherited
disposeVertexBuffers(buffers:Vector.<VertexBuffer3D>):void
[override]
CompactSubGeometry
 Inherited
SubGeometryBase
 Inherited
invalidateBuffers(invalid:Vector.<Boolean>):void
[override]
CompactSubGeometry
 Inherited
stripBuffer(offset:int, numEntries:int):Vector.<Number>
CompactSubGeometry
 Inherited
updateActiveBuffer(contextIndex:int):void
CompactSubGeometry
 Inherited
updateDummyUVs(target:Vector.<Number>):Vector.<Number>
SubGeometryBase
 Inherited
Updates the tangents for each face.
SubGeometryBase
 Inherited
updateVertexNormals(target:Vector.<Number>):Vector.<Number>
[override]
CompactSubGeometry
 Inherited
updateVertexTangents(target:Vector.<Number>):Vector.<Number>
[override]
CompactSubGeometry
  
uploadData(contextIndex:int):void
[override]
SkinnedSubGeometry
Property Detail
animatedDataproperty
animatedData:Vector.<Number>  [read-only]

The animated vertex positions when set explicitly if the skinning transformations couldn't be performed on GPU.


Implementation
    public function get animatedData():Vector.<Number>
condensedIndexLookUpproperty 
condensedIndexLookUp:Vector.<uint>  [read-only]

If indices have been condensed, this will contain the original index for each condensed index.


Implementation
    public function get condensedIndexLookUp():Vector.<uint>
jointIndexDataproperty 
jointIndexData:Vector.<Number>  [read-only]

The raw joint index data.


Implementation
    arcane function get jointIndexData():Vector.<Number>
jointWeightsDataproperty 
jointWeightsData:Vector.<Number>  [read-only]

The raw joint weights data.


Implementation
    arcane function get jointWeightsData():Vector.<Number>
numCondensedJointsproperty 
numCondensedJoints:uint  [read-only]

The amount of joints used when joint indices have been condensed.


Implementation
    public function get numCondensedJoints():uint
Constructor Detail
SkinnedSubGeometry()Constructor
public function SkinnedSubGeometry(jointsPerVertex:int)

Creates a new SkinnedSubGeometry object.

Parameters
jointsPerVertex:int — The amount of joints that can be assigned per vertex.
Method Detail
activateJointIndexBuffer()method
public function activateJointIndexBuffer(index:int, stage3DProxy:Stage3DProxy):void

Assigns the attribute stream for joint indices

Parameters

index:int — The attribute stream index for the vertex shader
 
stage3DProxy:Stage3DProxy — The Stage3DProxy to assign the stream to

activateJointWeightsBuffer()method 
public function activateJointWeightsBuffer(index:int, stage3DProxy:Stage3DProxy):void

Assigns the attribute stream for joint weights

Parameters

index:int — The attribute stream index for the vertex shader
 
stage3DProxy:Stage3DProxy — The Stage3DProxy to assign the stream to

clone()method 
override public function clone():ISubGeometry

Clones the current object.

Returns
ISubGeometry — An exact duplicate of the current object.
condenseIndexData()method 
arcane function condenseIndexData():void

dispose()method 
override public function dispose():void

Cleans up any resources used by this object.

updateAnimatedData()method 
public function updateAnimatedData(value:Vector.<Number>):void

Parameters

value:Vector.<Number>

updateJointIndexData()method 
arcane function updateJointIndexData(value:Vector.<Number>):void

Parameters

value:Vector.<Number>

updateJointWeightsData()method 
arcane function updateJointWeightsData(value:Vector.<Number>):void

Parameters

value:Vector.<Number>

uploadData()method 
override protected function uploadData(contextIndex:int):void

Parameters

contextIndex:int