distark-render 1.1.11 → 1.1.13

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 (40) hide show
  1. package/dist/cli/scene.d.ts +13 -2
  2. package/dist/cli/scene.d.ts.map +1 -1
  3. package/dist/cli/scene.js +236 -4
  4. package/dist/cli/scene.js.map +1 -1
  5. package/dist/modules/animationDiff.d.ts.map +1 -1
  6. package/dist/modules/animationDiff.js +1 -0
  7. package/dist/modules/animationDiff.js.map +1 -1
  8. package/dist/modules/browserSceneRenderer.d.ts.map +1 -1
  9. package/dist/modules/browserSceneRenderer.js +27 -0
  10. package/dist/modules/browserSceneRenderer.js.map +1 -1
  11. package/dist/modules/characterValidator.d.ts +41 -0
  12. package/dist/modules/characterValidator.d.ts.map +1 -0
  13. package/dist/modules/characterValidator.js +233 -0
  14. package/dist/modules/characterValidator.js.map +1 -0
  15. package/dist/modules/imageLoad.d.ts +3 -2
  16. package/dist/modules/imageLoad.d.ts.map +1 -1
  17. package/dist/modules/imageLoad.js +113 -5
  18. package/dist/modules/imageLoad.js.map +1 -1
  19. package/dist/modules/renderRig.d.ts +4 -0
  20. package/dist/modules/renderRig.d.ts.map +1 -1
  21. package/dist/modules/renderRig.js +130 -15
  22. package/dist/modules/renderRig.js.map +1 -1
  23. package/dist/modules/sceneRenderer.d.ts.map +1 -1
  24. package/dist/modules/sceneRenderer.js +27 -0
  25. package/dist/modules/sceneRenderer.js.map +1 -1
  26. package/dist/tests/test-angle-swap.d.ts +2 -0
  27. package/dist/tests/test-angle-swap.d.ts.map +1 -0
  28. package/dist/tests/test-angle-swap.js +101 -0
  29. package/dist/tests/test-angle-swap.js.map +1 -0
  30. package/dist/tests/test-character-validator.d.ts +8 -0
  31. package/dist/tests/test-character-validator.d.ts.map +1 -0
  32. package/dist/tests/test-character-validator.js +445 -0
  33. package/dist/tests/test-character-validator.js.map +1 -0
  34. package/dist/tests/test-svg-parallax.d.ts +2 -0
  35. package/dist/tests/test-svg-parallax.d.ts.map +1 -0
  36. package/dist/tests/test-svg-parallax.js +52 -0
  37. package/dist/tests/test-svg-parallax.js.map +1 -0
  38. package/dist/types.d.ts +31 -0
  39. package/dist/types.d.ts.map +1 -1
  40. package/package.json +106 -100
@@ -1,5 +1,16 @@
1
1
  /**
2
- * scene command - stub placeholder (not yet implemented)
2
+ /**
3
+ * scene command - Render a world JSON scene to PNG frames or MP4 video
4
+ *
5
+ * Usage:
6
+ * distark-check scene <world.json> [--time 0] [-o output.png]
7
+ * distark-check scene <world.json> --keyframes [--frames 5] [-o frames/]
8
+ * distark-check scene <world.json> --video [-o output.mp4] [--fps 30]
9
+ *
10
+ * Characters: If world.characters[].imagePaths exists, rig data is used directly.
11
+ * Otherwise pass --chars char1.json,char2.json (id=path or just path).
12
+ *
13
+ * No audio/mouth — visual-only preview.
3
14
  */
4
- export declare function runScene(_args: string[]): Promise<void>;
15
+ export declare function runScene(args: string[]): Promise<void>;
5
16
  //# sourceMappingURL=scene.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"scene.d.ts","sourceRoot":"","sources":["../../cli/scene.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,wBAAsB,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAG7D"}
1
+ {"version":3,"file":"scene.d.ts","sourceRoot":"","sources":["../../cli/scene.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAkEH,wBAAsB,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAuD5D"}
package/dist/cli/scene.js CHANGED
@@ -1,8 +1,240 @@
1
1
  /**
2
- * scene command - stub placeholder (not yet implemented)
2
+ /**
3
+ * scene command - Render a world JSON scene to PNG frames or MP4 video
4
+ *
5
+ * Usage:
6
+ * distark-check scene <world.json> [--time 0] [-o output.png]
7
+ * distark-check scene <world.json> --keyframes [--frames 5] [-o frames/]
8
+ * distark-check scene <world.json> --video [-o output.mp4] [--fps 30]
9
+ *
10
+ * Characters: If world.characters[].imagePaths exists, rig data is used directly.
11
+ * Otherwise pass --chars char1.json,char2.json (id=path or just path).
12
+ *
13
+ * No audio/mouth — visual-only preview.
3
14
  */
4
- export async function runScene(_args) {
5
- console.error('scene command is not yet implemented');
6
- process.exit(1);
15
+ import { readFile, writeFile } from 'fs/promises';
16
+ import { existsSync } from 'fs';
17
+ import { renderScene, renderSceneKeyFrames, evaluateScene, SceneEngine } from '../modules/sceneRenderer.js';
18
+ function getMaxTime(world) {
19
+ let maxTime = 0;
20
+ for (const track of world.timeline || []) {
21
+ for (const lane of track.lanes || []) {
22
+ for (const kf of lane.keyframes || []) {
23
+ if (kf.time > maxTime)
24
+ maxTime = kf.time;
25
+ }
26
+ }
27
+ }
28
+ return maxTime || 5;
29
+ }
30
+ async function loadRigDataMap(world, charsArg) {
31
+ const rigDataMap = {};
32
+ // 1. Check if characters in world JSON already have embedded rig data
33
+ for (const char of world.characters || []) {
34
+ if (char.imagePaths) {
35
+ rigDataMap[char.id] = char;
36
+ console.error(` Using embedded rig: ${char.id}`);
37
+ }
38
+ }
39
+ // 2. Load from --chars argument (overrides embedded data)
40
+ if (charsArg) {
41
+ const entries = charsArg.split(',').map(s => s.trim()).filter(Boolean);
42
+ for (const entry of entries) {
43
+ let id, path;
44
+ if (entry.includes('=')) {
45
+ [id, path] = entry.split('=', 2);
46
+ }
47
+ else {
48
+ path = entry;
49
+ id = path.replace(/\.json$/, '').split('/').pop() || path;
50
+ }
51
+ if (!existsSync(path)) {
52
+ console.error(` Warning: not found: ${path}`);
53
+ continue;
54
+ }
55
+ try {
56
+ rigDataMap[id] = JSON.parse(await readFile(path, 'utf-8'));
57
+ console.error(` Loaded rig file: ${id} ← ${path}`);
58
+ }
59
+ catch (e) {
60
+ console.error(` Warning: parse failed ${path}: ${e.message}`);
61
+ }
62
+ }
63
+ }
64
+ const embedded = Object.keys(rigDataMap).length;
65
+ const charTotal = (world.characters || []).length;
66
+ if (embedded === 0 && charTotal > 0) {
67
+ console.error(` No rig data found — ${charTotal} character(s) will render as placeholders`);
68
+ }
69
+ return rigDataMap;
70
+ }
71
+ export async function runScene(args) {
72
+ const inputFile = args.find(a => !a.startsWith('-')) || '';
73
+ if (!inputFile) {
74
+ console.error(`Usage:
75
+ distark-check scene <world.json> [--time 0] [-o output.png] [--report]
76
+ distark-check scene <world.json> --keyframes [--frames 5] [-o frames/]
77
+ distark-check scene <world.json> --video [-o output.mp4] [--fps 30]
78
+
79
+ Options:
80
+ --time <seconds> Time to evaluate (default: 0)
81
+ --chars <files> Comma-separated rig files: id=path or path (optional if embedded)
82
+ --keyframes Render key frames across scene duration
83
+ --video Render all frames and assemble into MP4 via ffmpeg
84
+ --frames <count> Key frame count (default: 5, used with --keyframes)
85
+ --fps <number> Frames per second for --video (default: 30)
86
+ --width <pixels> Output width (default: 2560)
87
+ --height <pixels> Output height (default: 1440)
88
+ -o <path> Output file or directory
89
+ --state Print scene state as JSON (no rendering)
90
+ --report Save report JSON alongside output`);
91
+ process.exit(1);
92
+ }
93
+ // Parse args
94
+ const getArg = (flag) => { const i = args.indexOf(flag); return i !== -1 ? args[i + 1] : undefined; };
95
+ const time = parseFloat(getArg('--time') || '0');
96
+ const charsArg = getArg('--chars') || '';
97
+ const outIdx = args.indexOf('-o');
98
+ const keyframeMode = args.includes('--keyframes');
99
+ const videoMode = args.includes('--video');
100
+ const frameCount = parseInt(getArg('--frames') || '5');
101
+ const fps = parseInt(getArg('--fps') || '30');
102
+ const width = parseInt(getArg('--width') || '2560');
103
+ const height = parseInt(getArg('--height') || '1440');
104
+ const stateOnly = args.includes('--state');
105
+ const wantReport = args.includes('--report');
106
+ const world = JSON.parse(await readFile(inputFile, 'utf-8'));
107
+ if (stateOnly) {
108
+ const state = evaluateScene(world, time);
109
+ console.log(JSON.stringify(state, null, 2));
110
+ return;
111
+ }
112
+ console.error(`Loading character rigs...`);
113
+ const rigDataMap = await loadRigDataMap(world, charsArg);
114
+ if (videoMode) {
115
+ await renderVideo(world, rigDataMap, { width, height, fps, inputFile, outputArg: outIdx !== -1 ? args[outIdx + 1] : undefined });
116
+ }
117
+ else if (keyframeMode) {
118
+ await renderKeyframes(world, rigDataMap, { width, height, frameCount, inputFile, outputArg: outIdx !== -1 ? args[outIdx + 1] : undefined });
119
+ }
120
+ else {
121
+ await renderSingleFrame(world, rigDataMap, { width, height, time, wantReport, inputFile, outputArg: outIdx !== -1 ? args[outIdx + 1] : undefined });
122
+ }
123
+ }
124
+ // ── Single frame ──────────────────────────────────────────────────
125
+ async function renderSingleFrame(world, rigDataMap, opts) {
126
+ const outputFile = opts.outputArg || opts.inputFile.replace(/\.json$/, '.png');
127
+ console.error(`Rendering scene at t=${opts.time}s → ${outputFile}`);
128
+ const origLog = console.log;
129
+ console.log = (...a) => console.error(...a);
130
+ const report = await renderScene(world, opts.time, outputFile, rigDataMap, { width: opts.width, height: opts.height });
131
+ console.log = origLog;
132
+ console.error(`Rendered: ${outputFile} (${opts.width}x${opts.height})`);
133
+ console.error(` Characters: ${report.quality.visible_characters}/${report.quality.total_characters} visible`);
134
+ if (opts.wantReport) {
135
+ const reportFile = outputFile.replace(/\.png$/, '.report.json');
136
+ await writeFile(reportFile, JSON.stringify(report, null, 2));
137
+ console.error(`Report: ${reportFile}`);
138
+ }
139
+ console.log(JSON.stringify(report, null, 2));
140
+ }
141
+ // ── Keyframes ─────────────────────────────────────────────────────
142
+ async function renderKeyframes(world, rigDataMap, opts) {
143
+ const outputDir = opts.outputArg || 'scene-frames';
144
+ console.error(`Rendering ${opts.frameCount} key frames to ${outputDir}/`);
145
+ const reports = await renderSceneKeyFrames(world, outputDir, rigDataMap, {
146
+ width: opts.width, height: opts.height, frameCount: opts.frameCount
147
+ });
148
+ const manifest = {
149
+ input: opts.inputFile, output_dir: outputDir, frame_count: reports.length,
150
+ frames: reports.map((r, i) => ({
151
+ index: i, time: r.time, file: `${String(i).padStart(3, '0')}.png`,
152
+ visible_characters: r.characters.filter(c => !c.hidden).map(c => c.id), camera: r.camera,
153
+ })),
154
+ quality: reports[0]?.quality || {},
155
+ };
156
+ await writeFile(`${outputDir}/manifest.json`, JSON.stringify(manifest, null, 2));
157
+ console.error(`Manifest: ${outputDir}/manifest.json`);
158
+ console.log(JSON.stringify(manifest, null, 2));
159
+ }
160
+ // ── Video ─────────────────────────────────────────────────────────
161
+ async function renderVideo(world, rigDataMap, opts) {
162
+ const { spawn } = await import('child_process');
163
+ const outputFile = opts.outputArg || opts.inputFile.replace(/\.json$/, '.mp4');
164
+ const maxTime = getMaxTime(world);
165
+ const totalFrames = Math.max(1, Math.ceil(maxTime * opts.fps));
166
+ console.error(`Rendering video: ${totalFrames} frames at ${opts.fps}fps (${maxTime.toFixed(1)}s) → ${outputFile}`);
167
+ console.error(` Resolution: ${opts.width}x${opts.height}`);
168
+ const engine = new SceneEngine(world, rigDataMap);
169
+ console.error(` Initializing engine...`);
170
+ const origLog = console.log;
171
+ console.log = (...a) => console.error(...a);
172
+ await engine.init();
173
+ console.log = origLog;
174
+ console.error(` Engine ready. Piping raw frames to ffmpeg...`);
175
+ // Spawn ffmpeg, pipe raw RGBA frames via stdin — no PNG encoding, no temp files
176
+ const ffmpeg = spawn('ffmpeg', [
177
+ '-y',
178
+ '-f', 'rawvideo',
179
+ '-pix_fmt', 'rgba',
180
+ '-s', `${opts.width}x${opts.height}`,
181
+ '-r', String(opts.fps),
182
+ '-i', 'pipe:0',
183
+ '-c:v', 'libx264',
184
+ '-pix_fmt', 'yuv420p',
185
+ '-crf', '23',
186
+ '-preset', 'fast',
187
+ outputFile
188
+ ], { stdio: ['pipe', 'pipe', 'pipe'] });
189
+ const ffmpegPromise = new Promise((resolve, reject) => {
190
+ ffmpeg.on('close', (code) => {
191
+ if (code === 0)
192
+ resolve();
193
+ else
194
+ reject(new Error(`ffmpeg exited with code ${code}`));
195
+ });
196
+ ffmpeg.on('error', reject);
197
+ });
198
+ const startTime = Date.now();
199
+ for (let i = 0; i < totalFrames; i++) {
200
+ const t = i / opts.fps;
201
+ const canvas = await engine.renderFrameToCanvas(t, opts.width, opts.height);
202
+ // Get raw RGBA pixel data from canvas
203
+ const ctx = canvas.getContext('2d');
204
+ const imageData = ctx.getImageData(0, 0, opts.width, opts.height);
205
+ const rgbaBuffer = Buffer.from(imageData.data.buffer);
206
+ // Write to ffmpeg stdin (backpressure handling)
207
+ const canWrite = ffmpeg.stdin.write(rgbaBuffer);
208
+ if (!canWrite) {
209
+ await new Promise(resolve => ffmpeg.stdin.once('drain', resolve));
210
+ }
211
+ if (i % 30 === 0 || i === totalFrames - 1) {
212
+ const elapsed = ((Date.now() - startTime) / 1000).toFixed(1);
213
+ const pct = Math.round((i / totalFrames) * 100);
214
+ const msPerFrame = i > 0 ? ((Date.now() - startTime) / i).toFixed(0) : '?';
215
+ console.error(` Frame ${i}/${totalFrames - 1} (${pct}%) t=${t.toFixed(2)}s [${elapsed}s, ${msPerFrame}ms/frame]`);
216
+ }
217
+ }
218
+ // Close stdin to signal EOF, wait for ffmpeg to finish
219
+ ffmpeg.stdin.end();
220
+ await ffmpegPromise;
221
+ const renderTime = ((Date.now() - startTime) / 1000).toFixed(1);
222
+ const { statSync } = await import('fs');
223
+ const stats = statSync(outputFile);
224
+ const sizeMB = (stats.size / 1024 / 1024).toFixed(1);
225
+ const totalTime = ((Date.now() - startTime) / 1000).toFixed(1);
226
+ console.error(` Video: ${outputFile} (${sizeMB}MB, ${totalTime}s total)`);
227
+ const report = {
228
+ input: opts.inputFile,
229
+ output: outputFile,
230
+ duration_seconds: maxTime,
231
+ fps: opts.fps,
232
+ total_frames: totalFrames,
233
+ resolution: { width: opts.width, height: opts.height },
234
+ file_size_mb: parseFloat(sizeMB),
235
+ render_time_seconds: parseFloat(renderTime),
236
+ total_time_seconds: parseFloat(totalTime),
237
+ };
238
+ console.log(JSON.stringify(report, null, 2));
7
239
  }
8
240
  //# sourceMappingURL=scene.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"scene.js","sourceRoot":"","sources":["../../cli/scene.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,QAAQ,CAAC,KAAe;IAC1C,OAAO,CAAC,KAAK,CAAC,sCAAsC,CAAC,CAAC;IACtD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACpB,CAAC"}
1
+ {"version":3,"file":"scene.js","sourceRoot":"","sources":["../../cli/scene.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"animationDiff.d.ts","sourceRoot":"","sources":["../../modules/animationDiff.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAE3C;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;AAEzC;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG,SAAS,EAAE,CAAC;AAE7C;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACjC,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,SAAS,CAAC;IACrB,KAAK,EAAE,CAAC,SAAS,GAAG,IAAI,CAAC,EAAE,CAAC;CAC/B;AAED;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,kBAAkB,GAAG,oBAAoB,CAAC;AAEtE;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC7B,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,gBAAgB,EAAE,MAAM,CAAC;CAC5B;AA6FD;;;;GAIG;AACH,eAAO,MAAM,wBAAwB,GAAI,QAAQ,SAAS,EAAE,KAAG,kBAiB9D,CAAC;AA+BF;;;;;;;GAOG;AACH,eAAO,MAAM,wBAAwB,GAAI,oBAAoB,aAAa,KAAG,SAAS,EAyCrF,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,yBAAyB,GAClC,gBAAgB,SAAS,EAAE,EAC3B,oBAAoB,kBAAkB,KACvC,gBAWF,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,0BAA0B,GAAI,oBAAoB,aAAa,KAAG,OAmB9E,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB,GAAI,eAAe,GAAG,KAAG,aAAa,IAAI,aAgDvE,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,aAAa,GAAI,eAAe,GAAG,KAAG,SAAS,EAiB3D,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB,GAAI,QAAQ,SAAS,EAAE,EAAE,YAAW,OAAc,KAAG,kBASpF,CAAC"}
1
+ {"version":3,"file":"animationDiff.d.ts","sourceRoot":"","sources":["../../modules/animationDiff.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAE3C;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;AAEzC;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG,SAAS,EAAE,CAAC;AAE7C;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACjC,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,SAAS,CAAC;IACrB,KAAK,EAAE,CAAC,SAAS,GAAG,IAAI,CAAC,EAAE,CAAC;CAC/B;AAED;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,kBAAkB,GAAG,oBAAoB,CAAC;AAEtE;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC7B,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,gBAAgB,EAAE,MAAM,CAAC;CAC5B;AA8FD;;;;GAIG;AACH,eAAO,MAAM,wBAAwB,GAAI,QAAQ,SAAS,EAAE,KAAG,kBAiB9D,CAAC;AA+BF;;;;;;;GAOG;AACH,eAAO,MAAM,wBAAwB,GAAI,oBAAoB,aAAa,KAAG,SAAS,EAyCrF,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,yBAAyB,GAClC,gBAAgB,SAAS,EAAE,EAC3B,oBAAoB,kBAAkB,KACvC,gBAWF,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,0BAA0B,GAAI,oBAAoB,aAAa,KAAG,OAmB9E,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB,GAAI,eAAe,GAAG,KAAG,aAAa,IAAI,aAgDvE,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,aAAa,GAAI,eAAe,GAAG,KAAG,SAAS,EAiB3D,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB,GAAI,QAAQ,SAAS,EAAE,EAAE,YAAW,OAAc,KAAG,kBASpF,CAAC"}
@@ -51,6 +51,7 @@ const createFrameDiff = (prevFrame, currentFrame) => {
51
51
  let hasChanges = false;
52
52
  // Properties that might change between frames
53
53
  const diffableProps = [
54
+ 'angleValues',
54
55
  'rotationValues',
55
56
  'selfRotationValues',
56
57
  'dimensionValues',
@@ -1 +1 @@
1
- {"version":3,"file":"animationDiff.js","sourceRoot":"","sources":["../../modules/animationDiff.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"animationDiff.js","sourceRoot":"","sources":["../../modules/animationDiff.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"browserSceneRenderer.d.ts","sourceRoot":"","sources":["../../modules/browserSceneRenderer.ts"],"names":[],"mappings":"AACA,OAAO,EAAiB,KAAK,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAEnE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAM3C,MAAM,MAAM,gBAAgB,GAAG,SAAS,CAAC;AAEzC,MAAM,WAAW,2BAA2B;IACxC,uBAAuB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC;IAC9D,eAAe,CAAC,EAAE,MAAM,CAAC;CAC5B;AAuHD,qBAAa,oBAAoB;IAC7B,OAAO,CAAC,KAAK,CAAmB;IAChC,OAAO,CAAC,UAAU,CAA0B;IAC5C,OAAO,CAAC,SAAS,CAA4C;IAC7D,OAAO,CAAC,uBAAuB,CAAsC;IACrE,OAAO,CAAC,eAAe,CAAS;IAChC,OAAO,CAAC,aAAa,CAA6B;gBAEtC,KAAK,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,GAAE,2BAAgC;YAcrG,kBAAkB;IAQhC,OAAO,CAAC,kBAAkB;IAmE1B,OAAO,CAAC,aAAa;IAcf,WAAW,CAAC,MAAM,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CA2C5E"}
1
+ {"version":3,"file":"browserSceneRenderer.d.ts","sourceRoot":"","sources":["../../modules/browserSceneRenderer.ts"],"names":[],"mappings":"AACA,OAAO,EAAiB,KAAK,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAEnE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAM3C,MAAM,MAAM,gBAAgB,GAAG,SAAS,CAAC;AAEzC,MAAM,WAAW,2BAA2B;IACxC,uBAAuB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC;IAC9D,eAAe,CAAC,EAAE,MAAM,CAAC;CAC5B;AAsID,qBAAa,oBAAoB;IAC7B,OAAO,CAAC,KAAK,CAAmB;IAChC,OAAO,CAAC,UAAU,CAA0B;IAC5C,OAAO,CAAC,SAAS,CAA4C;IAC7D,OAAO,CAAC,uBAAuB,CAAsC;IACrE,OAAO,CAAC,eAAe,CAAS;IAChC,OAAO,CAAC,aAAa,CAA6B;gBAEtC,KAAK,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,GAAE,2BAAgC;YAcrG,kBAAkB;IAQhC,OAAO,CAAC,kBAAkB;IAiF1B,OAAO,CAAC,aAAa;IAcf,WAAW,CAAC,MAAM,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CA2C5E"}
@@ -12,13 +12,26 @@ function lerpAngle(start, end, t) {
12
12
  function lerp(a, b, t) {
13
13
  return a + (b - a) * t;
14
14
  }
15
+ function lerpAngleDegrees(start, end, t) {
16
+ let diff = end - start;
17
+ diff = diff - Math.round(diff / 360) * 360;
18
+ return start + diff * t;
19
+ }
15
20
  function interpolatePose(startPose, endPose, progress) {
16
21
  const interp = {
22
+ angleValues: {},
17
23
  rotationValues: {},
18
24
  selfRotationValues: {},
19
25
  dimensionValues: {},
20
26
  pivotPoints: {}
21
27
  };
28
+ if (startPose.angleValues) {
29
+ for (const part of Object.keys(startPose.angleValues)) {
30
+ const sv = startPose.angleValues[part] ?? 0;
31
+ const ev = endPose.angleValues?.[part] ?? sv;
32
+ interp.angleValues[part] = lerpAngleDegrees(sv, ev, progress);
33
+ }
34
+ }
22
35
  if (startPose.rotationValues) {
23
36
  for (const part of Object.keys(startPose.rotationValues)) {
24
37
  const sv = startPose.rotationValues[part] ?? 0;
@@ -169,6 +182,18 @@ export class BrowserSceneRenderer {
169
182
  rotationValues: { ...frameRig.rotationValues, ...variation.rotationValues }
170
183
  };
171
184
  }
185
+ if (variation.angleValues) {
186
+ frameRig = {
187
+ ...frameRig,
188
+ angleValues: { ...frameRig.angleValues, ...variation.angleValues }
189
+ };
190
+ }
191
+ if (variation.svgParallaxConfig) {
192
+ frameRig = {
193
+ ...frameRig,
194
+ svgParallaxConfig: { ...frameRig.svgParallaxConfig, ...variation.svgParallaxConfig }
195
+ };
196
+ }
172
197
  if (variation.dimensionValues) {
173
198
  frameRig = {
174
199
  ...frameRig,
@@ -189,6 +214,7 @@ export class BrowserSceneRenderer {
189
214
  const interp = interpolatePose(startPose, endPose, frameFrac);
190
215
  frameRig = {
191
216
  ...frameRig,
217
+ angleValues: { ...frameRig.angleValues, ...interp.angleValues },
192
218
  rotationValues: { ...frameRig.rotationValues, ...interp.rotationValues },
193
219
  selfRotationValues: { ...frameRig.selfRotationValues, ...interp.selfRotationValues },
194
220
  pivotPoints: { ...frameRig.pivotPoints, ...interp.pivotPoints },
@@ -199,6 +225,7 @@ export class BrowserSceneRenderer {
199
225
  const f = frames[0];
200
226
  frameRig = {
201
227
  ...frameRig,
228
+ angleValues: { ...frameRig.angleValues, ...(f.angleValues || {}) },
202
229
  rotationValues: { ...frameRig.rotationValues, ...(f.rotationValues || {}) },
203
230
  selfRotationValues: { ...frameRig.selfRotationValues, ...(f.selfRotationValues || {}) },
204
231
  pivotPoints: { ...frameRig.pivotPoints, ...(f.pivotPoints || {}) },
@@ -1 +1 @@
1
- {"version":3,"file":"browserSceneRenderer.js","sourceRoot":"","sources":["../../modules/browserSceneRenderer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"browserSceneRenderer.js","sourceRoot":"","sources":["../../modules/browserSceneRenderer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,41 @@
1
+ /**
2
+ * Character Validator
3
+ *
4
+ * Validates a character rig JSON object and returns a list of issues.
5
+ * Errors = character will not work correctly.
6
+ * Warnings = character may look wrong or have limited expressiveness.
7
+ *
8
+ * This is the single source of truth for what constitutes a valid character.
9
+ * The Ruby mirror in app/models/artifact/character.rb implements the same rules.
10
+ */
11
+ export type IssueSeverity = 'error' | 'warning';
12
+ export type IssueCategory = 'parts' | 'eyes' | 'mouth' | 'pivots' | 'zIndex' | 'dimensions';
13
+ export interface ValidationIssue {
14
+ field: string;
15
+ message: string;
16
+ severity: IssueSeverity;
17
+ category: IssueCategory;
18
+ }
19
+ export interface CharacterValidationResult {
20
+ /** true only when there are zero errors (warnings are allowed) */
21
+ valid: boolean;
22
+ issues: ValidationIssue[];
23
+ }
24
+ /** The 12 body part image paths every character must have */
25
+ export declare const REQUIRED_BODY_PARTS: readonly ["head", "torso", "leftUpperArm", "leftForearm", "leftHand", "rightUpperArm", "rightForearm", "rightHand", "leftThigh", "leftLeg", "rightThigh", "rightLeg"];
26
+ /** The 13 pivot point connections that chain all limbs */
27
+ export declare const REQUIRED_PIVOT_POINTS: readonly ["root_torso", "torso_head", "head_mouth", "torso_leftUpperArm", "leftUpperArm_leftForearm", "leftForearm_leftHand", "torso_rightUpperArm", "rightUpperArm_rightForearm", "rightForearm_rightHand", "torso_leftThigh", "leftThigh_leftLeg", "torso_rightThigh", "rightThigh_rightLeg"];
28
+ /** Every part that must have a z-index value */
29
+ export declare const REQUIRED_Z_INDEX_PARTS: readonly ["head", "mouth", "torso", "leftEye", "leftIris", "leftEyeLid", "rightEye", "rightIris", "rightEyeLid", "leftUpperArm", "leftForearm", "leftHand", "rightUpperArm", "rightForearm", "rightHand", "leftThigh", "leftLeg", "rightThigh", "rightLeg"];
30
+ /** Eye image hash fields required in the eyes object */
31
+ export declare const REQUIRED_EYE_IMAGES: readonly ["leftEyeImage", "rightEyeImage", "leftIris", "rightIris", "leftEyeLidOpen", "rightEyeLidOpen", "leftEyeLidHalfClosed", "rightEyeLidHalfClosed", "leftEyeLidClosed", "rightEyeLidClosed"];
32
+ /** Eye coordinate fields that must be numbers */
33
+ export declare const REQUIRED_EYE_COORDS: readonly ["leftEyeXCoor", "leftEyeYCoor", "rightEyeXCoor", "rightEyeYCoor", "leftEyeLidXCoor", "leftEyeLidYCoor", "rightEyeLidXCoor", "rightEyeLidYCoor", "leftIrisXCoor", "leftIrisYCoor", "rightIrisXCoor", "rightIrisYCoor"];
34
+ /** Iris size fields that must be positive numbers */
35
+ export declare const REQUIRED_IRIS_SIZES: readonly ["leftIrisWidth", "leftIrisHeight", "rightIrisWidth", "rightIrisHeight"];
36
+ /** Parts that must have a dimensionValues entry with width > 0 and height > 0 */
37
+ export declare const REQUIRED_DIMENSION_PARTS: readonly ["head", "torso", "mouth", "leftUpperArm", "leftForearm", "leftHand", "rightUpperArm", "rightForearm", "rightHand", "leftThigh", "leftLeg", "rightThigh", "rightLeg"];
38
+ /** Mouth shapes that represent the character talking */
39
+ export declare const TALKING_MOUTH_SHAPES: readonly ["open", "half-open", "wide-open", "slightly-open", "f", "l", "ds", "ee", "eh"];
40
+ export declare function validateCharacter(data: unknown): CharacterValidationResult;
41
+ //# sourceMappingURL=characterValidator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"characterValidator.d.ts","sourceRoot":"","sources":["../../modules/characterValidator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,MAAM,MAAM,aAAa,GAAG,OAAO,GAAG,SAAS,CAAC;AAChD,MAAM,MAAM,aAAa,GAAG,OAAO,GAAG,MAAM,GAAG,OAAO,GAAG,QAAQ,GAAG,QAAQ,GAAG,YAAY,CAAC;AAE5F,MAAM,WAAW,eAAe;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,aAAa,CAAC;IACxB,QAAQ,EAAE,aAAa,CAAC;CAC3B;AAED,MAAM,WAAW,yBAAyB;IACtC,kEAAkE;IAClE,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,eAAe,EAAE,CAAC;CAC7B;AAID,6DAA6D;AAC7D,eAAO,MAAM,mBAAmB,uKAMtB,CAAC;AAEX,0DAA0D;AAC1D,eAAO,MAAM,qBAAqB,iSAMxB,CAAC;AAEX,gDAAgD;AAChD,eAAO,MAAM,sBAAsB,6PAQzB,CAAC;AAEX,wDAAwD;AACxD,eAAO,MAAM,mBAAmB,oMAMtB,CAAC;AAEX,iDAAiD;AACjD,eAAO,MAAM,mBAAmB,iOAOtB,CAAC;AAEX,qDAAqD;AACrD,eAAO,MAAM,mBAAmB,mFAGtB,CAAC;AAEX,iFAAiF;AACjF,eAAO,MAAM,wBAAwB,gLAM3B,CAAC;AAEX,wDAAwD;AACxD,eAAO,MAAM,oBAAoB,0FAEvB,CAAC;AAyBX,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,OAAO,GAAG,yBAAyB,CAoL1E"}