@aura3d/animation 1.0.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +19 -0
- package/dist/AnimationAction.d.ts +40 -0
- package/dist/AnimationAction.d.ts.map +1 -0
- package/dist/AnimationAction.js +143 -0
- package/dist/AnimationAction.js.map +1 -0
- package/dist/AnimationClip.d.ts +24 -0
- package/dist/AnimationClip.d.ts.map +1 -0
- package/dist/AnimationClip.js +45 -0
- package/dist/AnimationClip.js.map +1 -0
- package/dist/AnimationClipEvents.d.ts +57 -0
- package/dist/AnimationClipEvents.d.ts.map +1 -0
- package/dist/AnimationClipEvents.js +171 -0
- package/dist/AnimationClipEvents.js.map +1 -0
- package/dist/AnimationClipRegistry.d.ts +76 -0
- package/dist/AnimationClipRegistry.d.ts.map +1 -0
- package/dist/AnimationClipRegistry.js +130 -0
- package/dist/AnimationClipRegistry.js.map +1 -0
- package/dist/AnimationController.d.ts +168 -0
- package/dist/AnimationController.d.ts.map +1 -0
- package/dist/AnimationController.js +619 -0
- package/dist/AnimationController.js.map +1 -0
- package/dist/AnimationEvents.d.ts +10 -0
- package/dist/AnimationEvents.d.ts.map +1 -0
- package/dist/AnimationEvents.js +26 -0
- package/dist/AnimationEvents.js.map +1 -0
- package/dist/AnimationLayer.d.ts +27 -0
- package/dist/AnimationLayer.d.ts.map +1 -0
- package/dist/AnimationLayer.js +53 -0
- package/dist/AnimationLayer.js.map +1 -0
- package/dist/AnimationMixer.d.ts +54 -0
- package/dist/AnimationMixer.d.ts.map +1 -0
- package/dist/AnimationMixer.js +319 -0
- package/dist/AnimationMixer.js.map +1 -0
- package/dist/AnimationStateGraph.d.ts +2 -0
- package/dist/AnimationStateGraph.d.ts.map +1 -0
- package/dist/AnimationStateGraph.js +2 -0
- package/dist/AnimationStateGraph.js.map +1 -0
- package/dist/AnimationStateMachine.d.ts +59 -0
- package/dist/AnimationStateMachine.d.ts.map +1 -0
- package/dist/AnimationStateMachine.js +154 -0
- package/dist/AnimationStateMachine.js.map +1 -0
- package/dist/AnimationTrack.d.ts +23 -0
- package/dist/AnimationTrack.d.ts.map +1 -0
- package/dist/AnimationTrack.js +124 -0
- package/dist/AnimationTrack.js.map +1 -0
- package/dist/BlendTree.d.ts +23 -0
- package/dist/BlendTree.d.ts.map +1 -0
- package/dist/BlendTree.js +68 -0
- package/dist/BlendTree.js.map +1 -0
- package/dist/Bone.d.ts +20 -0
- package/dist/Bone.d.ts.map +1 -0
- package/dist/Bone.js +24 -0
- package/dist/Bone.js.map +1 -0
- package/dist/CrowdAnimation.d.ts +13 -0
- package/dist/CrowdAnimation.d.ts.map +1 -0
- package/dist/CrowdAnimation.js +14 -0
- package/dist/CrowdAnimation.js.map +1 -0
- package/dist/ECSAnimationBridge.d.ts +9 -0
- package/dist/ECSAnimationBridge.d.ts.map +1 -0
- package/dist/ECSAnimationBridge.js +24 -0
- package/dist/ECSAnimationBridge.js.map +1 -0
- package/dist/HumanoidRetargeting.d.ts +76 -0
- package/dist/HumanoidRetargeting.d.ts.map +1 -0
- package/dist/HumanoidRetargeting.js +331 -0
- package/dist/HumanoidRetargeting.js.map +1 -0
- package/dist/IK.d.ts +24 -0
- package/dist/IK.d.ts.map +1 -0
- package/dist/IK.js +76 -0
- package/dist/IK.js.map +1 -0
- package/dist/Keyframe.d.ts +50 -0
- package/dist/Keyframe.d.ts.map +1 -0
- package/dist/Keyframe.js +118 -0
- package/dist/Keyframe.js.map +1 -0
- package/dist/LocomotionController.d.ts +47 -0
- package/dist/LocomotionController.d.ts.map +1 -0
- package/dist/LocomotionController.js +106 -0
- package/dist/LocomotionController.js.map +1 -0
- package/dist/MotionMatchingFixtures.d.ts +58 -0
- package/dist/MotionMatchingFixtures.d.ts.map +1 -0
- package/dist/MotionMatchingFixtures.js +175 -0
- package/dist/MotionMatchingFixtures.js.map +1 -0
- package/dist/MotionQuality.d.ts +36 -0
- package/dist/MotionQuality.d.ts.map +1 -0
- package/dist/MotionQuality.js +117 -0
- package/dist/MotionQuality.js.map +1 -0
- package/dist/Retargeting.d.ts +12 -0
- package/dist/Retargeting.d.ts.map +1 -0
- package/dist/Retargeting.js +19 -0
- package/dist/Retargeting.js.map +1 -0
- package/dist/RootMotion.d.ts +21 -0
- package/dist/RootMotion.d.ts.map +1 -0
- package/dist/RootMotion.js +84 -0
- package/dist/RootMotion.js.map +1 -0
- package/dist/SceneAnimationBridge.d.ts +18 -0
- package/dist/SceneAnimationBridge.d.ts.map +1 -0
- package/dist/SceneAnimationBridge.js +69 -0
- package/dist/SceneAnimationBridge.js.map +1 -0
- package/dist/SecondaryAnimationFixtures.d.ts +55 -0
- package/dist/SecondaryAnimationFixtures.d.ts.map +1 -0
- package/dist/SecondaryAnimationFixtures.js +147 -0
- package/dist/SecondaryAnimationFixtures.js.map +1 -0
- package/dist/Skeleton.d.ts +9 -0
- package/dist/Skeleton.d.ts.map +1 -0
- package/dist/Skeleton.js +31 -0
- package/dist/Skeleton.js.map +1 -0
- package/dist/Skinning.d.ts +7 -0
- package/dist/Skinning.d.ts.map +1 -0
- package/dist/Skinning.js +12 -0
- package/dist/Skinning.js.map +1 -0
- package/dist/browser-index.d.ts +39 -0
- package/dist/browser-index.d.ts.map +1 -0
- package/dist/browser-index.js +34 -0
- package/dist/browser-index.js.map +1 -0
- package/dist/index.d.ts +40 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +35 -0
- package/dist/index.js.map +1 -0
- package/dist/threejs-compatibility/AnimationAction.d.ts +16 -0
- package/dist/threejs-compatibility/AnimationAction.d.ts.map +1 -0
- package/dist/threejs-compatibility/AnimationAction.js +25 -0
- package/dist/threejs-compatibility/AnimationAction.js.map +1 -0
- package/dist/threejs-compatibility/AnimationClip.d.ts +14 -0
- package/dist/threejs-compatibility/AnimationClip.d.ts.map +1 -0
- package/dist/threejs-compatibility/AnimationClip.js +11 -0
- package/dist/threejs-compatibility/AnimationClip.js.map +1 -0
- package/dist/threejs-compatibility/AnimationDiagnostics.d.ts +44 -0
- package/dist/threejs-compatibility/AnimationDiagnostics.d.ts.map +1 -0
- package/dist/threejs-compatibility/AnimationDiagnostics.js +29 -0
- package/dist/threejs-compatibility/AnimationDiagnostics.js.map +1 -0
- package/dist/threejs-compatibility/AnimationMixer.d.ts +9 -0
- package/dist/threejs-compatibility/AnimationMixer.d.ts.map +1 -0
- package/dist/threejs-compatibility/AnimationMixer.js +24 -0
- package/dist/threejs-compatibility/AnimationMixer.js.map +1 -0
- package/dist/threejs-compatibility/MorphTargetMixer.d.ts +10 -0
- package/dist/threejs-compatibility/MorphTargetMixer.d.ts.map +1 -0
- package/dist/threejs-compatibility/MorphTargetMixer.js +10 -0
- package/dist/threejs-compatibility/MorphTargetMixer.js.map +1 -0
- package/dist/threejs-compatibility/Skeleton.d.ts +10 -0
- package/dist/threejs-compatibility/Skeleton.d.ts.map +1 -0
- package/dist/threejs-compatibility/Skeleton.js +8 -0
- package/dist/threejs-compatibility/Skeleton.js.map +1 -0
- package/dist/threejs-compatibility/SkinnedMesh.d.ts +11 -0
- package/dist/threejs-compatibility/SkinnedMesh.d.ts.map +1 -0
- package/dist/threejs-compatibility/SkinnedMesh.js +16 -0
- package/dist/threejs-compatibility/SkinnedMesh.js.map +1 -0
- package/dist/threejs-compatibility/index.d.ts +12 -0
- package/dist/threejs-compatibility/index.d.ts.map +1 -0
- package/dist/threejs-compatibility/index.js +8 -0
- package/dist/threejs-compatibility/index.js.map +1 -0
- package/package.json +17 -0
- package/src/AnimationAction.ts +166 -0
- package/src/AnimationClip.ts +63 -0
- package/src/AnimationClipEvents.ts +320 -0
- package/src/AnimationClipRegistry.ts +280 -0
- package/src/AnimationController.ts +967 -0
- package/src/AnimationEvents.ts +34 -0
- package/src/AnimationLayer.ts +73 -0
- package/src/AnimationMixer.ts +366 -0
- package/src/AnimationStateGraph.ts +8 -0
- package/src/AnimationStateMachine.ts +217 -0
- package/src/AnimationTrack.ts +176 -0
- package/src/BlendTree.ts +89 -0
- package/src/Bone.ts +35 -0
- package/src/CrowdAnimation.ts +25 -0
- package/src/ECSAnimationBridge.ts +30 -0
- package/src/HumanoidRetargeting.ts +476 -0
- package/src/IK.ts +107 -0
- package/src/Keyframe.ts +159 -0
- package/src/LocomotionController.ts +149 -0
- package/src/MotionMatchingFixtures.ts +254 -0
- package/src/MotionQuality.ts +156 -0
- package/src/Retargeting.ts +29 -0
- package/src/RootMotion.ts +124 -0
- package/src/SceneAnimationBridge.ts +80 -0
- package/src/SecondaryAnimationFixtures.ts +212 -0
- package/src/Skeleton.ts +34 -0
- package/src/Skinning.ts +18 -0
- package/src/browser-index.ts +55 -0
- package/src/index.ts +56 -0
- package/src/threejs-compatibility/AnimationAction.ts +27 -0
- package/src/threejs-compatibility/AnimationClip.ts +16 -0
- package/src/threejs-compatibility/AnimationDiagnostics.ts +42 -0
- package/src/threejs-compatibility/AnimationMixer.ts +24 -0
- package/src/threejs-compatibility/MorphTargetMixer.ts +16 -0
- package/src/threejs-compatibility/Skeleton.ts +9 -0
- package/src/threejs-compatibility/SkinnedMesh.ts +12 -0
- package/src/threejs-compatibility/index.ts +11 -0
package/dist/Skeleton.js
ADDED
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { Bone } from "./Bone.js";
|
|
2
|
+
import { multiplyMat4 } from "./Keyframe.js";
|
|
3
|
+
export class Skeleton {
|
|
4
|
+
bones;
|
|
5
|
+
constructor(bones) {
|
|
6
|
+
if (bones.length === 0) {
|
|
7
|
+
throw new Error("Skeleton requires at least one bone.");
|
|
8
|
+
}
|
|
9
|
+
this.bones = bones.map((bone) => bone instanceof Bone ? bone : new Bone(bone));
|
|
10
|
+
for (let index = 0; index < this.bones.length; index += 1) {
|
|
11
|
+
const parent = this.bones[index].parentIndex;
|
|
12
|
+
if (parent >= index || parent < -1) {
|
|
13
|
+
throw new Error(`Bone ${this.bones[index].name} has invalid parent index ${parent}.`);
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
worldMatrices() {
|
|
18
|
+
const matrices = [];
|
|
19
|
+
for (let index = 0; index < this.bones.length; index += 1) {
|
|
20
|
+
const bone = this.bones[index];
|
|
21
|
+
const local = bone.localMatrix();
|
|
22
|
+
matrices[index] = bone.parentIndex >= 0 ? multiplyMat4(matrices[bone.parentIndex], local) : local;
|
|
23
|
+
}
|
|
24
|
+
return matrices;
|
|
25
|
+
}
|
|
26
|
+
matrixPalette() {
|
|
27
|
+
const worlds = this.worldMatrices();
|
|
28
|
+
return this.bones.map((bone, index) => multiplyMat4(worlds[index], bone.inverseBindMatrix));
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=Skeleton.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Skeleton.js","sourceRoot":"","sources":["../../../../packages/animation/src/Skeleton.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAuB,MAAM,WAAW,CAAC;AACtD,OAAO,EAAE,YAAY,EAAa,MAAM,eAAe,CAAC;AAExD,MAAM,OAAO,QAAQ;IACV,KAAK,CAAkB;IAEhC,YAAY,KAAyC;QACnD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvB,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;QAC1D,CAAC;QACD,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,YAAY,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAC/E,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;YAC1D,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAE,CAAC,WAAW,CAAC;YAC9C,IAAI,MAAM,IAAI,KAAK,IAAI,MAAM,GAAG,CAAC,CAAC,EAAE,CAAC;gBACnC,MAAM,IAAI,KAAK,CAAC,QAAQ,IAAI,CAAC,KAAK,CAAC,KAAK,CAAE,CAAC,IAAI,6BAA6B,MAAM,GAAG,CAAC,CAAC;YACzF,CAAC;QACH,CAAC;IACH,CAAC;IAED,aAAa;QACX,MAAM,QAAQ,GAAW,EAAE,CAAC;QAC5B,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;YAC1D,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAE,CAAC;YAChC,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;YACjC,QAAQ,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,WAAW,IAAI,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAE,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;QACrG,CAAC;QACD,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,aAAa;QACX,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;QACpC,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC,KAAK,CAAE,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC;IAC/F,CAAC;CACF"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { Skeleton } from "./Skeleton.js";
|
|
2
|
+
export type SkinningPalette = {
|
|
3
|
+
readonly jointCount: number;
|
|
4
|
+
readonly matrices: Float32Array;
|
|
5
|
+
};
|
|
6
|
+
export declare function buildSkinningPalette(skeleton: Skeleton, maxJoints?: number): SkinningPalette;
|
|
7
|
+
//# sourceMappingURL=Skinning.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Skinning.d.ts","sourceRoot":"","sources":["../../../../packages/animation/src/Skinning.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAE9C,MAAM,MAAM,eAAe,GAAG;IAC5B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,QAAQ,EAAE,YAAY,CAAC;CACjC,CAAC;AAEF,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,QAAQ,EAAE,SAAS,SAAM,GAAG,eAAe,CAUzF"}
|
package/dist/Skinning.js
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export function buildSkinningPalette(skeleton, maxJoints = 256) {
|
|
2
|
+
const palette = skeleton.matrixPalette();
|
|
3
|
+
if (palette.length > maxJoints) {
|
|
4
|
+
throw new Error(`Skeleton has ${palette.length} joints, exceeding max ${maxJoints}.`);
|
|
5
|
+
}
|
|
6
|
+
const matrices = new Float32Array(palette.length * 16);
|
|
7
|
+
for (let index = 0; index < palette.length; index += 1) {
|
|
8
|
+
matrices.set(palette[index], index * 16);
|
|
9
|
+
}
|
|
10
|
+
return { jointCount: palette.length, matrices };
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=Skinning.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Skinning.js","sourceRoot":"","sources":["../../../../packages/animation/src/Skinning.ts"],"names":[],"mappings":"AAOA,MAAM,UAAU,oBAAoB,CAAC,QAAkB,EAAE,SAAS,GAAG,GAAG;IACtE,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,EAAE,CAAC;IACzC,IAAI,OAAO,CAAC,MAAM,GAAG,SAAS,EAAE,CAAC;QAC/B,MAAM,IAAI,KAAK,CAAC,gBAAgB,OAAO,CAAC,MAAM,0BAA0B,SAAS,GAAG,CAAC,CAAC;IACxF,CAAC;IACD,MAAM,QAAQ,GAAG,IAAI,YAAY,CAAC,OAAO,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;IACvD,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,OAAO,CAAC,MAAM,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QACvD,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAE,EAAE,KAAK,GAAG,EAAE,CAAC,CAAC;IAC5C,CAAC;IACD,OAAO,EAAE,UAAU,EAAE,OAAO,CAAC,MAAM,EAAE,QAAQ,EAAE,CAAC;AAClD,CAAC"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
export * from "./Keyframe.js";
|
|
2
|
+
export * from "./AnimationTrack.js";
|
|
3
|
+
export * from "./AnimationClip.js";
|
|
4
|
+
export * from "./AnimationEvents.js";
|
|
5
|
+
export * from "./AnimationAction.js";
|
|
6
|
+
export * from "./AnimationMixer.js";
|
|
7
|
+
export * from "./AnimationLayer.js";
|
|
8
|
+
export * from "./Bone.js";
|
|
9
|
+
export * from "./Skeleton.js";
|
|
10
|
+
export * from "./Skinning.js";
|
|
11
|
+
export * from "./BlendTree.js";
|
|
12
|
+
export * from "./AnimationStateMachine.js";
|
|
13
|
+
export * from "./RootMotion.js";
|
|
14
|
+
export * from "./MotionQuality.js";
|
|
15
|
+
export * from "./LocomotionController.js";
|
|
16
|
+
export * from "./SceneAnimationBridge.js";
|
|
17
|
+
export * from "./ECSAnimationBridge.js";
|
|
18
|
+
export * from "./IK.js";
|
|
19
|
+
export * from "./MotionMatchingFixtures.js";
|
|
20
|
+
export * from "./SecondaryAnimationFixtures.js";
|
|
21
|
+
export * from "./CrowdAnimation.js";
|
|
22
|
+
export * from "./Retargeting.js";
|
|
23
|
+
export * from "./AnimationClipEvents.js";
|
|
24
|
+
export { AnimationClipRegistry } from "./AnimationClipRegistry.js";
|
|
25
|
+
export type { AnimationClipDefinition, AnimationClipId, AnimationClipManifest, AnimationClipRegistryDiagnostic, AnimationClipRegistryDiagnosticSeverity, AnimationClipRegistryOptions, AnimationClipSampleContext, AnimationClipSampler, AnimationKeyframe, AnimationTrack as AnimationClipTrack, AnimationTrackTarget, RegisteredAnimationClip } from "./AnimationClipRegistry.js";
|
|
26
|
+
export * from "./AnimationController.js";
|
|
27
|
+
export * from "./HumanoidRetargeting.js";
|
|
28
|
+
export { AnimationClipThreeCompat } from "./threejs-compatibility/AnimationClip.js";
|
|
29
|
+
export type { ThreeCompatKeyframeTrack, ThreeCompatLoopMode } from "./threejs-compatibility/AnimationClip.js";
|
|
30
|
+
export { AnimationActionThreeCompat } from "./threejs-compatibility/AnimationAction.js";
|
|
31
|
+
export { AnimationMixerThreeCompat } from "./threejs-compatibility/AnimationMixer.js";
|
|
32
|
+
export { SkeletonThreeCompat } from "./threejs-compatibility/Skeleton.js";
|
|
33
|
+
export type { ThreeCompatBone } from "./threejs-compatibility/Skeleton.js";
|
|
34
|
+
export { SkinnedMeshThreeCompat } from "./threejs-compatibility/SkinnedMesh.js";
|
|
35
|
+
export { MorphTargetMixerThreeCompat } from "./threejs-compatibility/MorphTargetMixer.js";
|
|
36
|
+
export type { ThreeCompatMorphTargetWeight } from "./threejs-compatibility/MorphTargetMixer.js";
|
|
37
|
+
export { createThreeCompatAnimationDiagnostics, inspectThreeCompatAnimatedAssets, THREE_COMPAT_ANIMATED_GLTF_ASSETS } from "./threejs-compatibility/AnimationDiagnostics.js";
|
|
38
|
+
export type { ThreeCompatAnimatedAssetDiagnostic } from "./threejs-compatibility/AnimationDiagnostics.js";
|
|
39
|
+
//# sourceMappingURL=browser-index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"browser-index.d.ts","sourceRoot":"","sources":["../../../../packages/animation/src/browser-index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,WAAW,CAAC;AAC1B,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,4BAA4B,CAAC;AAC3C,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,yBAAyB,CAAC;AACxC,cAAc,SAAS,CAAC;AACxB,cAAc,6BAA6B,CAAC;AAC5C,cAAc,iCAAiC,CAAC;AAChD,cAAc,qBAAqB,CAAC;AACpC,cAAc,kBAAkB,CAAC;AACjC,cAAc,0BAA0B,CAAC;AACzC,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,YAAY,EACV,uBAAuB,EACvB,eAAe,EACf,qBAAqB,EACrB,+BAA+B,EAC/B,uCAAuC,EACvC,4BAA4B,EAC5B,0BAA0B,EAC1B,oBAAoB,EACpB,iBAAiB,EACjB,cAAc,IAAI,kBAAkB,EACpC,oBAAoB,EACpB,uBAAuB,EACxB,MAAM,4BAA4B,CAAC;AACpC,cAAc,0BAA0B,CAAC;AACzC,cAAc,0BAA0B,CAAC;AACzC,OAAO,EAAE,wBAAwB,EAAE,MAAM,0CAA0C,CAAC;AACpF,YAAY,EAAE,wBAAwB,EAAE,mBAAmB,EAAE,MAAM,0CAA0C,CAAC;AAC9G,OAAO,EAAE,0BAA0B,EAAE,MAAM,4CAA4C,CAAC;AACxF,OAAO,EAAE,yBAAyB,EAAE,MAAM,2CAA2C,CAAC;AACtF,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAC1E,YAAY,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAC;AAC3E,OAAO,EAAE,sBAAsB,EAAE,MAAM,wCAAwC,CAAC;AAChF,OAAO,EAAE,2BAA2B,EAAE,MAAM,6CAA6C,CAAC;AAC1F,YAAY,EAAE,4BAA4B,EAAE,MAAM,6CAA6C,CAAC;AAChG,OAAO,EACL,qCAAqC,EACrC,gCAAgC,EAChC,iCAAiC,EAClC,MAAM,iDAAiD,CAAC;AACzD,YAAY,EAAE,kCAAkC,EAAE,MAAM,iDAAiD,CAAC"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
export * from "./Keyframe.js";
|
|
2
|
+
export * from "./AnimationTrack.js";
|
|
3
|
+
export * from "./AnimationClip.js";
|
|
4
|
+
export * from "./AnimationEvents.js";
|
|
5
|
+
export * from "./AnimationAction.js";
|
|
6
|
+
export * from "./AnimationMixer.js";
|
|
7
|
+
export * from "./AnimationLayer.js";
|
|
8
|
+
export * from "./Bone.js";
|
|
9
|
+
export * from "./Skeleton.js";
|
|
10
|
+
export * from "./Skinning.js";
|
|
11
|
+
export * from "./BlendTree.js";
|
|
12
|
+
export * from "./AnimationStateMachine.js";
|
|
13
|
+
export * from "./RootMotion.js";
|
|
14
|
+
export * from "./MotionQuality.js";
|
|
15
|
+
export * from "./LocomotionController.js";
|
|
16
|
+
export * from "./SceneAnimationBridge.js";
|
|
17
|
+
export * from "./ECSAnimationBridge.js";
|
|
18
|
+
export * from "./IK.js";
|
|
19
|
+
export * from "./MotionMatchingFixtures.js";
|
|
20
|
+
export * from "./SecondaryAnimationFixtures.js";
|
|
21
|
+
export * from "./CrowdAnimation.js";
|
|
22
|
+
export * from "./Retargeting.js";
|
|
23
|
+
export * from "./AnimationClipEvents.js";
|
|
24
|
+
export { AnimationClipRegistry } from "./AnimationClipRegistry.js";
|
|
25
|
+
export * from "./AnimationController.js";
|
|
26
|
+
export * from "./HumanoidRetargeting.js";
|
|
27
|
+
export { AnimationClipThreeCompat } from "./threejs-compatibility/AnimationClip.js";
|
|
28
|
+
export { AnimationActionThreeCompat } from "./threejs-compatibility/AnimationAction.js";
|
|
29
|
+
export { AnimationMixerThreeCompat } from "./threejs-compatibility/AnimationMixer.js";
|
|
30
|
+
export { SkeletonThreeCompat } from "./threejs-compatibility/Skeleton.js";
|
|
31
|
+
export { SkinnedMeshThreeCompat } from "./threejs-compatibility/SkinnedMesh.js";
|
|
32
|
+
export { MorphTargetMixerThreeCompat } from "./threejs-compatibility/MorphTargetMixer.js";
|
|
33
|
+
export { createThreeCompatAnimationDiagnostics, inspectThreeCompatAnimatedAssets, THREE_COMPAT_ANIMATED_GLTF_ASSETS } from "./threejs-compatibility/AnimationDiagnostics.js";
|
|
34
|
+
//# sourceMappingURL=browser-index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"browser-index.js","sourceRoot":"","sources":["../../../../packages/animation/src/browser-index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,WAAW,CAAC;AAC1B,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,4BAA4B,CAAC;AAC3C,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,yBAAyB,CAAC;AACxC,cAAc,SAAS,CAAC;AACxB,cAAc,6BAA6B,CAAC;AAC5C,cAAc,iCAAiC,CAAC;AAChD,cAAc,qBAAqB,CAAC;AACpC,cAAc,kBAAkB,CAAC;AACjC,cAAc,0BAA0B,CAAC;AACzC,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAenE,cAAc,0BAA0B,CAAC;AACzC,cAAc,0BAA0B,CAAC;AACzC,OAAO,EAAE,wBAAwB,EAAE,MAAM,0CAA0C,CAAC;AAEpF,OAAO,EAAE,0BAA0B,EAAE,MAAM,4CAA4C,CAAC;AACxF,OAAO,EAAE,yBAAyB,EAAE,MAAM,2CAA2C,CAAC;AACtF,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAE1E,OAAO,EAAE,sBAAsB,EAAE,MAAM,wCAAwC,CAAC;AAChF,OAAO,EAAE,2BAA2B,EAAE,MAAM,6CAA6C,CAAC;AAE1F,OAAO,EACL,qCAAqC,EACrC,gCAAgC,EAChC,iCAAiC,EAClC,MAAM,iDAAiD,CAAC"}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
export * from "./Keyframe.js";
|
|
2
|
+
export * from "./AnimationTrack.js";
|
|
3
|
+
export * from "./AnimationClip.js";
|
|
4
|
+
export * from "./AnimationEvents.js";
|
|
5
|
+
export * from "./AnimationAction.js";
|
|
6
|
+
export * from "./AnimationMixer.js";
|
|
7
|
+
export * from "./AnimationLayer.js";
|
|
8
|
+
export * from "./Bone.js";
|
|
9
|
+
export * from "./Skeleton.js";
|
|
10
|
+
export * from "./Skinning.js";
|
|
11
|
+
export * from "./BlendTree.js";
|
|
12
|
+
export * from "./AnimationStateMachine.js";
|
|
13
|
+
export * from "./AnimationStateGraph.js";
|
|
14
|
+
export * from "./RootMotion.js";
|
|
15
|
+
export * from "./MotionQuality.js";
|
|
16
|
+
export * from "./LocomotionController.js";
|
|
17
|
+
export * from "./SceneAnimationBridge.js";
|
|
18
|
+
export * from "./ECSAnimationBridge.js";
|
|
19
|
+
export * from "./IK.js";
|
|
20
|
+
export * from "./MotionMatchingFixtures.js";
|
|
21
|
+
export * from "./SecondaryAnimationFixtures.js";
|
|
22
|
+
export * from "./CrowdAnimation.js";
|
|
23
|
+
export * from "./Retargeting.js";
|
|
24
|
+
export * from "./AnimationClipEvents.js";
|
|
25
|
+
export { AnimationClipRegistry } from "./AnimationClipRegistry.js";
|
|
26
|
+
export type { AnimationClipDefinition, AnimationClipId, AnimationClipManifest, AnimationClipRegistryDiagnostic, AnimationClipRegistryDiagnosticSeverity, AnimationClipRegistryOptions, AnimationClipSampleContext, AnimationClipSampler, AnimationKeyframe, AnimationTrack as AnimationClipTrack, AnimationTrackTarget, RegisteredAnimationClip } from "./AnimationClipRegistry.js";
|
|
27
|
+
export * from "./AnimationController.js";
|
|
28
|
+
export * from "./HumanoidRetargeting.js";
|
|
29
|
+
export { AnimationClipThreeCompat } from "./threejs-compatibility/AnimationClip.js";
|
|
30
|
+
export type { ThreeCompatKeyframeTrack, ThreeCompatLoopMode } from "./threejs-compatibility/AnimationClip.js";
|
|
31
|
+
export { AnimationActionThreeCompat } from "./threejs-compatibility/AnimationAction.js";
|
|
32
|
+
export { AnimationMixerThreeCompat } from "./threejs-compatibility/AnimationMixer.js";
|
|
33
|
+
export { SkeletonThreeCompat } from "./threejs-compatibility/Skeleton.js";
|
|
34
|
+
export type { ThreeCompatBone } from "./threejs-compatibility/Skeleton.js";
|
|
35
|
+
export { SkinnedMeshThreeCompat } from "./threejs-compatibility/SkinnedMesh.js";
|
|
36
|
+
export { MorphTargetMixerThreeCompat } from "./threejs-compatibility/MorphTargetMixer.js";
|
|
37
|
+
export type { ThreeCompatMorphTargetWeight } from "./threejs-compatibility/MorphTargetMixer.js";
|
|
38
|
+
export { createThreeCompatAnimationDiagnostics, inspectThreeCompatAnimatedAssets, THREE_COMPAT_ANIMATED_GLTF_ASSETS } from "./threejs-compatibility/AnimationDiagnostics.js";
|
|
39
|
+
export type { ThreeCompatAnimatedAssetDiagnostic } from "./threejs-compatibility/AnimationDiagnostics.js";
|
|
40
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../packages/animation/src/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,WAAW,CAAC;AAC1B,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,4BAA4B,CAAC;AAC3C,cAAc,0BAA0B,CAAC;AACzC,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,yBAAyB,CAAC;AACxC,cAAc,SAAS,CAAC;AACxB,cAAc,6BAA6B,CAAC;AAC5C,cAAc,iCAAiC,CAAC;AAChD,cAAc,qBAAqB,CAAC;AACpC,cAAc,kBAAkB,CAAC;AACjC,cAAc,0BAA0B,CAAC;AACzC,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,YAAY,EACV,uBAAuB,EACvB,eAAe,EACf,qBAAqB,EACrB,+BAA+B,EAC/B,uCAAuC,EACvC,4BAA4B,EAC5B,0BAA0B,EAC1B,oBAAoB,EACpB,iBAAiB,EACjB,cAAc,IAAI,kBAAkB,EACpC,oBAAoB,EACpB,uBAAuB,EACxB,MAAM,4BAA4B,CAAC;AACpC,cAAc,0BAA0B,CAAC;AACzC,cAAc,0BAA0B,CAAC;AACzC,OAAO,EAAE,wBAAwB,EAAE,MAAM,0CAA0C,CAAC;AACpF,YAAY,EAAE,wBAAwB,EAAE,mBAAmB,EAAE,MAAM,0CAA0C,CAAC;AAC9G,OAAO,EAAE,0BAA0B,EAAE,MAAM,4CAA4C,CAAC;AACxF,OAAO,EAAE,yBAAyB,EAAE,MAAM,2CAA2C,CAAC;AACtF,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAC1E,YAAY,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAC;AAC3E,OAAO,EAAE,sBAAsB,EAAE,MAAM,wCAAwC,CAAC;AAChF,OAAO,EAAE,2BAA2B,EAAE,MAAM,6CAA6C,CAAC;AAC1F,YAAY,EAAE,4BAA4B,EAAE,MAAM,6CAA6C,CAAC;AAChG,OAAO,EACL,qCAAqC,EACrC,gCAAgC,EAChC,iCAAiC,EAClC,MAAM,iDAAiD,CAAC;AACzD,YAAY,EAAE,kCAAkC,EAAE,MAAM,iDAAiD,CAAC"}
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
export * from "./Keyframe.js";
|
|
2
|
+
export * from "./AnimationTrack.js";
|
|
3
|
+
export * from "./AnimationClip.js";
|
|
4
|
+
export * from "./AnimationEvents.js";
|
|
5
|
+
export * from "./AnimationAction.js";
|
|
6
|
+
export * from "./AnimationMixer.js";
|
|
7
|
+
export * from "./AnimationLayer.js";
|
|
8
|
+
export * from "./Bone.js";
|
|
9
|
+
export * from "./Skeleton.js";
|
|
10
|
+
export * from "./Skinning.js";
|
|
11
|
+
export * from "./BlendTree.js";
|
|
12
|
+
export * from "./AnimationStateMachine.js";
|
|
13
|
+
export * from "./AnimationStateGraph.js";
|
|
14
|
+
export * from "./RootMotion.js";
|
|
15
|
+
export * from "./MotionQuality.js";
|
|
16
|
+
export * from "./LocomotionController.js";
|
|
17
|
+
export * from "./SceneAnimationBridge.js";
|
|
18
|
+
export * from "./ECSAnimationBridge.js";
|
|
19
|
+
export * from "./IK.js";
|
|
20
|
+
export * from "./MotionMatchingFixtures.js";
|
|
21
|
+
export * from "./SecondaryAnimationFixtures.js";
|
|
22
|
+
export * from "./CrowdAnimation.js";
|
|
23
|
+
export * from "./Retargeting.js";
|
|
24
|
+
export * from "./AnimationClipEvents.js";
|
|
25
|
+
export { AnimationClipRegistry } from "./AnimationClipRegistry.js";
|
|
26
|
+
export * from "./AnimationController.js";
|
|
27
|
+
export * from "./HumanoidRetargeting.js";
|
|
28
|
+
export { AnimationClipThreeCompat } from "./threejs-compatibility/AnimationClip.js";
|
|
29
|
+
export { AnimationActionThreeCompat } from "./threejs-compatibility/AnimationAction.js";
|
|
30
|
+
export { AnimationMixerThreeCompat } from "./threejs-compatibility/AnimationMixer.js";
|
|
31
|
+
export { SkeletonThreeCompat } from "./threejs-compatibility/Skeleton.js";
|
|
32
|
+
export { SkinnedMeshThreeCompat } from "./threejs-compatibility/SkinnedMesh.js";
|
|
33
|
+
export { MorphTargetMixerThreeCompat } from "./threejs-compatibility/MorphTargetMixer.js";
|
|
34
|
+
export { createThreeCompatAnimationDiagnostics, inspectThreeCompatAnimatedAssets, THREE_COMPAT_ANIMATED_GLTF_ASSETS } from "./threejs-compatibility/AnimationDiagnostics.js";
|
|
35
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../packages/animation/src/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,WAAW,CAAC;AAC1B,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,4BAA4B,CAAC;AAC3C,cAAc,0BAA0B,CAAC;AACzC,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,yBAAyB,CAAC;AACxC,cAAc,SAAS,CAAC;AACxB,cAAc,6BAA6B,CAAC;AAC5C,cAAc,iCAAiC,CAAC;AAChD,cAAc,qBAAqB,CAAC;AACpC,cAAc,kBAAkB,CAAC;AACjC,cAAc,0BAA0B,CAAC;AACzC,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAenE,cAAc,0BAA0B,CAAC;AACzC,cAAc,0BAA0B,CAAC;AACzC,OAAO,EAAE,wBAAwB,EAAE,MAAM,0CAA0C,CAAC;AAEpF,OAAO,EAAE,0BAA0B,EAAE,MAAM,4CAA4C,CAAC;AACxF,OAAO,EAAE,yBAAyB,EAAE,MAAM,2CAA2C,CAAC;AACtF,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAE1E,OAAO,EAAE,sBAAsB,EAAE,MAAM,wCAAwC,CAAC;AAChF,OAAO,EAAE,2BAA2B,EAAE,MAAM,6CAA6C,CAAC;AAE1F,OAAO,EACL,qCAAqC,EACrC,gCAAgC,EAChC,iCAAiC,EAClC,MAAM,iDAAiD,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { AnimationClipThreeCompat, ThreeCompatLoopMode } from "./AnimationClip";
|
|
2
|
+
export declare class AnimationActionThreeCompat {
|
|
3
|
+
readonly clip: AnimationClipThreeCompat;
|
|
4
|
+
time: number;
|
|
5
|
+
weight: number;
|
|
6
|
+
paused: boolean;
|
|
7
|
+
playing: boolean;
|
|
8
|
+
loop: ThreeCompatLoopMode;
|
|
9
|
+
constructor(clip: AnimationClipThreeCompat);
|
|
10
|
+
play(): this;
|
|
11
|
+
pause(): this;
|
|
12
|
+
stop(): this;
|
|
13
|
+
scrub(time: number): this;
|
|
14
|
+
crossFadeTo(next: AnimationActionThreeCompat, alpha: number): void;
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=AnimationAction.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AnimationAction.d.ts","sourceRoot":"","sources":["../../../../../packages/animation/src/threejs-compatibility/AnimationAction.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAErF,qBAAa,0BAA0B;aAOT,IAAI,EAAE,wBAAwB;IAN1D,IAAI,SAAK;IACT,MAAM,SAAK;IACX,MAAM,UAAS;IACf,OAAO,UAAS;IAChB,IAAI,EAAE,mBAAmB,CAAY;gBAET,IAAI,EAAE,wBAAwB;IAE1D,IAAI,IAAI,IAAI;IACZ,KAAK,IAAI,IAAI;IACb,IAAI,IAAI,IAAI;IAEZ,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAKzB,WAAW,CAAC,IAAI,EAAE,0BAA0B,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;CAMnE"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
export class AnimationActionThreeCompat {
|
|
2
|
+
clip;
|
|
3
|
+
time = 0;
|
|
4
|
+
weight = 1;
|
|
5
|
+
paused = false;
|
|
6
|
+
playing = false;
|
|
7
|
+
loop = "repeat";
|
|
8
|
+
constructor(clip) {
|
|
9
|
+
this.clip = clip;
|
|
10
|
+
}
|
|
11
|
+
play() { this.playing = true; this.paused = false; return this; }
|
|
12
|
+
pause() { this.paused = true; return this; }
|
|
13
|
+
stop() { this.playing = false; this.time = 0; return this; }
|
|
14
|
+
scrub(time) {
|
|
15
|
+
this.time = Math.max(0, Math.min(this.clip.duration, time));
|
|
16
|
+
return this;
|
|
17
|
+
}
|
|
18
|
+
crossFadeTo(next, alpha) {
|
|
19
|
+
const clamped = Math.max(0, Math.min(1, alpha));
|
|
20
|
+
this.weight = 1 - clamped;
|
|
21
|
+
next.weight = clamped;
|
|
22
|
+
next.play();
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=AnimationAction.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AnimationAction.js","sourceRoot":"","sources":["../../../../../packages/animation/src/threejs-compatibility/AnimationAction.ts"],"names":[],"mappings":"AAEA,MAAM,OAAO,0BAA0B;IAOT;IAN5B,IAAI,GAAG,CAAC,CAAC;IACT,MAAM,GAAG,CAAC,CAAC;IACX,MAAM,GAAG,KAAK,CAAC;IACf,OAAO,GAAG,KAAK,CAAC;IAChB,IAAI,GAAwB,QAAQ,CAAC;IAErC,YAA4B,IAA8B;QAA9B,SAAI,GAAJ,IAAI,CAA0B;IAAG,CAAC;IAE9D,IAAI,KAAW,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC;IACvE,KAAK,KAAW,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC;IAClD,IAAI,KAAW,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC;IAElE,KAAK,CAAC,IAAY;QAChB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC;QAC5D,OAAO,IAAI,CAAC;IACd,CAAC;IAED,WAAW,CAAC,IAAgC,EAAE,KAAa;QACzD,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;QAChD,IAAI,CAAC,MAAM,GAAG,CAAC,GAAG,OAAO,CAAC;QAC1B,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC;QACtB,IAAI,CAAC,IAAI,EAAE,CAAC;IACd,CAAC;CACF"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export type ThreeCompatLoopMode = "once" | "repeat" | "pingpong";
|
|
2
|
+
export interface ThreeCompatKeyframeTrack {
|
|
3
|
+
readonly target: string;
|
|
4
|
+
readonly property: string;
|
|
5
|
+
readonly times: readonly number[];
|
|
6
|
+
readonly values: readonly number[];
|
|
7
|
+
}
|
|
8
|
+
export declare class AnimationClipThreeCompat {
|
|
9
|
+
readonly name: string;
|
|
10
|
+
readonly duration: number;
|
|
11
|
+
readonly tracks: readonly ThreeCompatKeyframeTrack[];
|
|
12
|
+
constructor(name: string, duration: number, tracks: readonly ThreeCompatKeyframeTrack[]);
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=AnimationClip.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AnimationClip.d.ts","sourceRoot":"","sources":["../../../../../packages/animation/src/threejs-compatibility/AnimationClip.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,mBAAmB,GAAG,MAAM,GAAG,QAAQ,GAAG,UAAU,CAAC;AAEjE,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,QAAQ,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;CACpC;AAED,qBAAa,wBAAwB;aAEjB,IAAI,EAAE,MAAM;aACZ,QAAQ,EAAE,MAAM;aAChB,MAAM,EAAE,SAAS,wBAAwB,EAAE;gBAF3C,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,SAAS,wBAAwB,EAAE;CAE9D"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AnimationClip.js","sourceRoot":"","sources":["../../../../../packages/animation/src/threejs-compatibility/AnimationClip.ts"],"names":[],"mappings":"AASA,MAAM,OAAO,wBAAwB;IAEjB;IACA;IACA;IAHlB,YACkB,IAAY,EACZ,QAAgB,EAChB,MAA2C;QAF3C,SAAI,GAAJ,IAAI,CAAQ;QACZ,aAAQ,GAAR,QAAQ,CAAQ;QAChB,WAAM,GAAN,MAAM,CAAqC;IAC1D,CAAC;CACL"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import type { AnimationMixerThreeCompat } from "./AnimationMixer";
|
|
2
|
+
import type { MorphTargetMixerThreeCompat } from "./MorphTargetMixer";
|
|
3
|
+
import type { SkinnedMeshThreeCompat } from "./SkinnedMesh";
|
|
4
|
+
export interface ThreeCompatAnimatedAssetDiagnostic {
|
|
5
|
+
readonly id: string;
|
|
6
|
+
readonly path: string;
|
|
7
|
+
readonly loaded: boolean;
|
|
8
|
+
readonly bytes: number;
|
|
9
|
+
readonly capabilities: readonly string[];
|
|
10
|
+
}
|
|
11
|
+
export declare const THREE_COMPAT_ANIMATED_GLTF_ASSETS: readonly [{
|
|
12
|
+
readonly id: "cesium-man";
|
|
13
|
+
readonly path: "fixtures/three-compat/assets/corpus/cesium-man.glb";
|
|
14
|
+
readonly capabilities: readonly ["skinning", "animation"];
|
|
15
|
+
}, {
|
|
16
|
+
readonly id: "animated-colors-cube";
|
|
17
|
+
readonly path: "fixtures/three-compat/assets/corpus/animated-colors-cube.glb";
|
|
18
|
+
readonly capabilities: readonly ["animation"];
|
|
19
|
+
}, {
|
|
20
|
+
readonly id: "animated-morph-cube";
|
|
21
|
+
readonly path: "fixtures/three-compat/assets/corpus/animated-morph-cube.glb";
|
|
22
|
+
readonly capabilities: readonly ["morph-target", "animation"];
|
|
23
|
+
}, {
|
|
24
|
+
readonly id: "box-animated";
|
|
25
|
+
readonly path: "fixtures/three-compat/assets/corpus/box-animated.glb";
|
|
26
|
+
readonly capabilities: readonly ["animation"];
|
|
27
|
+
}, {
|
|
28
|
+
readonly id: "fox";
|
|
29
|
+
readonly path: "tests/assets/corpus/khronos/Fox/Fox.glb";
|
|
30
|
+
readonly capabilities: readonly ["skinning", "animation"];
|
|
31
|
+
}];
|
|
32
|
+
export declare function inspectThreeCompatAnimatedAssets(): readonly ThreeCompatAnimatedAssetDiagnostic[];
|
|
33
|
+
export declare function createThreeCompatAnimationDiagnostics(mixer: AnimationMixerThreeCompat, skinnedMesh: SkinnedMeshThreeCompat, morphs: MorphTargetMixerThreeCompat): {
|
|
34
|
+
loadedAnimatedAssets: number;
|
|
35
|
+
assets: readonly ThreeCompatAnimatedAssetDiagnostic[];
|
|
36
|
+
actionCount: number;
|
|
37
|
+
playingActionCount: number;
|
|
38
|
+
skinnedBoneCount: number;
|
|
39
|
+
morphTargetCount: number;
|
|
40
|
+
supportsCrossfade: boolean;
|
|
41
|
+
supportsScrub: boolean;
|
|
42
|
+
warnings: string[];
|
|
43
|
+
};
|
|
44
|
+
//# sourceMappingURL=AnimationDiagnostics.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AnimationDiagnostics.d.ts","sourceRoot":"","sources":["../../../../../packages/animation/src/threejs-compatibility/AnimationDiagnostics.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,kBAAkB,CAAC;AAClE,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,oBAAoB,CAAC;AACtE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;AAE5D,MAAM,WAAW,kCAAkC;IACjD,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,YAAY,EAAE,SAAS,MAAM,EAAE,CAAC;CAC1C;AAED,eAAO,MAAM,iCAAiC;;;;;;;;;;;;;;;;;;;;EAMpC,CAAC;AAEX,wBAAgB,gCAAgC,IAAI,SAAS,kCAAkC,EAAE,CAMhG;AAED,wBAAgB,qCAAqC,CAAC,KAAK,EAAE,yBAAyB,EAAE,WAAW,EAAE,sBAAsB,EAAE,MAAM,EAAE,2BAA2B;;;;;;;;;;EAa/J"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
export const THREE_COMPAT_ANIMATED_GLTF_ASSETS = [
|
|
2
|
+
{ id: "cesium-man", path: "fixtures/three-compat/assets/corpus/cesium-man.glb", capabilities: ["skinning", "animation"] },
|
|
3
|
+
{ id: "animated-colors-cube", path: "fixtures/three-compat/assets/corpus/animated-colors-cube.glb", capabilities: ["animation"] },
|
|
4
|
+
{ id: "animated-morph-cube", path: "fixtures/three-compat/assets/corpus/animated-morph-cube.glb", capabilities: ["morph-target", "animation"] },
|
|
5
|
+
{ id: "box-animated", path: "fixtures/three-compat/assets/corpus/box-animated.glb", capabilities: ["animation"] },
|
|
6
|
+
{ id: "fox", path: "tests/assets/corpus/khronos/Fox/Fox.glb", capabilities: ["skinning", "animation"] }
|
|
7
|
+
];
|
|
8
|
+
export function inspectThreeCompatAnimatedAssets() {
|
|
9
|
+
const browserRuntime = typeof globalThis.window !== "undefined" && typeof globalThis.document !== "undefined";
|
|
10
|
+
return THREE_COMPAT_ANIMATED_GLTF_ASSETS.map((asset) => {
|
|
11
|
+
const loaded = !browserRuntime;
|
|
12
|
+
return { ...asset, loaded, bytes: loaded ? 1 : 0 };
|
|
13
|
+
});
|
|
14
|
+
}
|
|
15
|
+
export function createThreeCompatAnimationDiagnostics(mixer, skinnedMesh, morphs) {
|
|
16
|
+
const assets = inspectThreeCompatAnimatedAssets();
|
|
17
|
+
return {
|
|
18
|
+
loadedAnimatedAssets: assets.filter((asset) => asset.loaded).length,
|
|
19
|
+
assets,
|
|
20
|
+
actionCount: mixer.actions.length,
|
|
21
|
+
playingActionCount: mixer.actions.filter((action) => action.playing && !action.paused).length,
|
|
22
|
+
skinnedBoneCount: skinnedMesh.skeleton.boneCount,
|
|
23
|
+
morphTargetCount: morphs.getWeights().length,
|
|
24
|
+
supportsCrossfade: mixer.actions.length >= 2,
|
|
25
|
+
supportsScrub: mixer.actions.every((action) => action.time >= 0),
|
|
26
|
+
warnings: assets.filter((asset) => !asset.loaded).map((asset) => `${asset.id} missing`)
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=AnimationDiagnostics.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AnimationDiagnostics.js","sourceRoot":"","sources":["../../../../../packages/animation/src/threejs-compatibility/AnimationDiagnostics.ts"],"names":[],"mappings":"AAYA,MAAM,CAAC,MAAM,iCAAiC,GAAG;IAC/C,EAAE,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,oDAAoD,EAAE,YAAY,EAAE,CAAC,UAAU,EAAE,WAAW,CAAC,EAAE;IACzH,EAAE,EAAE,EAAE,sBAAsB,EAAE,IAAI,EAAE,8DAA8D,EAAE,YAAY,EAAE,CAAC,WAAW,CAAC,EAAE;IACjI,EAAE,EAAE,EAAE,qBAAqB,EAAE,IAAI,EAAE,6DAA6D,EAAE,YAAY,EAAE,CAAC,cAAc,EAAE,WAAW,CAAC,EAAE;IAC/I,EAAE,EAAE,EAAE,cAAc,EAAE,IAAI,EAAE,sDAAsD,EAAE,YAAY,EAAE,CAAC,WAAW,CAAC,EAAE;IACjH,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,yCAAyC,EAAE,YAAY,EAAE,CAAC,UAAU,EAAE,WAAW,CAAC,EAAE;CAC/F,CAAC;AAEX,MAAM,UAAU,gCAAgC;IAC9C,MAAM,cAAc,GAAG,OAAO,UAAU,CAAC,MAAM,KAAK,WAAW,IAAI,OAAO,UAAU,CAAC,QAAQ,KAAK,WAAW,CAAC;IAC9G,OAAO,iCAAiC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;QACrD,MAAM,MAAM,GAAG,CAAC,cAAc,CAAC;QAC/B,OAAO,EAAE,GAAG,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACrD,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,qCAAqC,CAAC,KAAgC,EAAE,WAAmC,EAAE,MAAmC;IAC9J,MAAM,MAAM,GAAG,gCAAgC,EAAE,CAAC;IAClD,OAAO;QACL,oBAAoB,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,MAAM;QACnE,MAAM;QACN,WAAW,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM;QACjC,kBAAkB,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM;QAC7F,gBAAgB,EAAE,WAAW,CAAC,QAAQ,CAAC,SAAS;QAChD,gBAAgB,EAAE,MAAM,CAAC,UAAU,EAAE,CAAC,MAAM;QAC5C,iBAAiB,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,IAAI,CAAC;QAC5C,aAAa,EAAE,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,CAAC;QAChE,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,KAAK,CAAC,EAAE,UAAU,CAAC;KACxF,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { AnimationActionThreeCompat } from "./AnimationAction";
|
|
2
|
+
import type { AnimationClipThreeCompat } from "./AnimationClip";
|
|
3
|
+
export declare class AnimationMixerThreeCompat {
|
|
4
|
+
readonly actions: AnimationActionThreeCompat[];
|
|
5
|
+
time: number;
|
|
6
|
+
clipAction(clip: AnimationClipThreeCompat): AnimationActionThreeCompat;
|
|
7
|
+
update(deltaSeconds: number): void;
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=AnimationMixer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AnimationMixer.d.ts","sourceRoot":"","sources":["../../../../../packages/animation/src/threejs-compatibility/AnimationMixer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,mBAAmB,CAAC;AAC/D,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,iBAAiB,CAAC;AAEhE,qBAAa,yBAAyB;IACpC,QAAQ,CAAC,OAAO,EAAE,0BAA0B,EAAE,CAAM;IACpD,IAAI,SAAK;IAET,UAAU,CAAC,IAAI,EAAE,wBAAwB,GAAG,0BAA0B;IAQtE,MAAM,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI;CAQnC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { AnimationActionThreeCompat } from "./AnimationAction.js";
|
|
2
|
+
export class AnimationMixerThreeCompat {
|
|
3
|
+
actions = [];
|
|
4
|
+
time = 0;
|
|
5
|
+
clipAction(clip) {
|
|
6
|
+
const existing = this.actions.find((action) => action.clip === clip);
|
|
7
|
+
if (existing)
|
|
8
|
+
return existing;
|
|
9
|
+
const action = new AnimationActionThreeCompat(clip);
|
|
10
|
+
this.actions.push(action);
|
|
11
|
+
return action;
|
|
12
|
+
}
|
|
13
|
+
update(deltaSeconds) {
|
|
14
|
+
this.time += deltaSeconds;
|
|
15
|
+
for (const action of this.actions) {
|
|
16
|
+
if (!action.playing || action.paused)
|
|
17
|
+
continue;
|
|
18
|
+
action.time += deltaSeconds;
|
|
19
|
+
if (action.time > action.clip.duration)
|
|
20
|
+
action.time = action.loop === "once" ? action.clip.duration : action.time % action.clip.duration;
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=AnimationMixer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AnimationMixer.js","sourceRoot":"","sources":["../../../../../packages/animation/src/threejs-compatibility/AnimationMixer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,mBAAmB,CAAC;AAG/D,MAAM,OAAO,yBAAyB;IAC3B,OAAO,GAAiC,EAAE,CAAC;IACpD,IAAI,GAAG,CAAC,CAAC;IAET,UAAU,CAAC,IAA8B;QACvC,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;QACrE,IAAI,QAAQ;YAAE,OAAO,QAAQ,CAAC;QAC9B,MAAM,MAAM,GAAG,IAAI,0BAA0B,CAAC,IAAI,CAAC,CAAC;QACpD,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC1B,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,MAAM,CAAC,YAAoB;QACzB,IAAI,CAAC,IAAI,IAAI,YAAY,CAAC;QAC1B,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YAClC,IAAI,CAAC,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,MAAM;gBAAE,SAAS;YAC/C,MAAM,CAAC,IAAI,IAAI,YAAY,CAAC;YAC5B,IAAI,MAAM,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ;gBAAE,MAAM,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC;QAC3I,CAAC;IACH,CAAC;CACF"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export interface ThreeCompatMorphTargetWeight {
|
|
2
|
+
readonly name: string;
|
|
3
|
+
readonly weight: number;
|
|
4
|
+
}
|
|
5
|
+
export declare class MorphTargetMixerThreeCompat {
|
|
6
|
+
private readonly weights;
|
|
7
|
+
setWeight(name: string, weight: number): void;
|
|
8
|
+
getWeights(): readonly ThreeCompatMorphTargetWeight[];
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=MorphTargetMixer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MorphTargetMixer.d.ts","sourceRoot":"","sources":["../../../../../packages/animation/src/threejs-compatibility/MorphTargetMixer.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED,qBAAa,2BAA2B;IACtC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA6B;IAErD,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAI7C,UAAU,IAAI,SAAS,4BAA4B,EAAE;CAGtD"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export class MorphTargetMixerThreeCompat {
|
|
2
|
+
weights = new Map();
|
|
3
|
+
setWeight(name, weight) {
|
|
4
|
+
this.weights.set(name, Math.max(0, Math.min(1, weight)));
|
|
5
|
+
}
|
|
6
|
+
getWeights() {
|
|
7
|
+
return [...this.weights.entries()].map(([name, weight]) => ({ name, weight }));
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=MorphTargetMixer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MorphTargetMixer.js","sourceRoot":"","sources":["../../../../../packages/animation/src/threejs-compatibility/MorphTargetMixer.ts"],"names":[],"mappings":"AAKA,MAAM,OAAO,2BAA2B;IACrB,OAAO,GAAG,IAAI,GAAG,EAAkB,CAAC;IAErD,SAAS,CAAC,IAAY,EAAE,MAAc;QACpC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;IAC3D,CAAC;IAED,UAAU;QACR,OAAO,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;IACjF,CAAC;CACF"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export interface ThreeCompatBone {
|
|
2
|
+
readonly name: string;
|
|
3
|
+
readonly parentIndex: number;
|
|
4
|
+
}
|
|
5
|
+
export declare class SkeletonThreeCompat {
|
|
6
|
+
readonly bones: readonly ThreeCompatBone[];
|
|
7
|
+
constructor(bones: readonly ThreeCompatBone[]);
|
|
8
|
+
get boneCount(): number;
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=Skeleton.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Skeleton.d.ts","sourceRoot":"","sources":["../../../../../packages/animation/src/threejs-compatibility/Skeleton.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;CAC9B;AAED,qBAAa,mBAAmB;aACF,KAAK,EAAE,SAAS,eAAe,EAAE;gBAAjC,KAAK,EAAE,SAAS,eAAe,EAAE;IAC7D,IAAI,SAAS,IAAI,MAAM,CAA8B;CACtD"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Skeleton.js","sourceRoot":"","sources":["../../../../../packages/animation/src/threejs-compatibility/Skeleton.ts"],"names":[],"mappings":"AAKA,MAAM,OAAO,mBAAmB;IACF;IAA5B,YAA4B,KAAiC;QAAjC,UAAK,GAAL,KAAK,CAA4B;IAAG,CAAC;IACjE,IAAI,SAAS,KAAa,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;CACtD"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { SkeletonThreeCompat } from "./Skeleton";
|
|
2
|
+
export declare class SkinnedMeshThreeCompat {
|
|
3
|
+
readonly skeleton: SkeletonThreeCompat;
|
|
4
|
+
readonly geometry: unknown;
|
|
5
|
+
readonly material: unknown;
|
|
6
|
+
readonly type = "SkinnedMesh";
|
|
7
|
+
bindMatrixVersion: number;
|
|
8
|
+
constructor(skeleton: SkeletonThreeCompat, geometry?: unknown, material?: unknown);
|
|
9
|
+
pose(): void;
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=SkinnedMesh.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SkinnedMesh.d.ts","sourceRoot":"","sources":["../../../../../packages/animation/src/threejs-compatibility/SkinnedMesh.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAEtD,qBAAa,sBAAsB;aAIL,QAAQ,EAAE,mBAAmB;aAAkB,QAAQ,EAAE,OAAO;aAAyB,QAAQ,EAAE,OAAO;IAHtI,QAAQ,CAAC,IAAI,iBAAiB;IAC9B,iBAAiB,SAAK;gBAEM,QAAQ,EAAE,mBAAmB,EAAkB,QAAQ,GAAE,OAAc,EAAkB,QAAQ,GAAE,OAAc;IAE7I,IAAI,IAAI,IAAI;CAGb"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
export class SkinnedMeshThreeCompat {
|
|
2
|
+
skeleton;
|
|
3
|
+
geometry;
|
|
4
|
+
material;
|
|
5
|
+
type = "SkinnedMesh";
|
|
6
|
+
bindMatrixVersion = 1;
|
|
7
|
+
constructor(skeleton, geometry = null, material = null) {
|
|
8
|
+
this.skeleton = skeleton;
|
|
9
|
+
this.geometry = geometry;
|
|
10
|
+
this.material = material;
|
|
11
|
+
}
|
|
12
|
+
pose() {
|
|
13
|
+
this.bindMatrixVersion += 1;
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=SkinnedMesh.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SkinnedMesh.js","sourceRoot":"","sources":["../../../../../packages/animation/src/threejs-compatibility/SkinnedMesh.ts"],"names":[],"mappings":"AAEA,MAAM,OAAO,sBAAsB;IAIL;IAA+C;IAA0C;IAH5G,IAAI,GAAG,aAAa,CAAC;IAC9B,iBAAiB,GAAG,CAAC,CAAC;IAEtB,YAA4B,QAA6B,EAAkB,WAAoB,IAAI,EAAkB,WAAoB,IAAI;QAAjH,aAAQ,GAAR,QAAQ,CAAqB;QAAkB,aAAQ,GAAR,QAAQ,CAAgB;QAAkB,aAAQ,GAAR,QAAQ,CAAgB;IAAG,CAAC;IAEjJ,IAAI;QACF,IAAI,CAAC,iBAAiB,IAAI,CAAC,CAAC;IAC9B,CAAC;CACF"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export { AnimationClipThreeCompat } from "./AnimationClip";
|
|
2
|
+
export type { ThreeCompatKeyframeTrack, ThreeCompatLoopMode } from "./AnimationClip";
|
|
3
|
+
export { AnimationActionThreeCompat } from "./AnimationAction";
|
|
4
|
+
export { AnimationMixerThreeCompat } from "./AnimationMixer";
|
|
5
|
+
export { SkeletonThreeCompat } from "./Skeleton";
|
|
6
|
+
export type { ThreeCompatBone } from "./Skeleton";
|
|
7
|
+
export { SkinnedMeshThreeCompat } from "./SkinnedMesh";
|
|
8
|
+
export { MorphTargetMixerThreeCompat } from "./MorphTargetMixer";
|
|
9
|
+
export type { ThreeCompatMorphTargetWeight } from "./MorphTargetMixer";
|
|
10
|
+
export { createThreeCompatAnimationDiagnostics, inspectThreeCompatAnimatedAssets, THREE_COMPAT_ANIMATED_GLTF_ASSETS } from "./AnimationDiagnostics";
|
|
11
|
+
export type { ThreeCompatAnimatedAssetDiagnostic } from "./AnimationDiagnostics";
|
|
12
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../packages/animation/src/threejs-compatibility/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,YAAY,EAAE,wBAAwB,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACrF,OAAO,EAAE,0BAA0B,EAAE,MAAM,mBAAmB,CAAC;AAC/D,OAAO,EAAE,yBAAyB,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AACjD,YAAY,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAClD,OAAO,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;AACvD,OAAO,EAAE,2BAA2B,EAAE,MAAM,oBAAoB,CAAC;AACjE,YAAY,EAAE,4BAA4B,EAAE,MAAM,oBAAoB,CAAC;AACvE,OAAO,EAAE,qCAAqC,EAAE,gCAAgC,EAAE,iCAAiC,EAAE,MAAM,wBAAwB,CAAC;AACpJ,YAAY,EAAE,kCAAkC,EAAE,MAAM,wBAAwB,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export { AnimationClipThreeCompat } from "./AnimationClip.js";
|
|
2
|
+
export { AnimationActionThreeCompat } from "./AnimationAction.js";
|
|
3
|
+
export { AnimationMixerThreeCompat } from "./AnimationMixer.js";
|
|
4
|
+
export { SkeletonThreeCompat } from "./Skeleton.js";
|
|
5
|
+
export { SkinnedMeshThreeCompat } from "./SkinnedMesh.js";
|
|
6
|
+
export { MorphTargetMixerThreeCompat } from "./MorphTargetMixer.js";
|
|
7
|
+
export { createThreeCompatAnimationDiagnostics, inspectThreeCompatAnimatedAssets, THREE_COMPAT_ANIMATED_GLTF_ASSETS } from "./AnimationDiagnostics.js";
|
|
8
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../packages/animation/src/threejs-compatibility/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,iBAAiB,CAAC;AAE3D,OAAO,EAAE,0BAA0B,EAAE,MAAM,mBAAmB,CAAC;AAC/D,OAAO,EAAE,yBAAyB,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAEjD,OAAO,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;AACvD,OAAO,EAAE,2BAA2B,EAAE,MAAM,oBAAoB,CAAC;AAEjE,OAAO,EAAE,qCAAqC,EAAE,gCAAgC,EAAE,iCAAiC,EAAE,MAAM,wBAAwB,CAAC"}
|