sandai-react
Version:
React components and utilities for the Sandai 3D AI Characters.
38 lines • 1.64 kB
TypeScript
import { VRM, VRMHumanBoneName, VRMPose } from "@davidcks/r3f-vrm";
import { HandLandmarkerResult } from "@mediapipe/tasks-vision";
import { Quaternion, Vector3 } from "three";
import { FingerParts, Fingers } from "./common/utils";
export declare class PosePositionConverter {
private _restPose;
private _poseRefGenerator;
private _kalidoPPC;
constructor(vrm: VRM);
private _swapHandsSideAndSlerp;
run(pose: VRMPose, handLandmarks?: HandLandmarkerResult): VRMPose;
private _getLowerArmGlobalRotations;
private _invertInRange;
private _applyRoll;
private _getBodyRotations;
private _normalizeHand;
private _getThumbRotation;
private _getFingerRotation;
private _getHandRotations;
rotateFingersAroundQuat(root: Vector3, target: VRMPose, quat: Quaternion, side: "left" | "right", only?: Fingers, onlyPart?: FingerParts): VRMPose;
rotateFingersAround(root: Vector3, target: VRMPose, eulerAngles: {
x: number;
y: number;
z: number;
}, side: "left" | "right", axis?: Vector3): VRMPose;
rotateHandAround(root: Vector3, target: VRMPose, eulerAngles: {
x: number;
y: number;
z: number;
}, side: "left" | "right"): VRMPose;
getVec3RotationForRef(origin: Vector3, target: Vector3, ref: Vector3): Quaternion & {
global: Quaternion;
};
getVec3Rotation(origin: Vector3, target: Vector3, originBoneName: VRMHumanBoneName, targetBoneName: VRMHumanBoneName, parentQuat?: Quaternion, refRotationQuat?: Quaternion): Quaternion & {
global: Quaternion;
};
}
//# sourceMappingURL=PosePositionConverter.d.ts.map