ReadonlyvertexReadonlyindexReadonlyindexOptional ReadonlycolorOptional per-vertex color buffer (linear RGBA vec4 per vertex), bound at
vertex slot 1 by passes that compile the HAS_VERTEX_COLOR variant. Present
only when colors was supplied to SkinnedMesh.fromData. The skinned
layout uses @location 0–7, so the color attribute lives at @location(8).
Optional Readonlyuv1Optional second UV set buffer (glTF TEXCOORD_1, vec2 per vertex), bound at
vertex slot 2 by passes that compile the HAS_UV1 variant. The skinned layout
uses @location 0–7 and color is @location(8), so uv1 lives at @location(9).
Present only when uv1 was supplied to SkinnedMesh.fromData.
True when this mesh carries a per-vertex colorBuffer.
True when this mesh carries a second UV set (uv1Buffer).
StaticfromCreates a skinned mesh from interleaved vertex data and 32-bit indices.
The WebGPU device.
Interleaved vertex data laid out per SKINNED_VERTEX_ATTRIBUTES (28 floats per vertex; joint indices reinterpreted as u32).
Triangle list indices.
Optionalcolors: Float32Array<ArrayBufferLike>Optional per-vertex linear RGBA colors (4 floats per vertex), uploaded to colorBuffer.
Optionaluv1: Float32Array<ArrayBufferLike>Optional second UV set (glTF TEXCOORD_1; 2 floats per vertex), uploaded to uv1Buffer.
A new skinned mesh owning the uploaded GPU buffers.
Destroys the underlying GPU vertex and index buffers (and color/uv1 buffers, if any).
GPU mesh with skinning attributes (joint indices and weights) per vertex.
Vertex layout matches
SKINNED_VERTEX_STRIDE/SKINNED_VERTEX_ATTRIBUTES. Owns its vertex and index GPU buffers; calldestroy()to release them.