distark-render 1.1.17 → 1.1.18

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.
@@ -48,6 +48,14 @@ export interface PerEyeMovementRanges {
48
48
  x: number;
49
49
  y: number;
50
50
  }>;
51
+ leftRaw: DirectionalRanges;
52
+ rightRaw: DirectionalRanges;
53
+ }
54
+ export interface DirectionalRanges {
55
+ negX: number;
56
+ posX: number;
57
+ negY: number;
58
+ posY: number;
51
59
  }
52
60
  /**
53
61
  * EyeSystem class - Manages eye animation, blinking, and gaze for characters
@@ -68,8 +76,8 @@ export declare class EyeSystem {
68
76
  /**
69
77
  * Max pixel range for manual positions (-2 to 2 scale) - used in setManualIrisPositions
70
78
  */
71
- private readonly leftManualScale;
72
- private readonly rightManualScale;
79
+ private _leftManualScale;
80
+ private _rightManualScale;
73
81
  /**
74
82
  * Creates a new EyeSystem instance
75
83
  * @param characterId - Unique identifier for the character
@@ -183,6 +191,21 @@ export declare class EyeSystem {
183
191
  y: number;
184
192
  };
185
193
  }, currentTime: number): void;
194
+ /**
195
+ * Raw per-direction ranges for each eye.
196
+ * Used by external preview code (e.g. calculatePreviewPosition) to normalize
197
+ * mouse offsets to the -2..+2 scale using the same asymmetric limits.
198
+ */
199
+ getDirectionalRanges(): {
200
+ left: DirectionalRanges;
201
+ right: DirectionalRanges;
202
+ };
203
+ /**
204
+ * Symmetric manual scale factor (min of left/right) for backward compatibility.
205
+ * Body.js reads this property to detect and override broken scales.
206
+ */
207
+ get manualScaleFactor(): number;
208
+ set manualScaleFactor(value: number);
186
209
  /**
187
210
  * Get debug info
188
211
  */
@@ -198,5 +221,9 @@ export declare function createEyeSystem(characterId: string, eyeDataOrRigData: E
198
221
  eyeSockets?: EyeSockets;
199
222
  headWidth?: number;
200
223
  headHeight?: number;
224
+ headJointOffset?: {
225
+ x: number;
226
+ y: number;
227
+ };
201
228
  }): EyeSystem;
202
229
  //# sourceMappingURL=eyeSystem.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"eyeSystem.d.ts","sourceRoot":"","sources":["../../modules/eyeSystem.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"eyeSystem.d.ts","sourceRoot":"","sources":["../../modules/eyeSystem.ts"],"names":[],"mappings":"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"}
@@ -35,7 +35,11 @@ function computeMovementRangesFromSockets(eyeSockets, headWidth = 100, headHeigh
35
35
  const hasLeft = left && left.length >= 3;
36
36
  const hasRight = right && right.length >= 3;
37
37
  if (!hasLeft && !hasRight) {
38
- return { left: { ...DEFAULT_MOVEMENT_RANGES }, right: { ...DEFAULT_MOVEMENT_RANGES } };
38
+ const defaultRaw = { negX: 5, posX: 5, negY: 3, posY: 3 };
39
+ return {
40
+ left: { ...DEFAULT_MOVEMENT_RANGES }, right: { ...DEFAULT_MOVEMENT_RANGES },
41
+ leftRaw: { ...defaultRaw }, rightRaw: { ...defaultRaw },
42
+ };
39
43
  }
40
44
  // Detect whether socket values are 0-100 percentages or raw pixels.
41
45
  const allPts = [...(left || []), ...(right || [])];
@@ -43,14 +47,14 @@ function computeMovementRangesFromSockets(eyeSockets, headWidth = 100, headHeigh
43
47
  const isPercent = maxCoord > 0 && maxCoord <= 100;
44
48
  const jx = headJointOffset?.x || 0;
45
49
  const jy = headJointOffset?.y || 0;
50
+ const toPixels = (val, dim) => isPercent ? (val / 100) * dim : val;
46
51
  /**
47
- * Map a socket percentage point to iris coordinate space
48
- * (headBaseTransform / headParentTransform local coordinates).
52
+ * Map a socket percentage point to iris coordinate space (headBaseTransform-local).
49
53
  *
50
- * The head image is drawn at headTransform which is offset from
51
- * headBaseTransform by (jointOffset.x, jointOffset.y - headHeight/2).
52
- * Within the head image, percentage (px, py) maps to local pixel
53
- * ((px/100 - 0.5) * headWidth, (py/100 - 0.5) * headHeight).
54
+ * The head image is drawn at headTransform = headBaseTransform + (jx, jy - H/2).
55
+ * Within the head image, percentage (px, py) maps to pixel offset
56
+ * ((px/100 - 0.5) * W, (py/100 - 0.5) * H) from the image center.
57
+ * Adding the head image offset gives iris-space coordinates.
54
58
  */
55
59
  const socketPctToIris = (px, py) => {
56
60
  if (isPercent) {
@@ -78,6 +82,24 @@ function computeMovementRangesFromSockets(eyeSockets, headWidth = 100, headHeigh
78
82
  const botRight = socketPctToIris(mxX, mxY);
79
83
  return { minX: topLeft.x, maxX: botRight.x, minY: topLeft.y, maxY: botRight.y };
80
84
  };
85
+ /** Bounding-box SIZE for one socket polygon, in pixels (no position). */
86
+ const socketSizePx = (points) => {
87
+ let mnX = Infinity, mxX = -Infinity, mnY = Infinity, mxY = -Infinity;
88
+ for (const p of points) {
89
+ if (p.x < mnX)
90
+ mnX = p.x;
91
+ if (p.x > mxX)
92
+ mxX = p.x;
93
+ if (p.y < mnY)
94
+ mnY = p.y;
95
+ if (p.y > mxY)
96
+ mxY = p.y;
97
+ }
98
+ return {
99
+ w: toPixels(mxX - mnX, headWidth),
100
+ h: toPixels(mxY - mnY, headHeight),
101
+ };
102
+ };
81
103
  // Ratio-scaled iris rendered dimensions (same as renderRig.ts rendering).
82
104
  const leftIrisW = ((eyeData?.leftIrisWidth || 10) * (eyeData?.leftIrisWidthRatio || 1));
83
105
  const leftIrisH = ((eyeData?.leftIrisHeight || 10) * (eyeData?.leftIrisHeightRatio || 1));
@@ -97,30 +119,58 @@ function computeMovementRangesFromSockets(eyeSockets, headWidth = 100, headHeigh
97
119
  const halfH = (bbox.maxY - bbox.minY) / 2;
98
120
  const usableHalfW = halfW * edgeFactor;
99
121
  const usableHalfH = halfH * edgeFactor;
100
- // Max negative X displacement (moving left):
101
- // irisBase + disp - irisW/2 >= cx - usableHalfW
102
- // disp >= (cx - usableHalfW + irisW/2) - irisBase
103
- const negX = Math.max(0, irisBaseX - (cx - usableHalfW + irisW / 2));
104
- // Max positive X displacement (moving right):
105
- // irisBase + disp + irisW/2 <= cx + usableHalfW
106
- const posX = Math.max(0, (cx + usableHalfW - irisW / 2) - irisBaseX);
107
- const negY = Math.max(0, irisBaseY - (cy - usableHalfH + irisH / 2));
108
- const posY = Math.max(0, (cy + usableHalfH - irisH / 2) - irisBaseY);
122
+ // 0.5 px safety margin absorbs floating-point rounding at socket edges.
123
+ const margin = 0.5;
124
+ const negX = Math.max(0, irisBaseX - (cx - usableHalfW + irisW / 2 + margin));
125
+ const posX = Math.max(0, (cx + usableHalfW - irisW / 2 - margin) - irisBaseX);
126
+ const negY = Math.max(0, irisBaseY - (cy - usableHalfH + irisH / 2 + margin));
127
+ const posY = Math.max(0, (cy + usableHalfH - irisH / 2 - margin) - irisBaseY);
109
128
  return { negX, posX, negY, posY };
110
129
  };
130
+ /**
131
+ * Size-only symmetric fallback: used when headJointOffset is unavailable
132
+ * and the position-based computation would produce broken results.
133
+ */
134
+ const effectiveRange = (socketDim, irisDim) => {
135
+ const usableHalf = (socketDim / 2) * edgeFactor;
136
+ const raw = usableHalf - irisDim / 2;
137
+ return raw > 1 ? raw : Math.max(1, usableHalf);
138
+ };
139
+ const computeSymmetricRanges = (socketW, socketH, irisW, irisH) => {
140
+ const rangeX = effectiveRange(socketW, irisW);
141
+ const rangeY = effectiveRange(socketH, irisH);
142
+ return { negX: rangeX, posX: rangeX, negY: rangeY, posY: rangeY };
143
+ };
111
144
  const leftIrisBaseX = eyeData?.leftIrisXCoor ?? 0;
112
145
  const leftIrisBaseY = eyeData?.leftIrisYCoor ?? 0;
113
146
  const rightIrisBaseX = eyeData?.rightIrisXCoor ?? 0;
114
147
  const rightIrisBaseY = eyeData?.rightIrisYCoor ?? 0;
148
+ // When headJointOffset is available, use the position-based asymmetric
149
+ // computation which correctly handles off-center irises. Without it the
150
+ // coordinate mapping places sockets far from the actual iris positions,
151
+ // producing wildly inflated ranges — fall back to size-only symmetric ranges.
152
+ const useAsymmetric = headJointOffset != null;
115
153
  let leftRanges = { negX: 5, posX: 5, negY: 3, posY: 3 };
116
154
  let rightRanges = { negX: 5, posX: 5, negY: 3, posY: 3 };
117
155
  if (hasLeft && left) {
118
- const bb = socketBBox(left);
119
- leftRanges = computeRanges(bb, leftIrisBaseX, leftIrisBaseY, leftIrisW, leftIrisH);
156
+ if (useAsymmetric) {
157
+ const bb = socketBBox(left);
158
+ leftRanges = computeRanges(bb, leftIrisBaseX, leftIrisBaseY, leftIrisW, leftIrisH);
159
+ }
160
+ else {
161
+ const { w, h } = socketSizePx(left);
162
+ leftRanges = computeSymmetricRanges(w, h, leftIrisW, leftIrisH);
163
+ }
120
164
  }
121
165
  if (hasRight && right) {
122
- const bb = socketBBox(right);
123
- rightRanges = computeRanges(bb, rightIrisBaseX, rightIrisBaseY, rightIrisW, rightIrisH);
166
+ if (useAsymmetric) {
167
+ const bb = socketBBox(right);
168
+ rightRanges = computeRanges(bb, rightIrisBaseX, rightIrisBaseY, rightIrisW, rightIrisH);
169
+ }
170
+ else {
171
+ const { w, h } = socketSizePx(right);
172
+ rightRanges = computeSymmetricRanges(w, h, rightIrisW, rightIrisH);
173
+ }
124
174
  }
125
175
  if (!hasLeft && hasRight)
126
176
  leftRanges = rightRanges;
@@ -130,10 +180,13 @@ function computeMovementRangesFromSockets(eyeSockets, headWidth = 100, headHeigh
130
180
  left: leftRanges, right: rightRanges,
131
181
  leftIrisRendered: { w: leftIrisW, h: leftIrisH },
132
182
  rightIrisRendered: { w: rightIrisW, h: rightIrisH },
183
+ mode: useAsymmetric ? 'asymmetric (headJointOffset available)' : 'symmetric (size-only fallback)',
133
184
  });
134
185
  return {
135
186
  left: buildDirectionMap(leftRanges),
136
187
  right: buildDirectionMap(rightRanges),
188
+ leftRaw: leftRanges,
189
+ rightRaw: rightRanges,
137
190
  };
138
191
  }
139
192
  /**
@@ -166,20 +219,24 @@ export class EyeSystem {
166
219
  this.perEyeRanges = computeMovementRangesFromSockets(eyeSockets, options?.headWidth ?? 100, options?.headHeight ?? 100, eyeData, options?.headJointOffset);
167
220
  const lr = this.perEyeRanges.left;
168
221
  const rr = this.perEyeRanges.right;
169
- this.leftManualScale = Math.max(Math.abs(lr['left'].x), Math.abs(lr['right'].x), Math.abs(lr['up'].y), Math.abs(lr['down'].y)) / 2;
170
- this.rightManualScale = Math.max(Math.abs(rr['left'].x), Math.abs(rr['right'].x), Math.abs(rr['up'].y), Math.abs(rr['down'].y)) / 2;
222
+ this._leftManualScale = Math.max(Math.abs(lr['left'].x), Math.abs(lr['right'].x), Math.abs(lr['up'].y), Math.abs(lr['down'].y)) / 2;
223
+ this._rightManualScale = Math.max(Math.abs(rr['left'].x), Math.abs(rr['right'].x), Math.abs(rr['up'].y), Math.abs(rr['down'].y)) / 2;
171
224
  console.log('[EyeSystem] Per-eye movement ranges from sockets:', {
172
225
  characterId: this.characterId,
173
226
  leftRanges: this.perEyeRanges.left,
174
227
  rightRanges: this.perEyeRanges.right,
175
- leftManualScale: this.leftManualScale,
176
- rightManualScale: this.rightManualScale
228
+ leftManualScale: this._leftManualScale,
229
+ rightManualScale: this._rightManualScale
177
230
  });
178
231
  }
179
232
  else {
180
- this.perEyeRanges = { left: { ...DEFAULT_MOVEMENT_RANGES }, right: { ...DEFAULT_MOVEMENT_RANGES } };
181
- this.leftManualScale = 2.5;
182
- this.rightManualScale = 2.5;
233
+ const defaultRaw = { negX: 5, posX: 5, negY: 3, posY: 3 };
234
+ this.perEyeRanges = {
235
+ left: { ...DEFAULT_MOVEMENT_RANGES }, right: { ...DEFAULT_MOVEMENT_RANGES },
236
+ leftRaw: { ...defaultRaw }, rightRaw: { ...defaultRaw },
237
+ };
238
+ this._leftManualScale = 2.5;
239
+ this._rightManualScale = 2.5;
183
240
  }
184
241
  // Store immutable copy of base iris coordinates
185
242
  // This prevents accumulation when rigData is updated
@@ -515,16 +572,41 @@ export class EyeSystem {
515
572
  * - +2 represents maximum right/up
516
573
  */
517
574
  setManualIrisPositions(eyePositions, currentTime) {
518
- // Per-eye scale factors convert -2 to 2 range into pixel offsets
519
- this.state.leftIrisX = this.baseIrisCoords.leftX + (eyePositions.left.x * this.leftManualScale);
520
- this.state.leftIrisY = this.baseIrisCoords.leftY + (eyePositions.left.y * this.leftManualScale);
521
- this.state.rightIrisX = this.baseIrisCoords.rightX + (eyePositions.right.x * this.rightManualScale);
522
- this.state.rightIrisY = this.baseIrisCoords.rightY + (eyePositions.right.y * this.rightManualScale);
523
- // Update last updated time to prevent automatic movement from overriding manual positioning
575
+ const lr = this.perEyeRanges.leftRaw;
576
+ const rr = this.perEyeRanges.rightRaw;
577
+ // Map -2..+2 input to asymmetric pixel offsets per direction.
578
+ // input/2 normalizes to -1..+1, then scale by the directional limit:
579
+ // -2 -negRange (max negative), 0 → 0, +2 → +posRange (max positive)
580
+ const mapAxis = (input, neg, pos) => {
581
+ const t = input / 2;
582
+ return t < 0 ? t * neg : t * pos;
583
+ };
584
+ this.state.leftIrisX = this.baseIrisCoords.leftX + mapAxis(eyePositions.left.x, lr.negX, lr.posX);
585
+ this.state.leftIrisY = this.baseIrisCoords.leftY + mapAxis(eyePositions.left.y, lr.negY, lr.posY);
586
+ this.state.rightIrisX = this.baseIrisCoords.rightX + mapAxis(eyePositions.right.x, rr.negX, rr.posX);
587
+ this.state.rightIrisY = this.baseIrisCoords.rightY + mapAxis(eyePositions.right.y, rr.negY, rr.posY);
524
588
  this.state.eyeLastUpdatedTime = currentTime;
525
- // Mark as custom position
526
589
  this.state.currentDirection = '';
527
590
  }
591
+ /**
592
+ * Raw per-direction ranges for each eye.
593
+ * Used by external preview code (e.g. calculatePreviewPosition) to normalize
594
+ * mouse offsets to the -2..+2 scale using the same asymmetric limits.
595
+ */
596
+ getDirectionalRanges() {
597
+ return { left: this.perEyeRanges.leftRaw, right: this.perEyeRanges.rightRaw };
598
+ }
599
+ /**
600
+ * Symmetric manual scale factor (min of left/right) for backward compatibility.
601
+ * Body.js reads this property to detect and override broken scales.
602
+ */
603
+ get manualScaleFactor() {
604
+ return Math.min(this._leftManualScale, this._rightManualScale);
605
+ }
606
+ set manualScaleFactor(value) {
607
+ this._leftManualScale = value;
608
+ this._rightManualScale = value;
609
+ }
528
610
  /**
529
611
  * Get debug info
530
612
  */
@@ -573,7 +655,8 @@ export function createEyeSystem(characterId, eyeDataOrRigData, options) {
573
655
  eyeData,
574
656
  eyeSockets: options.eyeSockets,
575
657
  headWidth: options.headWidth,
576
- headHeight: options.headHeight
658
+ headHeight: options.headHeight,
659
+ headJointOffset: options.headJointOffset
577
660
  });
578
661
  }
579
662
  return new EyeSystem(characterId, eyeData);
@@ -1 +1 @@
1
- {"version":3,"file":"eyeSystem.js","sourceRoot":"","sources":["../../modules/eyeSystem.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"eyeSystem.js","sourceRoot":"","sources":["../../modules/eyeSystem.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,104 +1,104 @@
1
- {
2
- "name": "distark-render",
3
- "version": "1.1.17",
4
- "description": "Rendering-agnostic character rig system with TypeScript",
5
- "type": "module",
6
- "main": "./dist/modules/renderRig.js",
7
- "types": "./dist/modules/renderRig.d.ts",
8
- "exports": {
9
- ".": {
10
- "types": "./dist/modules/renderRig.d.ts",
11
- "import": "./dist/modules/renderRig.js"
12
- },
13
- "./imageLoad": {
14
- "types": "./dist/modules/imageLoad.d.ts",
15
- "import": "./dist/modules/imageLoad.js"
16
- },
17
- "./eyeSystem": {
18
- "types": "./dist/modules/eyeSystem.d.ts",
19
- "import": "./dist/modules/eyeSystem.js"
20
- },
21
- "./mouthSystem": {
22
- "types": "./dist/modules/mouthSystem.d.ts",
23
- "import": "./dist/modules/mouthSystem.js"
24
- },
25
- "./types": {
26
- "types": "./dist/types.d.ts",
27
- "import": "./dist/types.js"
28
- },
29
- "./p5": {
30
- "types": "./dist/modules/adapters/p5Renderer.d.ts",
31
- "import": "./dist/modules/adapters/p5Renderer.js"
32
- },
33
- "./skia": {
34
- "types": "./dist/modules/adapters/skiaRenderer.d.ts",
35
- "import": "./dist/modules/adapters/skiaRenderer.js"
36
- },
37
- "./characterValidator": {
38
- "types": "./dist/modules/characterValidator.d.ts",
39
- "import": "./dist/modules/characterValidator.js"
40
- },
41
- "./animationDiff": {
42
- "types": "./dist/modules/animationDiff.d.ts",
43
- "import": "./dist/modules/animationDiff.js"
44
- },
45
- "./browserSceneRenderer": {
46
- "types": "./dist/modules/browserSceneRenderer.d.ts",
47
- "import": "./dist/modules/browserSceneRenderer.js"
48
- },
49
- "./sceneRenderer": {
50
- "types": "./dist/modules/sceneRenderer.d.ts",
51
- "import": "./dist/modules/sceneRenderer.js"
52
- }
53
- },
54
- "files": [
55
- "dist/**/*",
56
- "assets/**/*.json",
57
- "README.md",
58
- "LICENSE"
59
- ],
60
- "bin": {
61
- "distark-check": "./dist/cli/distark-check.js"
62
- },
63
- "scripts": {
64
- "install-cli": "npm run build && if [ -d \"$HOME/bin\" ]; then rm -f $HOME/bin/distark-check && printf '#!/bin/sh\\nexec node %s/dist/cli/distark-check.js \"$@\"\\n' $(pwd) > $HOME/bin/distark-check && chmod +x $HOME/bin/distark-check && echo 'Installed to ~/bin/distark-check'; else echo '~/bin not found, skipping install'; fi",
65
- "install-cli": "npm run build && printf '#!/bin/sh\\nexec node %s/dist/cli/distark-check.js \"$@\"\\n' $(pwd) > $HOME/bin/distark-check && chmod +x $HOME/bin/distark-check",
66
- "build": "tsc",
67
- "check": "node dist/cli/distark-check.js",
68
- "test-cli": "npm run build && node dist/tests/test-cli.js",
69
- "test-torso-pivot": "npm run build && node dist/tests/test-torso-pivot.js",
70
- "watch": "tsc --watch",
71
- "dev": "tsc --watch & http-server -p 8080",
72
- "clean": "rm -rf dist",
73
- "serve": "http-server -p 8080",
74
- "test": "npm run build && for f in dist/tests/test-*.js; do echo \"\\n>>> $f\" && node \"$f\" || exit 1; done",
75
- "prepublishOnly": "npm run clean && npm run build"
76
- },
77
- "keywords": [
78
- "character",
79
- "rig",
80
- "animation",
81
- "canvas",
82
- "rendering",
83
- "2d"
84
- ],
85
- "author": "liaokira",
86
- "license": "MIT",
87
- "devDependencies": {
88
- "@types/node": "^25.2.0",
89
- "playwright": "^1.58.2",
90
- "typescript": "^5.3.3"
91
- },
92
- "optionalDependencies": {
93
- "skia-canvas": "^3.0.8"
94
- },
95
- "repository": {
96
- "type": "git",
97
- "url": "git+https://github.com/jtoy/distark_render.git"
98
- },
99
- "bugs": {
100
- "url": "https://github.com/jtoy/distark_render/issues"
101
- },
102
- "homepage": "https://github.com/jtoy/distark_render#readme",
103
- "dependencies": {}
104
- }
1
+ {
2
+ "name": "distark-render",
3
+ "version": "1.1.18",
4
+ "description": "Rendering-agnostic character rig system with TypeScript",
5
+ "type": "module",
6
+ "main": "./dist/modules/renderRig.js",
7
+ "types": "./dist/modules/renderRig.d.ts",
8
+ "exports": {
9
+ ".": {
10
+ "types": "./dist/modules/renderRig.d.ts",
11
+ "import": "./dist/modules/renderRig.js"
12
+ },
13
+ "./imageLoad": {
14
+ "types": "./dist/modules/imageLoad.d.ts",
15
+ "import": "./dist/modules/imageLoad.js"
16
+ },
17
+ "./eyeSystem": {
18
+ "types": "./dist/modules/eyeSystem.d.ts",
19
+ "import": "./dist/modules/eyeSystem.js"
20
+ },
21
+ "./mouthSystem": {
22
+ "types": "./dist/modules/mouthSystem.d.ts",
23
+ "import": "./dist/modules/mouthSystem.js"
24
+ },
25
+ "./types": {
26
+ "types": "./dist/types.d.ts",
27
+ "import": "./dist/types.js"
28
+ },
29
+ "./p5": {
30
+ "types": "./dist/modules/adapters/p5Renderer.d.ts",
31
+ "import": "./dist/modules/adapters/p5Renderer.js"
32
+ },
33
+ "./skia": {
34
+ "types": "./dist/modules/adapters/skiaRenderer.d.ts",
35
+ "import": "./dist/modules/adapters/skiaRenderer.js"
36
+ },
37
+ "./characterValidator": {
38
+ "types": "./dist/modules/characterValidator.d.ts",
39
+ "import": "./dist/modules/characterValidator.js"
40
+ },
41
+ "./animationDiff": {
42
+ "types": "./dist/modules/animationDiff.d.ts",
43
+ "import": "./dist/modules/animationDiff.js"
44
+ },
45
+ "./browserSceneRenderer": {
46
+ "types": "./dist/modules/browserSceneRenderer.d.ts",
47
+ "import": "./dist/modules/browserSceneRenderer.js"
48
+ },
49
+ "./sceneRenderer": {
50
+ "types": "./dist/modules/sceneRenderer.d.ts",
51
+ "import": "./dist/modules/sceneRenderer.js"
52
+ }
53
+ },
54
+ "files": [
55
+ "dist/**/*",
56
+ "assets/**/*.json",
57
+ "README.md",
58
+ "LICENSE"
59
+ ],
60
+ "bin": {
61
+ "distark-check": "./dist/cli/distark-check.js"
62
+ },
63
+ "scripts": {
64
+ "install-cli": "npm run build && if [ -d \"$HOME/bin\" ]; then rm -f $HOME/bin/distark-check && printf '#!/bin/sh\\nexec node %s/dist/cli/distark-check.js \"$@\"\\n' $(pwd) > $HOME/bin/distark-check && chmod +x $HOME/bin/distark-check && echo 'Installed to ~/bin/distark-check'; else echo '~/bin not found, skipping install'; fi",
65
+ "install-cli": "npm run build && printf '#!/bin/sh\\nexec node %s/dist/cli/distark-check.js \"$@\"\\n' $(pwd) > $HOME/bin/distark-check && chmod +x $HOME/bin/distark-check",
66
+ "build": "tsc",
67
+ "check": "node dist/cli/distark-check.js",
68
+ "test-cli": "npm run build && node dist/tests/test-cli.js",
69
+ "test-torso-pivot": "npm run build && node dist/tests/test-torso-pivot.js",
70
+ "watch": "tsc --watch",
71
+ "dev": "tsc --watch & http-server -p 8080",
72
+ "clean": "rm -rf dist",
73
+ "serve": "http-server -p 8080",
74
+ "test": "npm run build && for f in dist/tests/test-*.js; do echo \"\\n>>> $f\" && node \"$f\" || exit 1; done",
75
+ "prepublishOnly": "npm run clean && npm run build"
76
+ },
77
+ "keywords": [
78
+ "character",
79
+ "rig",
80
+ "animation",
81
+ "canvas",
82
+ "rendering",
83
+ "2d"
84
+ ],
85
+ "author": "liaokira",
86
+ "license": "MIT",
87
+ "devDependencies": {
88
+ "@types/node": "^25.2.0",
89
+ "playwright": "^1.58.2",
90
+ "typescript": "^5.3.3"
91
+ },
92
+ "optionalDependencies": {
93
+ "skia-canvas": "^3.0.8"
94
+ },
95
+ "repository": {
96
+ "type": "git",
97
+ "url": "git+https://github.com/jtoy/distark_render.git"
98
+ },
99
+ "bugs": {
100
+ "url": "https://github.com/jtoy/distark_render/issues"
101
+ },
102
+ "homepage": "https://github.com/jtoy/distark_render#readme",
103
+ "dependencies": {}
104
+ }