Skin class base Geometry
A skeletal binding used by skinned meshes for animation.
A Skin pairs an ordered list of joints (scene-graph Nodes acting as
bones) with the inverseBindMatrices that transform a mesh from model
space into each joint's rest-pose local space. The vertex shader
combines these with the joints' current transforms to deform the mesh.
Skin instances are usually populated by an importer rather than
constructed directly. They are attached to the mesh-bearing Node via
Node.skin.
Constructors
- Skin()
Properties
- hashCode → int
-
The hash code for this object.
no setterinherited
-
inverseBindMatrices
→ List<
Matrix4> -
The inverse bind matrix for each joint, transforming a vertex from
model space into the joint's rest-pose local space.
final
-
joints
→ List<
Node?> -
The bone nodes referenced by this skin, in shader-binding order.
final
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
Methods
-
flushJointsUpload(
) → void - Uploads the matrices the last getJointsTexture computed, if they are not uploaded yet. On Vulkan an upload is a synchronous submit that waits for the GPU backlog, so the scene runs it only for frames that draw.
-
getJointsTexture(
) → Texture -
Computes the joint matrices for the current frame into the next ring
slot and returns that slot's square
RGBA32FGPU texture. The upload waits for flushJointsUpload, so a frame that draws nothing (one that re-presents its previous image) never pays for it. -
getPreviousJointsTexture(
) → Texture - The previous frame's joints texture from the ring, or the current texture on the first frame.
-
getTextureWidth(
) → int - The edge length, in texels, of the joints texture produced by getJointsTexture.
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited