@aura3d/engine 1.4.3 → 1.4.5

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.
Files changed (161) hide show
  1. package/README.md +34 -22
  2. package/dist/aura3d-cli/asset-core-types.d.ts +43 -0
  3. package/dist/aura3d-cli/asset-core-types.d.ts.map +1 -1
  4. package/dist/aura3d-cli/cli-help.d.ts.map +1 -1
  5. package/dist/aura3d-cli/cli-help.js +7 -1
  6. package/dist/aura3d-cli/cli-help.js.map +1 -1
  7. package/dist/aura3d-cli/cli-options.d.ts +3 -1
  8. package/dist/aura3d-cli/cli-options.d.ts.map +1 -1
  9. package/dist/aura3d-cli/cli-options.js +23 -0
  10. package/dist/aura3d-cli/cli-options.js.map +1 -1
  11. package/dist/aura3d-cli/cli.js +40 -3
  12. package/dist/aura3d-cli/cli.js.map +1 -1
  13. package/dist/aura3d-cli/index.d.ts +4 -2
  14. package/dist/aura3d-cli/index.d.ts.map +1 -1
  15. package/dist/aura3d-cli/index.js +384 -8
  16. package/dist/aura3d-cli/index.js.map +1 -1
  17. package/dist/create-aura3d/index.d.ts +4 -0
  18. package/dist/create-aura3d/index.d.ts.map +1 -1
  19. package/dist/create-aura3d/index.js +3 -1
  20. package/dist/create-aura3d/index.js.map +1 -1
  21. package/dist/create-aura3d/showcase-spec-artifacts.d.ts +5 -0
  22. package/dist/create-aura3d/showcase-spec-artifacts.d.ts.map +1 -1
  23. package/dist/create-aura3d/showcase-spec-artifacts.js +11 -2
  24. package/dist/create-aura3d/showcase-spec-artifacts.js.map +1 -1
  25. package/dist/create-aura3d/showcase-spec-asset-pair-composition.d.ts +116 -0
  26. package/dist/create-aura3d/showcase-spec-asset-pair-composition.d.ts.map +1 -0
  27. package/dist/create-aura3d/showcase-spec-asset-pair-composition.js +336 -0
  28. package/dist/create-aura3d/showcase-spec-asset-pair-composition.js.map +1 -0
  29. package/dist/create-aura3d/showcase-spec-compiler.d.ts.map +1 -1
  30. package/dist/create-aura3d/showcase-spec-compiler.js +149 -10
  31. package/dist/create-aura3d/showcase-spec-compiler.js.map +1 -1
  32. package/dist/create-aura3d/showcase-spec-composition-evidence.d.ts +14 -0
  33. package/dist/create-aura3d/showcase-spec-composition-evidence.d.ts.map +1 -0
  34. package/dist/create-aura3d/showcase-spec-composition-evidence.js +123 -0
  35. package/dist/create-aura3d/showcase-spec-composition-evidence.js.map +1 -0
  36. package/dist/create-aura3d/showcase-spec-evidence.js +50 -1
  37. package/dist/create-aura3d/showcase-spec-evidence.js.map +1 -1
  38. package/dist/create-aura3d/showcase-spec-game-geometry-extractor.d.ts +4 -2
  39. package/dist/create-aura3d/showcase-spec-game-geometry-extractor.d.ts.map +1 -1
  40. package/dist/create-aura3d/showcase-spec-game-geometry-extractor.js +260 -30
  41. package/dist/create-aura3d/showcase-spec-game-geometry-extractor.js.map +1 -1
  42. package/dist/create-aura3d/showcase-spec-game-geometry-probe.d.ts +20 -0
  43. package/dist/create-aura3d/showcase-spec-game-geometry-probe.d.ts.map +1 -0
  44. package/dist/create-aura3d/showcase-spec-game-geometry-probe.js +16 -0
  45. package/dist/create-aura3d/showcase-spec-game-geometry-probe.js.map +1 -0
  46. package/dist/create-aura3d/showcase-spec-game-replacement-evidence.js +7 -3
  47. package/dist/create-aura3d/showcase-spec-game-replacement-evidence.js.map +1 -1
  48. package/dist/create-aura3d/showcase-spec-game-scene-scale.d.ts +10 -0
  49. package/dist/create-aura3d/showcase-spec-game-scene-scale.d.ts.map +1 -0
  50. package/dist/create-aura3d/showcase-spec-game-scene-scale.js +71 -0
  51. package/dist/create-aura3d/showcase-spec-game-scene-scale.js.map +1 -0
  52. package/dist/create-aura3d/showcase-spec-game-template-evidence.d.ts +10 -0
  53. package/dist/create-aura3d/showcase-spec-game-template-evidence.d.ts.map +1 -1
  54. package/dist/create-aura3d/showcase-spec-game-template-evidence.js +50 -7
  55. package/dist/create-aura3d/showcase-spec-game-template-evidence.js.map +1 -1
  56. package/dist/create-aura3d/showcase-spec-gameplay-evidence.js +4 -3
  57. package/dist/create-aura3d/showcase-spec-gameplay-evidence.js.map +1 -1
  58. package/dist/create-aura3d/showcase-spec-parser.d.ts.map +1 -1
  59. package/dist/create-aura3d/showcase-spec-parser.js +3 -0
  60. package/dist/create-aura3d/showcase-spec-parser.js.map +1 -1
  61. package/dist/create-aura3d/showcase-spec-platformer-artifacts.d.ts +1 -0
  62. package/dist/create-aura3d/showcase-spec-platformer-artifacts.d.ts.map +1 -1
  63. package/dist/create-aura3d/showcase-spec-platformer-artifacts.js +188 -56
  64. package/dist/create-aura3d/showcase-spec-platformer-artifacts.js.map +1 -1
  65. package/dist/create-aura3d/showcase-spec-racing-artifacts.d.ts +1 -0
  66. package/dist/create-aura3d/showcase-spec-racing-artifacts.d.ts.map +1 -1
  67. package/dist/create-aura3d/showcase-spec-racing-artifacts.js +208 -31
  68. package/dist/create-aura3d/showcase-spec-racing-artifacts.js.map +1 -1
  69. package/dist/create-aura3d/showcase-spec-replacement-candidates.js +2 -1
  70. package/dist/create-aura3d/showcase-spec-replacement-candidates.js.map +1 -1
  71. package/dist/create-aura3d/showcase-spec-types.d.ts +22 -0
  72. package/dist/create-aura3d/showcase-spec-types.d.ts.map +1 -1
  73. package/dist/engine/agent-api/GameGenreKits.d.ts +44 -0
  74. package/dist/engine/agent-api/GameGenreKits.d.ts.map +1 -1
  75. package/dist/engine/agent-api/GameGenreKits.js +126 -28
  76. package/dist/engine/agent-api/GameGenreKits.js.map +1 -1
  77. package/dist/engine/agent-api/GameSceneGeometryBindings.d.ts +26 -0
  78. package/dist/engine/agent-api/GameSceneGeometryBindings.d.ts.map +1 -1
  79. package/dist/engine/agent-api/GameSceneGeometryBindings.js +11 -1
  80. package/dist/engine/agent-api/GameSceneGeometryBindings.js.map +1 -1
  81. package/dist/engine/agent-api/index.d.ts +8 -6
  82. package/dist/engine/agent-api/index.d.ts.map +1 -1
  83. package/dist/engine/agent-api/index.js +71 -3
  84. package/dist/engine/agent-api/index.js.map +1 -1
  85. package/dist/engine/agent-api/product-viewer-runtime.d.ts.map +1 -1
  86. package/package.json +23 -22
  87. package/templates/cinematic-scene/package.json +1 -1
  88. package/templates/mini-game/package.json +1 -1
  89. package/templates/product-viewer/package.json +1 -1
  90. package/dist/animation/Retargeting.d.ts +0 -12
  91. package/dist/animation/Retargeting.d.ts.map +0 -1
  92. package/dist/animation/Retargeting.js +0 -19
  93. package/dist/animation/Retargeting.js.map +0 -1
  94. package/dist/aura3d-cli/cartoon-asset-profiles.d.ts +0 -15
  95. package/dist/aura3d-cli/cartoon-asset-profiles.d.ts.map +0 -1
  96. package/dist/aura3d-cli/cartoon-asset-profiles.js +0 -46
  97. package/dist/aura3d-cli/cartoon-asset-profiles.js.map +0 -1
  98. package/dist/editor-runtime/CartoonSceneEditor.d.ts +0 -111
  99. package/dist/editor-runtime/CartoonSceneEditor.d.ts.map +0 -1
  100. package/dist/editor-runtime/CartoonSceneEditor.js +0 -285
  101. package/dist/editor-runtime/CartoonSceneEditor.js.map +0 -1
  102. package/dist/engine/agent-api/CartoonAssetManifest.d.ts +0 -50
  103. package/dist/engine/agent-api/CartoonAssetManifest.d.ts.map +0 -1
  104. package/dist/engine/agent-api/CartoonAssetManifest.js +0 -65
  105. package/dist/engine/agent-api/CartoonAssetManifest.js.map +0 -1
  106. package/dist/engine/agent-api/CartoonDirector.d.ts +0 -120
  107. package/dist/engine/agent-api/CartoonDirector.d.ts.map +0 -1
  108. package/dist/engine/agent-api/CartoonDirector.js +0 -432
  109. package/dist/engine/agent-api/CartoonDirector.js.map +0 -1
  110. package/dist/engine/agent-api/CartoonEpisodePackage.d.ts +0 -51
  111. package/dist/engine/agent-api/CartoonEpisodePackage.d.ts.map +0 -1
  112. package/dist/engine/agent-api/CartoonEpisodePackage.js +0 -79
  113. package/dist/engine/agent-api/CartoonEpisodePackage.js.map +0 -1
  114. package/dist/engine/agent-api/CartoonMotionQuality.d.ts +0 -83
  115. package/dist/engine/agent-api/CartoonMotionQuality.d.ts.map +0 -1
  116. package/dist/engine/agent-api/CartoonMotionQuality.js +0 -128
  117. package/dist/engine/agent-api/CartoonMotionQuality.js.map +0 -1
  118. package/dist/engine/agent-api/CartoonPerformance.d.ts +0 -150
  119. package/dist/engine/agent-api/CartoonPerformance.d.ts.map +0 -1
  120. package/dist/engine/agent-api/CartoonPerformance.js +0 -345
  121. package/dist/engine/agent-api/CartoonPerformance.js.map +0 -1
  122. package/dist/engine/agent-api/CartoonRenderQueue.d.ts +0 -143
  123. package/dist/engine/agent-api/CartoonRenderQueue.d.ts.map +0 -1
  124. package/dist/engine/agent-api/CartoonRenderQueue.js +0 -410
  125. package/dist/engine/agent-api/CartoonRenderQueue.js.map +0 -1
  126. package/dist/engine/agent-api/CartoonRouteProof.d.ts +0 -112
  127. package/dist/engine/agent-api/CartoonRouteProof.d.ts.map +0 -1
  128. package/dist/engine/agent-api/CartoonRouteProof.js +0 -127
  129. package/dist/engine/agent-api/CartoonRouteProof.js.map +0 -1
  130. package/dist/rendering/cartoon/CartoonMaterialStyle.d.ts +0 -19
  131. package/dist/rendering/cartoon/CartoonMaterialStyle.d.ts.map +0 -1
  132. package/dist/rendering/cartoon/CartoonMaterialStyle.js +0 -13
  133. package/dist/rendering/cartoon/CartoonMaterialStyle.js.map +0 -1
  134. package/dist/rendering/cartoon/CartoonRenderPreset.d.ts +0 -36
  135. package/dist/rendering/cartoon/CartoonRenderPreset.d.ts.map +0 -1
  136. package/dist/rendering/cartoon/CartoonRenderPreset.js +0 -23
  137. package/dist/rendering/cartoon/CartoonRenderPreset.js.map +0 -1
  138. package/dist/rendering/cartoon/CartoonToonMaterial.d.ts +0 -130
  139. package/dist/rendering/cartoon/CartoonToonMaterial.d.ts.map +0 -1
  140. package/dist/rendering/cartoon/CartoonToonMaterial.js +0 -303
  141. package/dist/rendering/cartoon/CartoonToonMaterial.js.map +0 -1
  142. package/dist/rendering/cartoon/CartoonVisualQuality.d.ts +0 -28
  143. package/dist/rendering/cartoon/CartoonVisualQuality.d.ts.map +0 -1
  144. package/dist/rendering/cartoon/CartoonVisualQuality.js +0 -39
  145. package/dist/rendering/cartoon/CartoonVisualQuality.js.map +0 -1
  146. package/dist/rendering/cartoon/applyCartoonRenderPreset.d.ts +0 -79
  147. package/dist/rendering/cartoon/applyCartoonRenderPreset.d.ts.map +0 -1
  148. package/dist/rendering/cartoon/applyCartoonRenderPreset.js +0 -88
  149. package/dist/rendering/cartoon/applyCartoonRenderPreset.js.map +0 -1
  150. package/dist/rendering/cartoon/index.d.ts +0 -6
  151. package/dist/rendering/cartoon/index.d.ts.map +0 -1
  152. package/dist/rendering/cartoon/index.js +0 -6
  153. package/dist/rendering/cartoon/index.js.map +0 -1
  154. package/dist/scripting/CartoonNodeCategories.d.ts +0 -3
  155. package/dist/scripting/CartoonNodeCategories.d.ts.map +0 -1
  156. package/dist/scripting/CartoonNodeCategories.js +0 -9
  157. package/dist/scripting/CartoonNodeCategories.js.map +0 -1
  158. package/dist/scripting/CartoonVisualNodes.d.ts +0 -3
  159. package/dist/scripting/CartoonVisualNodes.d.ts.map +0 -1
  160. package/dist/scripting/CartoonVisualNodes.js +0 -41
  161. package/dist/scripting/CartoonVisualNodes.js.map +0 -1
@@ -1,83 +0,0 @@
1
- import { type PromptAnimationFrameRate, type PromptAnimationId, type PromptAnimationSeconds, type PromptAnimationValidationIssue } from "./PromptAnimationContract.js";
2
- export declare const cartoonMotionQualitySchemaVersion: "aura3d-cartoon-motion-quality/v1";
3
- export type CartoonMotionQualityStatus = "pass" | "fail";
4
- export type CartoonMotionRegionKind = "head" | "torso" | "arm" | "hand" | "leg" | "mouth" | "prop" | "background";
5
- export type CartoonMotionSegmentKind = "establishing" | "dialogue" | "action" | "camera" | "transition";
6
- export interface CartoonMotionFrameRegionSample {
7
- readonly id: PromptAnimationId;
8
- readonly kind: CartoonMotionRegionKind;
9
- readonly characterId?: PromptAnimationId | undefined;
10
- readonly visible: boolean;
11
- readonly delta: number;
12
- readonly mouthDelta?: number | undefined;
13
- }
14
- export interface CartoonMotionFrameSample {
15
- readonly frame: number;
16
- readonly time: PromptAnimationSeconds;
17
- readonly frameHash: string;
18
- readonly globalDelta: number;
19
- readonly cameraMoveExpected?: boolean | undefined;
20
- readonly regions: readonly CartoonMotionFrameRegionSample[];
21
- }
22
- export interface CartoonMotionSegmentInput {
23
- readonly id: PromptAnimationId;
24
- readonly shotId?: PromptAnimationId | undefined;
25
- readonly kind: CartoonMotionSegmentKind;
26
- readonly startFrame: number;
27
- readonly endFrame: number;
28
- readonly characterIds?: readonly PromptAnimationId[] | undefined;
29
- readonly cameraMoveExpected?: boolean | undefined;
30
- }
31
- export interface CartoonMotionQualityThresholds {
32
- readonly minFrameHashChanges: number;
33
- readonly minGlobalDelta: number;
34
- readonly minRegionDelta: number;
35
- readonly minMouthDelta: number;
36
- readonly minIndependentRegionKinds: number;
37
- readonly maxGlobalOnlyFrameRatio: number;
38
- }
39
- export interface CartoonMotionSegmentReport {
40
- readonly id: PromptAnimationId;
41
- readonly shotId?: PromptAnimationId | undefined;
42
- readonly kind: CartoonMotionSegmentKind;
43
- readonly startFrame: number;
44
- readonly endFrame: number;
45
- readonly frameCount: number;
46
- readonly frameHashChanges: number;
47
- readonly averageGlobalDelta: number;
48
- readonly averageLocalRegionDelta: number;
49
- readonly movingRegionKinds: readonly CartoonMotionRegionKind[];
50
- readonly movingCharacterIds: readonly PromptAnimationId[];
51
- readonly mouthMotionCharacterIds: readonly PromptAnimationId[];
52
- readonly globalOnlyFrameRatio: number;
53
- readonly cameraMoveExpected: boolean;
54
- readonly pass: boolean;
55
- readonly issues: readonly PromptAnimationValidationIssue[];
56
- }
57
- export interface CartoonMotionQualityReport {
58
- readonly artifact: "cartoon-motion-quality";
59
- readonly schemaVersion: typeof cartoonMotionQualitySchemaVersion;
60
- readonly contractId: string;
61
- readonly episodeId: PromptAnimationId;
62
- readonly generatedAt?: string | undefined;
63
- readonly frameRate: PromptAnimationFrameRate;
64
- readonly frameCount: number;
65
- readonly status: CartoonMotionQualityStatus;
66
- readonly thresholds: CartoonMotionQualityThresholds;
67
- readonly frameHashChanges: number;
68
- readonly globalOnlyMotion: boolean;
69
- readonly segments: readonly CartoonMotionSegmentReport[];
70
- readonly issues: readonly PromptAnimationValidationIssue[];
71
- }
72
- export interface CreateCartoonMotionQualityReportInput {
73
- readonly episodeId: PromptAnimationId;
74
- readonly frameRate: PromptAnimationFrameRate;
75
- readonly frames: readonly CartoonMotionFrameSample[];
76
- readonly segments: readonly CartoonMotionSegmentInput[];
77
- readonly generatedAt?: string | undefined;
78
- readonly thresholds?: Partial<CartoonMotionQualityThresholds> | undefined;
79
- }
80
- export declare const defaultCartoonMotionQualityThresholds: CartoonMotionQualityThresholds;
81
- export declare function createCartoonMotionQualityReport(input: CreateCartoonMotionQualityReportInput): CartoonMotionQualityReport;
82
- export declare function validateCartoonMotionQuality(report: CartoonMotionQualityReport): readonly PromptAnimationValidationIssue[];
83
- //# sourceMappingURL=CartoonMotionQuality.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"CartoonMotionQuality.d.ts","sourceRoot":"","sources":["../../../../../packages/engine/src/agent-api/CartoonMotionQuality.ts"],"names":[],"mappings":"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"}
@@ -1,128 +0,0 @@
1
- import { createPromptAnimationIssue, promptAnimationContractVersion } from "./PromptAnimationContract.js";
2
- export const cartoonMotionQualitySchemaVersion = "aura3d-cartoon-motion-quality/v1";
3
- export const defaultCartoonMotionQualityThresholds = {
4
- minFrameHashChanges: 2,
5
- minGlobalDelta: 0.01,
6
- minRegionDelta: 0.025,
7
- minMouthDelta: 0.015,
8
- minIndependentRegionKinds: 2,
9
- maxGlobalOnlyFrameRatio: 0.6
10
- };
11
- export function createCartoonMotionQualityReport(input) {
12
- const thresholds = { ...defaultCartoonMotionQualityThresholds, ...input.thresholds };
13
- const sortedFrames = [...input.frames].sort((a, b) => a.frame - b.frame);
14
- const frameHashChanges = countFrameHashChanges(sortedFrames);
15
- const segments = input.segments.map((segment) => analyzeCartoonMotionSegment(segment, sortedFrames, thresholds));
16
- const issues = [];
17
- if (sortedFrames.length === 0) {
18
- issues.push(createPromptAnimationIssue("error", "cartoon-motion-frames-missing", "Motion quality requires sampled frames."));
19
- }
20
- if (frameHashChanges < thresholds.minFrameHashChanges) {
21
- issues.push(createPromptAnimationIssue("error", "cartoon-motion-frame-hashes-static", `Motion quality requires at least ${thresholds.minFrameHashChanges} frame hash changes.`));
22
- }
23
- if (segments.length === 0) {
24
- issues.push(createPromptAnimationIssue("error", "cartoon-motion-segments-missing", "Motion quality requires timeline segments."));
25
- }
26
- issues.push(...segments.flatMap((segment) => segment.issues));
27
- const globalOnlyMotion = segments.length > 0 && segments.every((segment) => segment.globalOnlyFrameRatio > thresholds.maxGlobalOnlyFrameRatio);
28
- if (globalOnlyMotion) {
29
- issues.push(createPromptAnimationIssue("error", "cartoon-motion-global-only", "Motion appears to be global-only still-image motion instead of independent character or object animation."));
30
- }
31
- return {
32
- artifact: "cartoon-motion-quality",
33
- schemaVersion: cartoonMotionQualitySchemaVersion,
34
- contractId: promptAnimationContractVersion,
35
- episodeId: input.episodeId,
36
- generatedAt: input.generatedAt,
37
- frameRate: input.frameRate,
38
- frameCount: sortedFrames.length,
39
- status: issues.some((issue) => issue.severity === "error") ? "fail" : "pass",
40
- thresholds,
41
- frameHashChanges,
42
- globalOnlyMotion,
43
- segments,
44
- issues
45
- };
46
- }
47
- export function validateCartoonMotionQuality(report) {
48
- const issues = [];
49
- if (report.schemaVersion !== cartoonMotionQualitySchemaVersion) {
50
- issues.push(createPromptAnimationIssue("error", "cartoon-motion-schema-version-unknown", `Unknown cartoon motion quality schema "${report.schemaVersion}".`));
51
- }
52
- if (report.status !== "pass") {
53
- issues.push(createPromptAnimationIssue("error", "cartoon-motion-status-fail", "Cartoon motion quality report did not pass."));
54
- }
55
- if (report.globalOnlyMotion) {
56
- issues.push(createPromptAnimationIssue("error", "cartoon-motion-global-only", "Cartoon motion quality report detected global-only still-image motion."));
57
- }
58
- return [...issues, ...report.issues];
59
- }
60
- function analyzeCartoonMotionSegment(segment, frames, thresholds) {
61
- const segmentFrames = frames.filter((frame) => frame.frame >= segment.startFrame && frame.frame <= segment.endFrame);
62
- const issues = [];
63
- const allRegions = segmentFrames.flatMap((frame) => frame.regions.filter((region) => region.visible));
64
- const movingRegions = allRegions.filter((region) => region.delta >= thresholds.minRegionDelta);
65
- const movingRegionKinds = uniqueSorted(movingRegions.map((region) => region.kind));
66
- const movingCharacterIds = uniqueSorted(movingRegions.flatMap((region) => (region.characterId ? [region.characterId] : [])));
67
- const mouthMotionCharacterIds = uniqueSorted(allRegions.flatMap((region) => region.kind === "mouth" && (region.mouthDelta ?? region.delta) >= thresholds.minMouthDelta && region.characterId
68
- ? [region.characterId]
69
- : []));
70
- const globalOnlyFrames = segmentFrames.filter((frame) => {
71
- const maxLocalDelta = Math.max(0, ...frame.regions.filter((region) => region.visible).map((region) => region.delta));
72
- return frame.globalDelta >= thresholds.minGlobalDelta && maxLocalDelta < thresholds.minRegionDelta;
73
- });
74
- const frameHashChanges = countFrameHashChanges(segmentFrames);
75
- const averageGlobalDelta = average(segmentFrames.map((frame) => frame.globalDelta));
76
- const averageLocalRegionDelta = average(allRegions.map((region) => region.delta));
77
- const globalOnlyFrameRatio = segmentFrames.length === 0 ? 1 : globalOnlyFrames.length / segmentFrames.length;
78
- const cameraMoveExpected = Boolean(segment.cameraMoveExpected ?? segmentFrames.some((frame) => frame.cameraMoveExpected));
79
- if (segmentFrames.length === 0) {
80
- issues.push(createPromptAnimationIssue("error", "cartoon-motion-segment-frames-missing", `Motion segment "${segment.id}" has no sampled frames.`, {
81
- path: `segments.${segment.id}`
82
- }));
83
- }
84
- if ((segment.kind === "action" || segment.kind === "dialogue") && movingRegionKinds.length < thresholds.minIndependentRegionKinds) {
85
- issues.push(createPromptAnimationIssue("error", "cartoon-motion-independent-regions-missing", `Motion segment "${segment.id}" requires at least ${thresholds.minIndependentRegionKinds} independently moving region kinds.`, { path: `segments.${segment.id}` }));
86
- }
87
- if (segment.kind === "dialogue" && mouthMotionCharacterIds.length === 0) {
88
- issues.push(createPromptAnimationIssue("error", "cartoon-motion-mouth-missing", `Dialogue segment "${segment.id}" requires mouth-region motion.`, { path: `segments.${segment.id}` }));
89
- }
90
- if (globalOnlyFrameRatio > thresholds.maxGlobalOnlyFrameRatio && !cameraMoveExpected && segment.kind !== "transition") {
91
- issues.push(createPromptAnimationIssue("error", "cartoon-motion-segment-global-only", `Motion segment "${segment.id}" looks like global-only still-image movement.`, { path: `segments.${segment.id}` }));
92
- }
93
- return {
94
- id: segment.id,
95
- shotId: segment.shotId,
96
- kind: segment.kind,
97
- startFrame: segment.startFrame,
98
- endFrame: segment.endFrame,
99
- frameCount: segmentFrames.length,
100
- frameHashChanges,
101
- averageGlobalDelta,
102
- averageLocalRegionDelta,
103
- movingRegionKinds,
104
- movingCharacterIds,
105
- mouthMotionCharacterIds,
106
- globalOnlyFrameRatio,
107
- cameraMoveExpected,
108
- pass: issues.every((issue) => issue.severity !== "error"),
109
- issues
110
- };
111
- }
112
- function countFrameHashChanges(frames) {
113
- let changes = 0;
114
- for (let index = 1; index < frames.length; index += 1) {
115
- if (frames[index]?.frameHash !== frames[index - 1]?.frameHash)
116
- changes += 1;
117
- }
118
- return changes;
119
- }
120
- function average(values) {
121
- if (values.length === 0)
122
- return 0;
123
- return Number((values.reduce((sum, value) => sum + value, 0) / values.length).toFixed(6));
124
- }
125
- function uniqueSorted(values) {
126
- return Array.from(new Set(values)).sort();
127
- }
128
- //# sourceMappingURL=CartoonMotionQuality.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"CartoonMotionQuality.js","sourceRoot":"","sources":["../../../../../packages/engine/src/agent-api/CartoonMotionQuality.ts"],"names":[],"mappings":"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"}
@@ -1,150 +0,0 @@
1
- import { type PromptAnimationArtifactBase, type PromptAnimationFrameRate, type PromptAnimationId, type PromptAnimationSeconds, type PromptAnimationValidationIssue } from "./PromptAnimationContract.js";
2
- import type { AuraColor, AuraVec3 } from "./index.js";
3
- import type { DialogueTrackArtifact } from "./DialoguePerformance.js";
4
- export type CartoonPerformanceAction = "idle" | "speak" | "listen" | "gesture" | "walk" | "run" | "react" | "look-at" | "enter" | "exit" | "blink" | "hold" | "nod" | "wave" | "point" | "reach" | "turn" | "lean";
5
- export type CartoonPerformancePosture = "neutral" | "upright" | "lean-forward" | "lean-back" | "crouch" | "bounce";
6
- export type CartoonFacialBrow = "neutral" | "raised" | "soft" | "furrowed" | "arched";
7
- export type CartoonFacialEyeShape = "open" | "soft" | "wide" | "squint" | "closed";
8
- export type CartoonFacialMouthShape = "neutral" | "smile" | "frown" | "open" | "round" | "wide";
9
- export type CartoonGazeMode = "camera" | "target" | "speaker" | "listener" | "offscreen" | "down" | "up";
10
- export interface CartoonPerformanceBodyState {
11
- readonly position?: AuraVec3 | undefined;
12
- readonly rotation?: AuraVec3 | undefined;
13
- readonly scale?: number | AuraVec3 | undefined;
14
- readonly rootMotion?: AuraVec3 | undefined;
15
- readonly posture?: CartoonPerformancePosture | string | undefined;
16
- readonly headTilt?: number | undefined;
17
- readonly torsoLean?: number | undefined;
18
- readonly shoulderRaise?: number | undefined;
19
- readonly armPose?: "neutral" | "open" | "crossed" | "pointing" | "waving" | "holding-prop" | string | undefined;
20
- readonly handPose?: "relaxed" | "open" | "point" | "fist" | "pinch" | string | undefined;
21
- readonly energy?: number | undefined;
22
- }
23
- export interface CartoonPerformanceFacialState {
24
- readonly brow?: CartoonFacialBrow | string | undefined;
25
- readonly eyes?: CartoonFacialEyeShape | string | undefined;
26
- readonly eyeOpen?: number | undefined;
27
- readonly mouth?: CartoonFacialMouthShape | string | undefined;
28
- readonly cheek?: "neutral" | "lifted" | "puffed" | string | undefined;
29
- readonly colorAccent?: AuraColor | undefined;
30
- readonly blinkRate?: number | undefined;
31
- }
32
- export interface CartoonPerformanceGestureState {
33
- readonly gestureId?: PromptAnimationId | undefined;
34
- readonly label?: string | undefined;
35
- readonly hand?: "left" | "right" | "both" | undefined;
36
- readonly amplitude?: number | undefined;
37
- readonly frequency?: number | undefined;
38
- readonly loop?: boolean | undefined;
39
- readonly phase?: number | undefined;
40
- }
41
- export interface CartoonPerformanceBlockingState {
42
- readonly position?: AuraVec3 | undefined;
43
- readonly rotation?: AuraVec3 | undefined;
44
- readonly scale?: number | AuraVec3 | undefined;
45
- readonly visible?: boolean | undefined;
46
- readonly layer?: "foreground" | "midground" | "background" | string | undefined;
47
- readonly anchorId?: PromptAnimationId | undefined;
48
- readonly propId?: PromptAnimationId | undefined;
49
- }
50
- export interface CartoonPerformanceGazeState {
51
- readonly mode: CartoonGazeMode | string;
52
- readonly targetId?: PromptAnimationId | undefined;
53
- readonly target?: AuraVec3 | undefined;
54
- readonly intensity?: number | undefined;
55
- readonly leadTime?: PromptAnimationSeconds | undefined;
56
- }
57
- export interface CartoonEmotionPose {
58
- readonly id: PromptAnimationId;
59
- readonly emotion: string;
60
- readonly body: CartoonPerformanceBodyState;
61
- readonly facial: CartoonPerformanceFacialState;
62
- readonly gaze?: CartoonPerformanceGazeState | undefined;
63
- readonly notes?: readonly string[] | undefined;
64
- }
65
- export interface CartoonGesture {
66
- readonly id: PromptAnimationId;
67
- readonly label: string;
68
- readonly action: CartoonPerformanceAction | string;
69
- readonly defaultDuration: PromptAnimationSeconds;
70
- readonly body: CartoonPerformanceBodyState;
71
- readonly gesture: CartoonPerformanceGestureState;
72
- readonly facial?: CartoonPerformanceFacialState | undefined;
73
- readonly reducedMotionSafe: boolean;
74
- readonly notes?: readonly string[] | undefined;
75
- }
76
- export declare const cartoonEmotionPoseLibrary: Record<string, CartoonEmotionPose>;
77
- export declare const cartoonGestureLibrary: Record<string, CartoonGesture>;
78
- export interface CartoonPerformanceCue {
79
- readonly id: PromptAnimationId;
80
- readonly shotId?: PromptAnimationId | undefined;
81
- readonly characterId: PromptAnimationId;
82
- readonly lineId?: PromptAnimationId | undefined;
83
- readonly startTime: PromptAnimationSeconds;
84
- readonly endTime: PromptAnimationSeconds;
85
- readonly action: CartoonPerformanceAction | string;
86
- readonly emotion?: string | undefined;
87
- readonly emotionPoseId?: PromptAnimationId | undefined;
88
- readonly intensity?: number | undefined;
89
- readonly animationClip?: string | undefined;
90
- readonly visemeTrackId?: PromptAnimationId | undefined;
91
- readonly body?: CartoonPerformanceBodyState | undefined;
92
- readonly facial?: CartoonPerformanceFacialState | undefined;
93
- readonly gestureId?: PromptAnimationId | undefined;
94
- readonly gesture?: CartoonPerformanceGestureState | undefined;
95
- readonly blocking?: CartoonPerformanceBlockingState | undefined;
96
- readonly gaze?: CartoonPerformanceGazeState | undefined;
97
- readonly notes?: readonly string[] | undefined;
98
- }
99
- export interface CartoonPerformanceArtifact extends PromptAnimationArtifactBase<"cartoon-performance"> {
100
- readonly frameRate: PromptAnimationFrameRate;
101
- readonly cues: readonly CartoonPerformanceCue[];
102
- }
103
- export interface CartoonPerformanceCoverage {
104
- readonly cueCount: number;
105
- readonly speakingCueCount: number;
106
- readonly bodyCueCount: number;
107
- readonly facialCueCount: number;
108
- readonly gestureCueCount: number;
109
- readonly blockingCueCount: number;
110
- readonly gazeCueCount: number;
111
- readonly animatedCharacterIds: readonly PromptAnimationId[];
112
- readonly staticCharacterIds: readonly PromptAnimationId[];
113
- readonly uncoveredDialogueLineIds: readonly PromptAnimationId[];
114
- readonly issues: readonly PromptAnimationValidationIssue[];
115
- }
116
- export interface CartoonCharacterPerformanceState {
117
- readonly time: PromptAnimationSeconds;
118
- readonly characterId: PromptAnimationId;
119
- readonly activeCues: readonly CartoonPerformanceCue[];
120
- readonly primaryCue?: CartoonPerformanceCue | undefined;
121
- readonly action: CartoonPerformanceAction | string;
122
- readonly emotion: string;
123
- readonly intensity: number;
124
- readonly emotionPose: CartoonEmotionPose;
125
- readonly gesture?: CartoonGesture | undefined;
126
- readonly body: CartoonPerformanceBodyState;
127
- readonly facial: CartoonPerformanceFacialState;
128
- readonly blocking?: CartoonPerformanceBlockingState | undefined;
129
- readonly gaze?: CartoonPerformanceGazeState | undefined;
130
- readonly animationClip?: string | undefined;
131
- }
132
- export declare function defineCartoonPerformance<const TPerformance extends CartoonPerformanceArtifact>(performance: TPerformance): TPerformance;
133
- export declare function createCartoonPerformance(input: {
134
- readonly episodeId: PromptAnimationId;
135
- readonly frameRate: PromptAnimationFrameRate;
136
- readonly cues: readonly CartoonPerformanceCue[];
137
- readonly generatedAt?: string | undefined;
138
- }): CartoonPerformanceArtifact;
139
- export declare function createDialogueCartoonPerformance(dialogue: DialogueTrackArtifact, options?: {
140
- readonly frameRate?: PromptAnimationFrameRate | undefined;
141
- readonly shotByLineId?: Record<string, PromptAnimationId> | undefined;
142
- readonly visemeTrackId?: PromptAnimationId | undefined;
143
- }): CartoonPerformanceArtifact;
144
- export declare function resolveCartoonEmotionPose(emotionOrPoseId: string | undefined): CartoonEmotionPose;
145
- export declare function resolveCartoonGesture(gestureId: string | undefined): CartoonGesture | undefined;
146
- export declare function sampleCartoonCharacterPerformance(performance: CartoonPerformanceArtifact, time: PromptAnimationSeconds, characterId: PromptAnimationId): CartoonCharacterPerformanceState;
147
- export declare function cartoonPerformanceCuesAtTime(performance: CartoonPerformanceArtifact, time: PromptAnimationSeconds, characterId?: PromptAnimationId): readonly CartoonPerformanceCue[];
148
- export declare function validateCartoonPerformance(performance: CartoonPerformanceArtifact): readonly PromptAnimationValidationIssue[];
149
- export declare function createCartoonPerformanceCoverage(performance: CartoonPerformanceArtifact, dialogue?: DialogueTrackArtifact): CartoonPerformanceCoverage;
150
- //# sourceMappingURL=CartoonPerformance.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"CartoonPerformance.d.ts","sourceRoot":"","sources":["../../../../../packages/engine/src/agent-api/CartoonPerformance.ts"],"names":[],"mappings":"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"}