com.threerings.opengl.geometry.config
Class DeformerConfig

java.lang.Object
  extended by com.threerings.util.DeepObject
      extended by com.threerings.opengl.geometry.config.DeformerConfig
All Implemented Interfaces:
Exportable, Copyable, Cloneable
Direct Known Subclasses:
DeformerConfig.Skin

@EditorTypes(value=DeformerConfig.Skin.class)
public abstract class DeformerConfig
extends DeepObject
implements Exportable

Deformer configuration.


Nested Class Summary
static class DeformerConfig.Skin
          Performs software skinning.
 
Constructor Summary
DeformerConfig()
           
 
Method Summary
abstract  Geometry createGeometry(GlContext ctx, Scope scope, GeometryConfig.Stored config, PassDescriptor[] passes)
          Creates a deformed geometry object.
protected static void skinVertices(float[] source, float[] dest, Matrix4f[] boneMatrices, int[] boneIndices, float[] boneWeights, int vidx, int dinc)
          Skins a set of vertices.
protected static void skinVertices(float[] source, float[] dest, Matrix4f[] boneMatrices, int[] boneIndices, float[] boneWeights, int nidx, int vidx, int dinc)
          Skins a set of vertices and normals.
protected static void skinVertices(float[] source, float[] dest, Matrix4f[] boneMatrices, int[] boneIndices, float[] boneWeights, int tidx, int nidx, int vidx, int dinc)
          Skins a set of vertices, normals, and tangents.
 
Methods inherited from class com.threerings.util.DeepObject
clone, copy, copy, equals, hashCode, toString
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

DeformerConfig

public DeformerConfig()
Method Detail

createGeometry

public abstract Geometry createGeometry(GlContext ctx,
                                        Scope scope,
                                        GeometryConfig.Stored config,
                                        PassDescriptor[] passes)
Creates a deformed geometry object.


skinVertices

protected static void skinVertices(float[] source,
                                   float[] dest,
                                   Matrix4f[] boneMatrices,
                                   int[] boneIndices,
                                   float[] boneWeights,
                                   int tidx,
                                   int nidx,
                                   int vidx,
                                   int dinc)
Skins a set of vertices, normals, and tangents.

Parameters:
tidx - the index of the first tangent in the destination array.
nidx - the index of the first normal in the destination array.
vidx - the index of the first vertex in the destination array.
dinc - the stride between adjacent vertices in the destination array.

skinVertices

protected static void skinVertices(float[] source,
                                   float[] dest,
                                   Matrix4f[] boneMatrices,
                                   int[] boneIndices,
                                   float[] boneWeights,
                                   int nidx,
                                   int vidx,
                                   int dinc)
Skins a set of vertices and normals.

Parameters:
nidx - the index of the first normal in the destination array.
vidx - the index of the first vertex in the destination array.
dinc - the stride between adjacent vertices in the destination array.

skinVertices

protected static void skinVertices(float[] source,
                                   float[] dest,
                                   Matrix4f[] boneMatrices,
                                   int[] boneIndices,
                                   float[] boneWeights,
                                   int vidx,
                                   int dinc)
Skins a set of vertices.

Parameters:
vidx - the index of the first vertex in the destination array.
dinc - the stride between adjacent vertices in the destination array.