MeshSkinnedVertexShader class final
mesh_skinned.vert: the mesh stage with a joint blend in front of it.
The skinned layout is the standard one with joints and weights appended, so
the first sixteen floats are read at the same offsets as mesh.vert reads
them. The weights are renormalised, and a vertex is morphed in the rest pose
before it is skinned.
- Inheritance
-
- Object
- CpuVertexShader
- CpuVertexShaderByIndex
- MeshSkinnedVertexShader
Constructors
- MeshSkinnedVertexShader()
-
Keeps no state, so one const instance serves every draw;
builtinCpuShadersfiles it underMeshSkinnedVertex.const
Properties
- hashCode → int
-
The hash code for this object.
no setterinherited
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- varyingCount → int
-
How many floats of varying this stage writes, so the rasteriser knows how
much to interpolate.
no setteroverride
Methods
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
run(
Float32List a, ShaderBindings bindings, Float32List out) → Vector4 -
Reads
attributes— the vertex, as the engine laid it out — and writes a clip-space position plusvaryings.override -
runAt(
int vertexIndex, int instanceIndex, Float32List a, ShaderBindings bindings, Float32List out) → Vector4 -
The same as CpuVertexShader.run, plus the vertex's and the instance's
own indices.
override
-
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited
Static Methods
-
jointIndex(
double joint) → int -
JointIndexinmesh_skinned.vertandvelocity_skinned.vert:jointtruncated and kept inside the palette, so a JOINTS_0 value past the end reads the last (padding) slot, as the GPU does.