/** * A skin instance is responsible for generating the matrix palette that is used to skin vertices * from object space to world space. * * @category Graphics */ export class SkinInstance { /** * Create a new SkinInstance instance. * * @param {import('./skin.js').Skin} skin - The skin that will provide the inverse bind pose * matrices to generate the final matrix palette. */ constructor(skin: import("./skin.js").Skin); /** * An array of nodes representing each bone in this skin instance. * * @type {import('./graph-node.js').GraphNode[]} */ bones: import("./graph-node.js").GraphNode[]; boneTextureSize: any; _dirty: boolean; _rootBone: any; _skinUpdateIndex: number; _updateBeforeCull: boolean; set rootBone(rootBone: any); get rootBone(): any; init(device: any, numBones: any): void; boneTexture: Texture; matrixPalette: Uint8Array | Uint16Array | Uint32Array | Float32Array | Float32Array; destroy(): void; /** * Resolves skin bones to a hierarchy with the rootBone at its root. * * @param {import('../framework/entity.js').Entity} rootBone - A reference to the entity to be used as * the root bone. * @param {import('../framework/entity.js').Entity} entity - Specifies the entity used if the * bone match is not found in the hierarchy - usually the entity the render component is attached to. * @ignore */ resolve(rootBone: import("../framework/entity.js").Entity, entity: import("../framework/entity.js").Entity): void; /** * @param {import('./skin.js').Skin} skin - The skin. */ initSkin(skin: import("./skin.js").Skin): void; skin: import("./skin.js").Skin; matrices: any[]; uploadBones(device: any): void; _updateMatrices(rootNode: any, skinUpdateIndex: any): void; updateMatrices(rootNode: any, skinUpdateIndex: any): void; updateMatrixPalette(rootNode: any, skinUpdateIndex: any): void; } import { Texture } from '../platform/graphics/texture.js';