ugly-app 0.1.1000 → 0.1.1002

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/character/client/CharacterCanvas.d.ts +15 -0
  2. package/dist/character/client/CharacterCanvas.d.ts.map +1 -1
  3. package/dist/character/client/CharacterCanvas.js +166 -11
  4. package/dist/character/client/CharacterCanvas.js.map +1 -1
  5. package/dist/character/client/CharacterCreator.d.ts +2 -2
  6. package/dist/character/client/CharacterCreator.d.ts.map +1 -1
  7. package/dist/character/client/CharacterCreator.js +128 -1
  8. package/dist/character/client/CharacterCreator.js.map +1 -1
  9. package/dist/character/client/lib/characterDebugOverlay.d.ts +42 -0
  10. package/dist/character/client/lib/characterDebugOverlay.d.ts.map +1 -0
  11. package/dist/character/client/lib/characterDebugOverlay.js +64 -0
  12. package/dist/character/client/lib/characterDebugOverlay.js.map +1 -0
  13. package/dist/character/client/lib/characterScene.d.ts +43 -1
  14. package/dist/character/client/lib/characterScene.d.ts.map +1 -1
  15. package/dist/character/client/lib/characterScene.js +104 -29
  16. package/dist/character/client/lib/characterScene.js.map +1 -1
  17. package/dist/character/client/lib/previewCharacterController.d.ts +18 -0
  18. package/dist/character/client/lib/previewCharacterController.d.ts.map +1 -0
  19. package/dist/character/client/lib/previewCharacterController.js +80 -0
  20. package/dist/character/client/lib/previewCharacterController.js.map +1 -0
  21. package/dist/character/client/lib/tryOutInput.d.ts +32 -0
  22. package/dist/character/client/lib/tryOutInput.d.ts.map +1 -0
  23. package/dist/character/client/lib/tryOutInput.js +40 -0
  24. package/dist/character/client/lib/tryOutInput.js.map +1 -0
  25. package/dist/character/game/index.d.ts +367 -0
  26. package/dist/character/game/index.d.ts.map +1 -0
  27. package/dist/character/game/index.js +1161 -0
  28. package/dist/character/game/index.js.map +1 -0
  29. package/dist/cli/version.d.ts +1 -1
  30. package/dist/cli/version.js +1 -1
  31. package/dist/markdown/client/ProseMirrorEditor/schema.d.ts +2 -2
  32. package/package.json +3 -2
  33. package/src/character/client/CharacterCanvas.tsx +265 -9
  34. package/src/character/client/CharacterCreator.tsx +428 -3
  35. package/src/character/client/lib/characterDebugOverlay.ts +118 -0
  36. package/src/character/client/lib/characterScene.ts +148 -37
  37. package/src/character/client/lib/previewCharacterController.ts +92 -0
  38. package/src/character/client/lib/tryOutInput.ts +69 -0
  39. package/src/character/game/index.ts +1676 -0
  40. package/src/cli/version.ts +1 -1
@@ -2,6 +2,7 @@ import type { CharacterSpec } from '../shared/spec.js';
2
2
  import type { CharKitFacts } from '../shared/lib/charSpec.js';
3
3
  import { type FbxClipIndex } from './lib/fbxClips.js';
4
4
  import type { CharacterKitSource } from './lib/kitSource.js';
5
+ import { type CharacterTrace, type GameCharacter, type ReplayCharacterTraceResult } from '../game/index.js';
5
6
  /** The framings the canvas knows. `full` head-to-toe, `head` shoulders-up, `face` for a thumbnail. */
6
7
  export type CharacterCameraPreset = 'full' | 'head' | 'face';
7
8
  export interface CharacterCanvasProps {
@@ -26,6 +27,8 @@ export interface CharacterCanvasProps {
26
27
  * the face to the idle blink.
27
28
  */
28
29
  faceWeights?: Float32Array | null | undefined;
30
+ /** Draw live support-root, room, controller capsule, contact and posed-socket diagnostics. */
31
+ debugOverlays?: boolean | undefined;
29
32
  className?: string | undefined;
30
33
  /**
31
34
  * Fires once, when the character is ASSEMBLED — body, face parts, hair and garments have all
@@ -67,6 +70,18 @@ export interface CharacterCanvasHandle {
67
70
  x: number;
68
71
  y: number;
69
72
  }): void;
73
+ /** The same actor used by a game; available after WebGPU initialization. */
74
+ character(): GameCharacter | null;
75
+ /** Restore the creator's collision-free Try Out room to its spawn state. */
76
+ resetTryOut(): void;
77
+ /** Move relative to the actor's current facing through `GameCharacter.moveTo()`. */
78
+ moveTryOut(direction: 'forward' | 'back' | 'left' | 'right', speed: 'walk' | 'run'): void;
79
+ /** Turn the preview controller in place; games normally obtain this from their KCC. */
80
+ turnTryOut(deltaDeg: number): void;
81
+ /** Jump through `GameCharacter.jump()` and select a matching preview clip when available. */
82
+ jumpTryOut(): void;
83
+ exportTryOutTrace(): CharacterTrace | null;
84
+ replayTryOutTrace(): ReplayCharacterTraceResult | null;
70
85
  /** The canvas element, for callers that need their own readback. */
71
86
  canvas(): HTMLCanvasElement | null;
72
87
  }
@@ -1 +1 @@
1
- {"version":3,"file":"CharacterCanvas.d.ts","sourceRoot":"","sources":["../../../src/character/client/CharacterCanvas.tsx"],"names":[],"mappings":"AA0BA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAS9D,OAAO,EAAe,KAAK,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACnE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAE7D,sGAAsG;AACtG,MAAM,MAAM,qBAAqB,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;AAE7D,MAAM,WAAW,oBAAoB;IACnC,kEAAkE;IAClE,MAAM,EAAE,kBAAkB,CAAC;IAC3B,kFAAkF;IAClF,IAAI,EAAE,aAAa,CAAC;IACpB;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IACjC,4EAA4E;IAC5E,KAAK,CAAC,EAAE,YAAY,GAAG,SAAS,CAAC;IACjC,6DAA6D;IAC7D,MAAM,CAAC,EAAE,qBAAqB,GAAG,SAAS,CAAC;IAC3C,sEAAsE;IACtE,GAAG,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACzB;;;;OAIG;IACH,WAAW,CAAC,EAAE,YAAY,GAAG,IAAI,GAAG,SAAS,CAAC;IAC9C,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B;;;;;;;OAOG;IACH,OAAO,CAAC,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,SAAS,CAAC;IACnC,yFAAyF;IACzF,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;IAC/C;;;;OAIG;IACH,OAAO,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;IACtD,sEAAsE;IACtE,OAAO,CAAC,EAAE,CAAC,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;CACnD;AAED,MAAM,WAAW,yBAAyB;IACxC,oEAAoE;IACpE,MAAM,CAAC,EAAE,qBAAqB,GAAG,SAAS,CAAC;IAC3C,iFAAiF;IACjF,GAAG,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC1B;AAED,MAAM,WAAW,qBAAqB;IACpC;;;;;;OAMG;IACH,gBAAgB,CAAC,IAAI,CAAC,EAAE,yBAAyB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAClE,qFAAqF;IACrF,OAAO,CAAC,CAAC,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAC3C,oEAAoE;IACpE,MAAM,IAAI,iBAAiB,GAAG,IAAI,CAAC;CACpC;AA+FD,eAAO,MAAM,eAAe,wHA6jB1B,CAAC"}
1
+ {"version":3,"file":"CharacterCanvas.d.ts","sourceRoot":"","sources":["../../../src/character/client/CharacterCanvas.tsx"],"names":[],"mappings":"AA0BA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAS9D,OAAO,EAGL,KAAK,YAAY,EAClB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,EAGL,KAAK,cAAc,EACnB,KAAK,aAAa,EAGlB,KAAK,0BAA0B,EAChC,MAAM,kBAAkB,CAAC;AAO1B,sGAAsG;AACtG,MAAM,MAAM,qBAAqB,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;AAE7D,MAAM,WAAW,oBAAoB;IACnC,kEAAkE;IAClE,MAAM,EAAE,kBAAkB,CAAC;IAC3B,kFAAkF;IAClF,IAAI,EAAE,aAAa,CAAC;IACpB;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IACjC,4EAA4E;IAC5E,KAAK,CAAC,EAAE,YAAY,GAAG,SAAS,CAAC;IACjC,6DAA6D;IAC7D,MAAM,CAAC,EAAE,qBAAqB,GAAG,SAAS,CAAC;IAC3C,sEAAsE;IACtE,GAAG,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACzB;;;;OAIG;IACH,WAAW,CAAC,EAAE,YAAY,GAAG,IAAI,GAAG,SAAS,CAAC;IAC9C,8FAA8F;IAC9F,aAAa,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACpC,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B;;;;;;;OAOG;IACH,OAAO,CAAC,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,SAAS,CAAC;IACnC,yFAAyF;IACzF,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;IAC/C;;;;OAIG;IACH,OAAO,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;IACtD,sEAAsE;IACtE,OAAO,CAAC,EAAE,CAAC,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;CACnD;AAED,MAAM,WAAW,yBAAyB;IACxC,oEAAoE;IACpE,MAAM,CAAC,EAAE,qBAAqB,GAAG,SAAS,CAAC;IAC3C,iFAAiF;IACjF,GAAG,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC1B;AAED,MAAM,WAAW,qBAAqB;IACpC;;;;;;OAMG;IACH,gBAAgB,CAAC,IAAI,CAAC,EAAE,yBAAyB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAClE,qFAAqF;IACrF,OAAO,CAAC,CAAC,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAC3C,4EAA4E;IAC5E,SAAS,IAAI,aAAa,GAAG,IAAI,CAAC;IAClC,4EAA4E;IAC5E,WAAW,IAAI,IAAI,CAAC;IACpB,oFAAoF;IACpF,UAAU,CACR,SAAS,EAAE,SAAS,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,EAChD,KAAK,EAAE,MAAM,GAAG,KAAK,GACpB,IAAI,CAAC;IACR,uFAAuF;IACvF,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,6FAA6F;IAC7F,UAAU,IAAI,IAAI,CAAC;IACnB,iBAAiB,IAAI,cAAc,GAAG,IAAI,CAAC;IAC3C,iBAAiB,IAAI,0BAA0B,GAAG,IAAI,CAAC;IACvD,oEAAoE;IACpE,MAAM,IAAI,iBAAiB,GAAG,IAAI,CAAC;CACpC;AAiHD,eAAO,MAAM,eAAe,wHAwwB1B,CAAC"}
@@ -26,7 +26,10 @@ import { loadCharParts } from './lib/charParts.js';
26
26
  import { loadHairMeshes } from './lib/charHair.js';
27
27
  import { loadGarments } from './lib/charGarment.js';
28
28
  import { makeGarmentCache } from './lib/skinTextures.js';
29
- import { loadFbxClip } from './lib/fbxClips.js';
29
+ import { fbxClipNames, loadFbxClip, } from './lib/fbxClips.js';
30
+ import { createGameCharacterWorld, replayCharacterTrace, } from '../game/index.js';
31
+ import { PreviewCharacterController } from './lib/previewCharacterController.js';
32
+ import { buildCharacterDebugOverlay, } from './lib/characterDebugOverlay.js';
30
33
  /**
31
34
  * The loading cover's own two rules.
32
35
  *
@@ -58,6 +61,16 @@ const CLEAR = [0.05, 0.06, 0.09];
58
61
  const CLEAR_CSS = `rgb(${CLEAR.map((c) => Math.round(c * 255)).join(', ')})`;
59
62
  const FOG = CLEAR;
60
63
  const FOG_DENSITY = 0;
64
+ function multiplyQuat(a, b) {
65
+ const [ax, ay, az, aw] = a;
66
+ const [bx, by, bz, bw] = b;
67
+ return [
68
+ aw * bx + ax * bw + ay * bz - az * by,
69
+ aw * by - ax * bz + ay * bw + az * bx,
70
+ aw * bz + ax * by - ay * bx + az * bw,
71
+ aw * bw - ax * bx - ay * by - az * bz,
72
+ ];
73
+ }
61
74
  /** Distance at which a sphere of `radius` fills the frame at this aspect, with the lab's fit rule. */
62
75
  const fitDist = (radius, aspect) => radius / (Math.tan(FOV / 2) * Math.min(1, aspect));
63
76
  /**
@@ -86,9 +99,13 @@ function cameraGoal(preset, scene, aspect) {
86
99
  tgt,
87
100
  };
88
101
  }
89
- const tgt = [0, h * 0.52, 0];
102
+ const root = scene?.supportRoot ?? [0, 0, 0];
103
+ const tgt = [root[0], root[1] + h * 0.52, root[2]];
90
104
  const dist = fitDist(h * 0.58, aspect);
91
- return { eye: [dist * 0.32, h * 0.62, dist], tgt };
105
+ return {
106
+ eye: [root[0] + dist * 0.32, root[1] + h * 0.62, root[2] + dist],
107
+ tgt,
108
+ };
92
109
  }
93
110
  /** A warm key light from over the camera's shoulder — the char lab's offset, kept. */
94
111
  function sunDir(eye, tgt) {
@@ -98,12 +115,13 @@ function sunDir(eye, tgt) {
98
115
  const l = Math.hypot(dx, dy, dz) || 1;
99
116
  return [dx / l - 0.25, dy / l - 0.45, dz / l + 0.15];
100
117
  }
101
- export const CharacterCanvas = forwardRef(function CharacterCanvas({ source, spec, pose = null, anims, camera = 'full', yaw = 0, faceWeights = null, className, onReady, onTier, onFacts, onError, }, ref) {
118
+ export const CharacterCanvas = forwardRef(function CharacterCanvas({ source, spec, pose = null, anims, camera = 'full', yaw = 0, faceWeights = null, debugOverlays = false, className, onReady, onTier, onFacts, onError, }, ref) {
102
119
  const canvasRef = useRef(null);
103
120
  const gpuRef = useRef(null);
104
121
  const [err, setErr] = useState(null);
105
122
  /** False until the character is whole — drives the cover. See `createAssemblyGate`. */
106
123
  const [assembled, setAssembled] = useState(false);
124
+ const [debugOverlay, setDebugOverlay] = useState(null);
107
125
  // Latest-value refs, so the init effect and the frame loop never go stale and never re-run
108
126
  // for a callback the parent rebuilt.
109
127
  const specRef = useRef(spec);
@@ -131,6 +149,9 @@ export const CharacterCanvas = forwardRef(function CharacterCanvas({ source, spe
131
149
  onErrorRef.current = onError;
132
150
  const faceWeightsRef = useRef(faceWeights);
133
151
  faceWeightsRef.current = faceWeights;
152
+ const debugOverlaysRef = useRef(debugOverlays);
153
+ debugOverlaysRef.current = debugOverlays;
154
+ const debugUpdateMsRef = useRef(-Infinity);
134
155
  // Pose-driving state, in refs: the frame loop walks the scene toward `poseRef` (loading the
135
156
  // FBX lazily once the skeleton exists), so none of this may re-render.
136
157
  const appliedPoseRef = useRef(null);
@@ -151,7 +172,7 @@ export const CharacterCanvas = forwardRef(function CharacterCanvas({ source, spe
151
172
  * pose requested before it simply waits.
152
173
  */
153
174
  const ensurePoseClip = (scene, live) => {
154
- const want = poseRef.current;
175
+ const want = poseRef.current ?? gpuRef.current?.actor.state.animation?.id ?? null;
155
176
  if (want === appliedPoseRef.current)
156
177
  return;
157
178
  if (!want) {
@@ -266,11 +287,41 @@ export const CharacterCanvas = forwardRef(function CharacterCanvas({ source, spe
266
287
  canvas.height = Math.floor((canvas.clientHeight || 480) * dpr);
267
288
  ctx.configure({ device, format, alphaMode: 'opaque' });
268
289
  const scene = new CharacterScene(device, format);
290
+ const controller = new PreviewCharacterController();
291
+ const world = createGameCharacterWorld({
292
+ diagnostics: { level: 'trace' },
293
+ presentation: {
294
+ sync: ({ actors }) => {
295
+ const presented = actors[0];
296
+ if (!presented)
297
+ return;
298
+ const viewHalf = ((yawRef.current + orbitYawRef.current) * Math.PI) / 360;
299
+ scene.setWorldTransform({
300
+ position: presented.transform.position,
301
+ rotation: multiplyQuat(presented.transform.rotation, [
302
+ 0,
303
+ Math.sin(viewHalf),
304
+ 0,
305
+ Math.cos(viewHalf),
306
+ ]),
307
+ scale: presented.transform.scale,
308
+ });
309
+ scene.setSpec(presented.spec);
310
+ },
311
+ },
312
+ });
313
+ const actor = world.spawn(specRef.current, {
314
+ id: 'character-canvas-preview',
315
+ controller,
316
+ });
269
317
  const st = {
270
318
  device,
271
319
  ctx,
272
320
  scene,
273
321
  dpr,
322
+ world,
323
+ actor,
324
+ controller,
274
325
  depth: device.createTexture({
275
326
  size: [canvas.width, canvas.height],
276
327
  format: 'depth24plus',
@@ -278,7 +329,6 @@ export const CharacterCanvas = forwardRef(function CharacterCanvas({ source, spe
278
329
  }),
279
330
  };
280
331
  gpuRef.current = st;
281
- scene.setYaw(yawRef.current);
282
332
  if (faceWeightsRef.current)
283
333
  scene.setFaceWeights(faceWeightsRef.current);
284
334
  // ── THE ASSETS ──────────────────────────────────────────────────────────────────────
@@ -368,8 +418,9 @@ export const CharacterCanvas = forwardRef(function CharacterCanvas({ source, spe
368
418
  });
369
419
  }
370
420
  const aspect = w / h;
421
+ controller.update(dtMs);
422
+ world.update(dtMs);
371
423
  ensurePoseClip(scene, live);
372
- scene.setYaw(yawRef.current + orbitYawRef.current);
373
424
  // Per frame and idempotent, exactly like `setYaw`: the loop is created once and cannot
374
425
  // see later prop changes any other way.
375
426
  scene.setGround(true);
@@ -388,8 +439,27 @@ export const CharacterCanvas = forwardRef(function CharacterCanvas({ source, spe
388
439
  cam.tgt[i] = cam.tgt[i] + (goal.tgt[i] - cam.tgt[i]) * k;
389
440
  }
390
441
  scene.update(cam.eye, dtMs);
442
+ actor.setRenderState(scene.runtimeReport());
391
443
  scene.faceFrame();
392
444
  const camVP = new Float32Array(viewProjection(cam.eye, cam.tgt, FOV, aspect, 0.05, 60));
445
+ if (debugOverlaysRef.current &&
446
+ nowMs - debugUpdateMsRef.current >= 100) {
447
+ debugUpdateMsRef.current = nowMs;
448
+ const transform = actor.getTransform();
449
+ setDebugOverlay(buildCharacterDebugOverlay({
450
+ root: transform.position,
451
+ up: transform.up,
452
+ grounded: actor.state.grounded,
453
+ capsule: {
454
+ radiusM: Math.max(0.2, scene.bodyHeight * 0.18),
455
+ heightM: scene.bodyHeight,
456
+ },
457
+ sockets: scene.debugRigReport().sockets,
458
+ }, camVP, c.clientWidth || 640, c.clientHeight || 480));
459
+ }
460
+ else if (!debugOverlaysRef.current && debugOverlay !== null) {
461
+ setDebugOverlay(null);
462
+ }
393
463
  const enc = device.createCommandEncoder();
394
464
  const drew = scene.frame(enc, ctx.getCurrentTexture().createView(), st.depth.createView(), camVP, sunDir(cam.eye, cam.tgt), SUN_COL, AMB, [cam.eye[0], cam.eye[1], cam.eye[2]], FOG, FOG_DENSITY, CLEAR);
395
465
  device.queue.submit([enc.finish()]);
@@ -410,6 +480,7 @@ export const CharacterCanvas = forwardRef(function CharacterCanvas({ source, spe
410
480
  const st = gpuRef.current;
411
481
  gpuRef.current = null;
412
482
  if (st) {
483
+ st.world.dispose();
413
484
  st.depth.destroy();
414
485
  st.device.destroy();
415
486
  }
@@ -423,11 +494,12 @@ export const CharacterCanvas = forwardRef(function CharacterCanvas({ source, spe
423
494
  // compares the spec, so a parent that rebuilds the object every render costs one JSON
424
495
  // stringify, not a re-morph.
425
496
  useEffect(() => {
426
- const scene = gpuRef.current?.scene;
427
- if (!scene)
497
+ const st = gpuRef.current;
498
+ if (!st)
428
499
  return;
429
500
  try {
430
- scene.setSpec(spec);
501
+ st.actor.setSpec(spec);
502
+ st.scene.setSpec(spec);
431
503
  }
432
504
  catch (e) {
433
505
  reportError(e instanceof Error ? e.message : String(e));
@@ -480,6 +552,72 @@ export const CharacterCanvas = forwardRef(function CharacterCanvas({ source, spe
480
552
  return blob;
481
553
  },
482
554
  setGaze: (g) => gpuRef.current?.scene.setGaze(g),
555
+ character: () => gpuRef.current?.actor ?? null,
556
+ resetTryOut: () => {
557
+ const st = gpuRef.current;
558
+ if (!st)
559
+ return;
560
+ st.actor.stopMoving('try out reset');
561
+ st.actor.stopAnimation('try out reset');
562
+ st.controller.reset();
563
+ },
564
+ moveTryOut: (direction, speed) => {
565
+ const st = gpuRef.current;
566
+ if (!st)
567
+ return;
568
+ const transform = st.actor.getTransform();
569
+ const a = (transform.facingDeg * Math.PI) / 180;
570
+ const forward = [Math.sin(a), 0, Math.cos(a)];
571
+ const right = [Math.cos(a), 0, -Math.sin(a)];
572
+ const axis = direction === 'forward'
573
+ ? forward
574
+ : direction === 'back'
575
+ ? forward.map((v) => -v)
576
+ : direction === 'right'
577
+ ? right
578
+ : right.map((v) => -v);
579
+ const move = st.actor.moveTo([
580
+ transform.position[0] + axis[0] * 2,
581
+ transform.position[1],
582
+ transform.position[2] + axis[2] * 2,
583
+ ], { speed });
584
+ const gait = animsRef.current
585
+ ? fbxClipNames(animsRef.current).find((id) => id.toLowerCase().includes(speed))
586
+ : undefined;
587
+ if (gait) {
588
+ st.actor.playAnimation(gait, { loop: true, layer: 'fullBody' });
589
+ void move.done.then(() => {
590
+ if (st.actor.state.animation?.id === gait)
591
+ st.actor.stopAnimation('movement ended');
592
+ });
593
+ }
594
+ },
595
+ turnTryOut: (deltaDeg) => gpuRef.current?.controller.turn(deltaDeg),
596
+ jumpTryOut: () => {
597
+ const st = gpuRef.current;
598
+ if (!st)
599
+ return;
600
+ const jump = st.actor.jump();
601
+ const clip = animsRef.current
602
+ ? fbxClipNames(animsRef.current).find((id) => id.toLowerCase().includes('jump'))
603
+ : undefined;
604
+ if (clip) {
605
+ st.actor.playAnimation(clip, { loop: false, layer: 'fullBody' });
606
+ void jump.done.then(() => {
607
+ if (st.actor.state.animation?.id === clip)
608
+ st.actor.stopAnimation('jump ended');
609
+ });
610
+ }
611
+ },
612
+ exportTryOutTrace: () => gpuRef.current?.world.exportTrace() ?? null,
613
+ replayTryOutTrace: () => {
614
+ const st = gpuRef.current;
615
+ if (!st)
616
+ return null;
617
+ return replayCharacterTrace(st.world.exportTrace(), {
618
+ specForActor: st.actor.spec,
619
+ });
620
+ },
483
621
  canvas: () => canvasRef.current,
484
622
  }), []);
485
623
  return (_jsxs("div", { className: className, "data-id": "character-canvas", style: {
@@ -527,7 +665,24 @@ export const CharacterCanvas = forwardRef(function CharacterCanvas({ source, spe
527
665
  return;
528
666
  orbitDragRef.current = null;
529
667
  e.currentTarget.style.cursor = 'grab';
530
- } }), !assembled && !err && (_jsxs("div", { role: "status", "data-id": "character-loading", className: "ucv-loading", style: {
668
+ } }), debugOverlays && debugOverlay && (_jsxs("div", { "data-id": "character-debug-overlay", "aria-label": "Character debug overlay", style: { position: 'absolute', inset: 0, pointerEvents: 'none' }, children: [_jsxs("svg", { "aria-hidden": "true", width: "100%", height: "100%", style: { position: 'absolute', inset: 0, overflow: 'visible' }, children: [debugOverlay.rootLine && (_jsx("line", { "data-id": "debug-support-up-line", x1: debugOverlay.rootLine.x1, y1: debugOverlay.rootLine.y1, x2: debugOverlay.rootLine.x2, y2: debugOverlay.rootLine.y2, stroke: "#4ade80", strokeWidth: "2" })), debugOverlay.capsule && (_jsx("rect", { "data-id": "debug-kcc-capsule", x: debugOverlay.capsule.left, y: debugOverlay.capsule.top, width: debugOverlay.capsule.width, height: debugOverlay.capsule.height, rx: debugOverlay.capsule.width / 2, fill: "none", stroke: "rgba(96,165,250,.9)", strokeDasharray: "4 3" }))] }), debugOverlay.marks.map((mark) => (_jsx("span", { "data-id": `debug-${mark.id}`, "data-debug-kind": mark.kind, style: {
669
+ position: 'absolute',
670
+ left: mark.x,
671
+ top: mark.y,
672
+ transform: 'translate(-50%, -50%)',
673
+ padding: mark.kind === 'room' ? '1px 4px' : '2px 5px',
674
+ borderRadius: 8,
675
+ color: mark.kind === 'contact'
676
+ ? '#fbbf24'
677
+ : mark.kind === 'socket'
678
+ ? '#f472b6'
679
+ : mark.kind === 'room'
680
+ ? 'rgba(255,255,255,.58)'
681
+ : '#4ade80',
682
+ background: 'rgba(5,8,12,.7)',
683
+ font: '10px/1.2 ui-monospace, monospace',
684
+ whiteSpace: 'nowrap',
685
+ }, children: mark.label }, mark.id)))] })), !assembled && !err && (_jsxs("div", { role: "status", "data-id": "character-loading", className: "ucv-loading", style: {
531
686
  // ⚠️ CONTENT-SIZED AND CENTRED, NOT `inset: 0`. Stretched across the stage this box
532
687
  // sits on top of every floating control — the save button, the pose dock, the floor
533
688
  // pill — and `__uglyInspect` counts each as an overlapping control (12 of them,
@@ -1 +1 @@
1
- {"version":3,"file":"CharacterCanvas.js","sourceRoot":"","sources":["../../../src/character/client/CharacterCanvas.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CharacterCanvas.js","sourceRoot":"","sources":["../../../src/character/client/CharacterCanvas.tsx"],"names":[],"mappings":"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"}
@@ -3,8 +3,8 @@ import { type FbxClipIndex } from './lib/fbxClips.js';
3
3
  import { type CharacterVoiceOption } from './lib/voiceCatalog.js';
4
4
  import { type GarmentSlot } from './lib/charGarment.js';
5
5
  import { type CharacterSpec } from '../shared/spec.js';
6
- /** The six categories, fixed by the approved mock. */
7
- export type CharacterCategory = 'basics' | 'body' | 'face' | 'hair' | 'outfit' | 'voice';
6
+ /** Authored appearance categories plus the runtime Try Out surface. */
7
+ export type CharacterCategory = 'basics' | 'body' | 'face' | 'hair' | 'outfit' | 'voice' | 'tryout';
8
8
  /** Everything the host needs to persist one character: the renderable spec plus its metadata. */
9
9
  export interface CharacterCreatorDraft {
10
10
  spec: CharacterSpec;
@@ -1 +1 @@
1
- {"version":3,"file":"CharacterCreator.d.ts","sourceRoot":"","sources":["../../../src/character/client/CharacterCreator.tsx"],"names":[],"mappings":"AAsCA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,EAAgB,KAAK,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEpE,OAAO,EAGL,KAAK,oBAAoB,EAC1B,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAiB,KAAK,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAyBvE,OAAO,EAA0B,KAAK,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAI/E,sDAAsD;AACtD,MAAM,MAAM,iBAAiB,GAC3B,QAAQ,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,QAAQ,GAAG,OAAO,CAAC;AAE3D,iGAAiG;AACjG,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,aAAa,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;CACd;AAID,YAAY,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAElE,oGAAoG;AACpG,MAAM,WAAW,sBAAsB;IACrC,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC5B;AAED,MAAM,WAAW,qBAAqB;IACpC,kFAAkF;IAClF,MAAM,EAAE,kBAAkB,CAAC;IAC3B,+FAA+F;IAC/F,KAAK,CAAC,EAAE,YAAY,GAAG,SAAS,CAAC;IACjC,WAAW,CAAC,EAAE,aAAa,GAAG,SAAS,CAAC;IACxC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACjC;;;OAGG;IACH,MAAM,CAAC,EAAE,SAAS,oBAAoB,EAAE,GAAG,SAAS,CAAC;IACrD,+DAA+D;IAC/D,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,qBAAqB,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;IAChE;;;;OAIG;IACH,MAAM,CAAC,EACH,CAAC,CAAC,KAAK,EAAE,qBAAqB,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,GACtE,SAAS,CAAC;IACd;;;;OAIG;IACH,iBAAiB,CAAC,EACd,CAAC,CACC,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,WAAW,KACd,OAAO,CAAC,sBAAsB,GAAG,IAAI,CAAC,CAAC,GAC5C,SAAS,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAChC;AAuwBD,wBAAgB,gBAAgB,CAAC,EAC/B,MAAM,EACN,KAAK,EACL,WAAW,EACX,WAAW,EACX,MAAM,EACN,QAAQ,EACR,MAAM,EACN,iBAAiB,EACjB,SAAS,GACV,EAAE,qBAAqB,+BA6pCvB"}
1
+ {"version":3,"file":"CharacterCreator.d.ts","sourceRoot":"","sources":["../../../src/character/client/CharacterCreator.tsx"],"names":[],"mappings":"AAsCA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,EAAgB,KAAK,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEpE,OAAO,EAGL,KAAK,oBAAoB,EAC1B,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAiB,KAAK,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAyBvE,OAAO,EAA0B,KAAK,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAU/E,uEAAuE;AACvE,MAAM,MAAM,iBAAiB,GAC3B,QAAQ,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,QAAQ,GAAG,OAAO,GAAG,QAAQ,CAAC;AAEtE,iGAAiG;AACjG,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,aAAa,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;CACd;AAID,YAAY,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAElE,oGAAoG;AACpG,MAAM,WAAW,sBAAsB;IACrC,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC5B;AAED,MAAM,WAAW,qBAAqB;IACpC,kFAAkF;IAClF,MAAM,EAAE,kBAAkB,CAAC;IAC3B,+FAA+F;IAC/F,KAAK,CAAC,EAAE,YAAY,GAAG,SAAS,CAAC;IACjC,WAAW,CAAC,EAAE,aAAa,GAAG,SAAS,CAAC;IACxC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACjC;;;OAGG;IACH,MAAM,CAAC,EAAE,SAAS,oBAAoB,EAAE,GAAG,SAAS,CAAC;IACrD,+DAA+D;IAC/D,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,qBAAqB,KAAK,IAAI,CAAC,GAAG,SAAS,CAAC;IAChE;;;;OAIG;IACH,MAAM,CAAC,EACH,CAAC,CAAC,KAAK,EAAE,qBAAqB,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,GACtE,SAAS,CAAC;IACd;;;;OAIG;IACH,iBAAiB,CAAC,EACd,CAAC,CACC,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,WAAW,KACd,OAAO,CAAC,sBAAsB,GAAG,IAAI,CAAC,CAAC,GAC5C,SAAS,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAChC;AA+wBD,wBAAgB,gBAAgB,CAAC,EAC/B,MAAM,EACN,KAAK,EACL,WAAW,EACX,WAAW,EACX,MAAM,EACN,QAAQ,EACR,MAAM,EACN,iBAAiB,EACjB,SAAS,GACV,EAAE,qBAAqB,+BAwjDvB"}