|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objecthmi.graphics.opengl.GLBasicMesh
hmi.graphics.opengl.GLSkinnedMesh
public class GLSkinnedMesh
| Field Summary | |
|---|---|
(package private) float[][] |
directionVectors
|
private float[] |
fapAmplitudes
|
private int[] |
fapCount
|
private float[][] |
fapDirectionVectors
|
private float[][] |
fapDisplacements
|
private int[] |
fapIndex
|
private float[] |
fapWeight
|
private float[][] |
inverseBindMatrices
|
private int[] |
jointCount
|
private int[] |
jointIndex
|
private GLNodeMarker[] |
jointMarkers
|
private float[][] |
jointMatrices
|
private String[] |
jointNames
|
private String[] |
jointSIDs
|
private float[] |
jointWeight
|
private String[] |
morphTargets
|
private int |
normalAttrIndex
|
private float[] |
normalCurrent
|
private float[] |
normalOriginal
|
private static boolean |
notshown
|
private int |
nrOfMorphTargets
|
private float[][] |
originalInverseBindMatrices
|
private int[] |
parentIndex
|
private String[] |
skeletonIds
|
private float[][] |
transformMatrices
|
private boolean |
useFaps
|
private int |
vertexCoordAttrIndex
|
private float[] |
vertexCoordBaseData
|
private float[] |
vertexCoordCurrent
|
private float[][] |
vertexCoordMorphData
|
private float[] |
vertexCoordMorphed
|
| Fields inherited from class hmi.graphics.opengl.GLBasicMesh |
|---|
geometryType, nrOfVertices |
| Constructor Summary | |
|---|---|
GLSkinnedMesh()
Creates a new deformable mesh |
|
| Method Summary | |
|---|---|
SkeletonInterpolator |
adaptSkeletonInterpolator(SkeletonInterpolator skel)
|
int |
addGLVertexAttribute(VertexAttribute va)
Adds a new vertex attribute, and returns its index number. |
void |
addJointMarkers()
|
void |
addJointMarkers(float radius)
|
void |
addJointMarkers(float radius,
int grid)
|
private void |
calculateMatricesAndFaps()
(re)calculates the transform matrices: matrices[i] = jointMatrices[i] * inverseBindMatrices[i] |
void |
deform()
Transforms the mesh attributes. |
private void |
deformCN()
transforms vertex coordinates and vertex normals |
int[] |
getJointCount()
|
int[] |
getJointIndex()
|
String[] |
getJointSIDs()
|
float[] |
getJointWeight()
|
int |
getMorphTargetIndexFor(String morphTarget)
returns the index of the specified morph target, provided it occurs within the array of morph targets for this mesh. |
String[] |
getMorphTargets()
returns the array with morph targets |
void |
glInit(GLRenderContext glc)
initializes the OpenGL ARRAY and ELEMENT_ARRAY buffers. |
void |
glRender(GLRenderContext glc)
renders the mesh, using the vertexBuffer data. |
void |
morph(int[] targets,
float[] weights)
Morph the specified morph targets, with specified weights, tohether with the base mesh. |
void |
morph(int target,
float weight)
Morph the specified morph target, with specified weight, tohether with the base mesh. |
void |
morph(String[] targetNames,
float[] weights)
Morph the specified morph targets, with specified weights, tohether with the base mesh. |
void |
morph(String targetName,
float weight)
Morph the specified morph target, with specified weight, tohether with the base mesh. |
void |
setFapAmplitudes(float[] amplitudes)
Copies the current FAPS amplitudes from the specified amplitude float array. |
void |
setFapDirectionVectors(float[][] fapDirectionVectors)
Sets a reference to an array of Vec3f (i.e. float[3]) vectors, one vector per FAP, definining the direction vector for each FAP. |
void |
setFapVertexWeights(int[] fapCount,
int[] fapIndex,
float[] fapWeight)
Sets the data needed for facial action parameters: indices for FAPS, corresponding weights, and, for every vertex, the number of FAPS to which it is attached. |
void |
setInverseBindMatrices(float[][] invBindMatrices)
Creates copies of the specified inverse bind matrices |
void |
setJointNames(String[] jointNames)
|
void |
setJointSIDs(String[] jointSIDs)
|
void |
setJointVertexWeights(int[] jointCount,
int[] jointIndex,
float[] jointWeight)
Sets the data needed for skinning: indices for joints, corresponding weights, and, for every vertex, the number of joints to which it is attached. |
void |
setMorphTargets(String[] morphTargets)
|
void |
setOriginalInverseBindMatrices(float[][] invBindMatrices)
Creates copies of the specified inverse bind matrices |
void |
setParentIndex(int[] parentIndex)
|
void |
setSkeletonIds(String[] skeletonIds)
|
void |
setUseFaps(boolean useFaps)
Enables or disables the usage of FAPS |
void |
setVertexCoordMorphData(float[][] vertexCoordMorphData)
Sets the array of arrays, containing the coord data for all morph targets |
void |
setVJoints(VJoint[] vjoints)
|
| Methods inherited from class hmi.graphics.opengl.GLBasicMesh |
|---|
bindShaderProg, getId, getVertexData, setGeometryType, setId, setIndexData, setVertexData, toString |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Field Detail |
|---|
private float[] vertexCoordBaseData
private float[][] vertexCoordMorphData
private float[] vertexCoordMorphed
private float[] vertexCoordCurrent
private int vertexCoordAttrIndex
private float[] normalOriginal
private float[] normalCurrent
private int normalAttrIndex
private int[] jointIndex
private float[] jointWeight
private int[] jointCount
private float[][] jointMatrices
private float[][] inverseBindMatrices
private float[][] originalInverseBindMatrices
private float[][] transformMatrices
private String[] jointSIDs
private String[] jointNames
private int[] parentIndex
private String[] skeletonIds
private boolean useFaps
private int[] fapIndex
private float[] fapWeight
private int[] fapCount
float[][] directionVectors
private float[][] fapDirectionVectors
private float[][] fapDisplacements
private float[] fapAmplitudes
private String[] morphTargets
private int nrOfMorphTargets
private GLNodeMarker[] jointMarkers
private static boolean notshown
| Constructor Detail |
|---|
public GLSkinnedMesh()
| Method Detail |
|---|
public void setParentIndex(int[] parentIndex)
public SkeletonInterpolator adaptSkeletonInterpolator(SkeletonInterpolator skel)
public void setFapDirectionVectors(float[][] fapDirectionVectors)
public void setUseFaps(boolean useFaps)
public void setFapAmplitudes(float[] amplitudes)
public void setMorphTargets(String[] morphTargets)
public String[] getMorphTargets()
public int getMorphTargetIndexFor(String morphTarget)
public void setVertexCoordMorphData(float[][] vertexCoordMorphData)
public void setJointSIDs(String[] jointSIDs)
public void setJointNames(String[] jointNames)
public void setSkeletonIds(String[] skeletonIds)
public void setVJoints(VJoint[] vjoints)
public int addGLVertexAttribute(VertexAttribute va)
addGLVertexAttribute in class GLBasicMesh
public void setJointVertexWeights(int[] jointCount,
int[] jointIndex,
float[] jointWeight)
public void setFapVertexWeights(int[] fapCount,
int[] fapIndex,
float[] fapWeight)
public void setInverseBindMatrices(float[][] invBindMatrices)
public void setOriginalInverseBindMatrices(float[][] invBindMatrices)
private void calculateMatricesAndFaps()
public void addJointMarkers()
public void addJointMarkers(float radius)
public void addJointMarkers(float radius,
int grid)
public void glInit(GLRenderContext glc)
glInit in interface GLRenderObjectglInit in class GLBasicMeshpublic void glRender(GLRenderContext glc)
glRender in interface GLRenderObjectglRender in class GLBasicMesh
public void morph(String targetName,
float weight)
public void morph(int target,
float weight)
public void morph(String[] targetNames,
float[] weights)
public void morph(int[] targets,
float[] weights)
public void deform()
private void deformCN()
public String[] getJointSIDs()
public int[] getJointIndex()
public float[] getJointWeight()
public int[] getJointCount()
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||