implement first person hand

(cherry picked from commit bfe5a2eaca2858a7ccde1df847e2148dd79f4045)
This commit is contained in:
LabyStudio
2022-05-02 02:45:24 +02:00
parent 230ea8d11e
commit 800134b26b
18 changed files with 345 additions and 114 deletions
@@ -262,4 +262,31 @@ export default class ModelRenderer {
this.bone.updateMatrix();
}
clone() {
let modelRenderer = new ModelRenderer(this.name, this.textureWidth, this.textureHeight);
modelRenderer.bone = this.bone.clone();
modelRenderer.textureOffsetX = this.textureOffsetX;
modelRenderer.textureOffsetY = this.textureOffsetY;
modelRenderer.cubes = this.cubes;
modelRenderer.copyTransformOf(this);
for (let i = 0; i < this.children.length; i++) {
let child = this.children[i];
modelRenderer.addChild(child.clone());
}
return modelRenderer;
}
copyTransformOf(modelRenderer) {
this.rotationPointX = modelRenderer.rotationPointX;
this.rotationPointY = modelRenderer.rotationPointY;
this.rotationPointZ = modelRenderer.rotationPointZ;
this.scaleX = modelRenderer.scaleX;
this.scaleY = modelRenderer.scaleY;
this.scaleZ = modelRenderer.scaleZ;
this.rotateAngleX = modelRenderer.rotateAngleX;
this.rotateAngleY = modelRenderer.rotateAngleY;
this.rotateAngleZ = modelRenderer.rotateAngleZ;
}
}