@helix3/helix-cli 0.1.18-helix3.332 → 0.1.18-helix3.333
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/dist/character/hideCoverage.d.ts +26 -1
- package/dist/character/hideCoverage.js +86 -13
- package/dist/character/hideCoverage.js.map +1 -1
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +1 -1
- package/plugins/beamng-vehicle/bin/__pycache__/beamng_abs.cpython-312.pyc +0 -0
- package/plugins/beamng-vehicle/bin/__pycache__/beamng_expression.cpython-312.pyc +0 -0
- package/plugins/beamng-vehicle/bin/__pycache__/beamng_jbeam.cpython-312.pyc +0 -0
- package/plugins/beamng-vehicle/bin/__pycache__/beamng_materials.cpython-312.pyc +0 -0
package/README.md
CHANGED
|
@@ -67,7 +67,7 @@ The token is stored in `~/.helix/credentials.json` (mode `600`). It's sent as
|
|
|
67
67
|
| `helix character import <body.glb> [--map <json>] [--fit source\|canonical] [--provenance <json>]` | Convert one self-contained third-party humanoid through the public `helix-humanoid@1` pipeline. The command rejects external/remote resources and resource bombs before parsing, generates bounded LODs, and emits a source/license/transformation/checksum receipt beside the output. `--fit canonical` aligns the rest skeleton/proportions; it does not prove that Base Male-targeted garments fit a different body surface. |
|
|
68
68
|
| `helix character fit <addon.glb> --body <base.glb> -o <out.glb> (--slot-type <character.x@1>\|--hidden-regions <globs\|none>) [--clearance-mm 3]` | Pose-aware poke-through fit for a packaged character add-on (every LOD): across the canonical pose set, pushes garment geometry out along the body-facing normal to a minimum clearance, smoothed so hems and silhouettes keep their shape. Gated inside the stage by the poke-through measurement: the output is the fitted mesh only when it is strictly better (exit 0), otherwise a byte-identical copy of the input (exit 3). Bridge add-on imports run the same stage automatically; `helix item publish-version --fit-body <base.glb>` runs it before shipping a corrected mesh. |
|
|
69
69
|
| `helix character ear-clearance <addon.glb> --body <base.glb> (-o <out.glb>\|--check) [--target-mm 4] [--trigger-mm 1.5] [--max-push-mm 18] [--json]` | Head-zone check and fix for headwear / mask / hair / eyewear: finds the base body's ears, measures the clearance to the OUTERMOST garment layer around each (horizontal ray from the head axis, per LOD; only samples the garment wraps on all four sides count, so a mask that stops in front of the ear or a cap above it is not a defect) and, when a wrapped ear has < 1.5 mm, pushes the garment smoothly outward (Gaussian field, sigma 22 mm, horizontal only, <= 18 mm total, every LOD). Kept only when no ear pokes afterwards. `--check` writes nothing and exits 3 when an ear pokes through. `helix character fit` and `helix item publish-version --fit-body` run it automatically for head-zone slot types (`--no-ear-clearance` skips it; `--ear-clearance` forces it); `publish-version` refuses a mesh whose ears still poke after the fix. The pose-aware fit cannot do this job on a thin head shell. |
|
|
70
|
-
| `helix character derive-hide <addon.glb> --body <base.glb> --slot-type <character.x@1> [--threshold 98] [--ops-out ops.json] [--json]` | Measures which of the slot's granted body regions the garment fully occludes (bind pose; a body vertex counts when garment is in front of it along its outward normal within 60 mm; the least-covered LOD decides) and prints the `hide` ops that follow, with the measured share of every region left visible. A region is hidden only at >= 98
|
|
70
|
+
| `helix character derive-hide <addon.glb> --body <base.glb> --slot-type <character.x@1> [--threshold 98] [--ops-out ops.json] [--json]` | Measures which of the slot's granted body regions the garment fully occludes (bind pose; a body vertex counts when garment is in front of it along its outward normal within 60 mm; the least-covered LOD decides) and prints the `hide` ops that follow, with the measured share of every region left visible. A region is hidden only at >= 98 % AND when no triangle the hide would collapse (engine rule: >= 2 corners hidden) reaches a body vertex the garment does not cover (the sawtooth under a hem or collar); partly covered regions stay visible and the pose-aware fit keeps their skin from poking through. Bridge add-on conform does this automatically when the profile names no `hideRegions`; use this command with `helix item publish-version --ops <ops.json>` to correct an already-published garment. |
|
|
71
71
|
| `helix character retarget-animation <clip.fbx\|clip.glb>` | Retarget a raw Mixamo/Meshy clip directly to `helix-humanoid@1`. FBX conversion is deterministic and runs inside the CLI; no hidden Blender/DCC pre-export is required. |
|
|
72
72
|
| `helix pack scaffold\|validate\|publish <dir>` | Locomotion packs — the replacement movement clips a player equips as a character add-on in the `character.locomotion@1` clip-set slot. `scaffold` writes `anims/clip-meta.json` plus a README carrying the per-clip contract; `validate` runs the whole gate offline in **one** pass (clip-meta schema, one GLB per entry with exactly one animation, measured length against the declared duration, the gait-only vocabulary, the `strideSpeed` bands, and walk < run < sprint); `publish` uploads each clip GLB as a public Vault animation, records the returned pins in `anims/pins.json`, then publishes the **meshless** add-on whose ops pin those versions — a re-run reuses every unchanged pin, so an interrupted publish resumes. The governing rule of the slot: a pack may change how a walk *looks*; it may never change how far that walk *gets you*. Partial packs are valid products down to a single clip. `--dry-run` stops before any network call and works logged out. |
|
|
73
73
|
| `helix world audit\|source-audit\|perf-gate\|prove-live` | Run the blocking world QA, performance, and deployed-build identity gates. |
|
|
@@ -73,6 +73,17 @@ export interface HideCoverageReport {
|
|
|
73
73
|
/** Vertices whose region could not be placed (never counted toward any region). */
|
|
74
74
|
unclassifiedVertices: number;
|
|
75
75
|
regions: RegionCoverage[];
|
|
76
|
+
/**
|
|
77
|
+
* Per body LOD, what the hole-edge check needs (see `pruneHoleEdges`). Not enumerable, so JSON dumps of a
|
|
78
|
+
* report stay small; absent on a hand-built report, in which case the check is skipped.
|
|
79
|
+
*/
|
|
80
|
+
lodSurfaces?: LodSurface[];
|
|
81
|
+
}
|
|
82
|
+
/** One body LOD as the engine's hide op sees it: labelled vertices, triangles, and which vertices a garment covers. */
|
|
83
|
+
export interface LodSurface {
|
|
84
|
+
regions: Array<string | null>;
|
|
85
|
+
triangles: Uint32Array;
|
|
86
|
+
occluded: Uint8Array;
|
|
76
87
|
}
|
|
77
88
|
/**
|
|
78
89
|
* Per-region occlusion of the base body by `garment`. Both documents must be in their authored (bind) pose.
|
|
@@ -88,10 +99,12 @@ export interface DerivedHide {
|
|
|
88
99
|
granted: string[];
|
|
89
100
|
/** Granted regions the garment occludes (>= threshold). */
|
|
90
101
|
hidden: string[];
|
|
91
|
-
/** Granted regions left visible, each with the measured occluded fraction
|
|
102
|
+
/** Granted regions left visible, each with the measured occluded fraction (and `holeEdge` when the region met the
|
|
103
|
+
* threshold but hiding it would have left a bare triangle corner at its hole edge — see `pruneHoleEdges`). */
|
|
92
104
|
visible: Array<{
|
|
93
105
|
region: string;
|
|
94
106
|
fraction: number;
|
|
107
|
+
holeEdge?: boolean;
|
|
95
108
|
}>;
|
|
96
109
|
/** `hidden` collapsed to the grant's own globs where both sides are hidden (`body_thigh_*`). */
|
|
97
110
|
hideNodes: string[];
|
|
@@ -104,6 +117,18 @@ export interface DerivedHide {
|
|
|
104
117
|
}
|
|
105
118
|
/** Collapse concrete regions back to the grant's globs: `body_thigh_l` + `body_thigh_r` -> `body_thigh_*`. */
|
|
106
119
|
export declare function collapseRegionsToGlobs(hidden: readonly string[], grantGlobs: readonly string[]): string[];
|
|
120
|
+
/**
|
|
121
|
+
* HOLE-EDGE CHECK. The region fraction alone lets a handful of bare vertices through (98 % of 363 torso vertices
|
|
122
|
+
* is seven of them), and those are exactly the ones on a hem: the engine collapses every triangle with >= 2
|
|
123
|
+
* corners in a hidden region, so a collapsed triangle whose third corner (or any corner) is NOT under the
|
|
124
|
+
* garment opens a notch in the skin the fabric does not cross — the black sawtooth under a jacket hem or a
|
|
125
|
+
* collar (Bomber Jacket, Clare Top, Casual Blazer, Black Shorts). So after the threshold: collapse triangles
|
|
126
|
+
* with the engine's rule at every LOD, and while any corner of a collapsed triangle is bare, drop the hidden
|
|
127
|
+
* region carrying the most such corners and recompute. A region dropped here is left visible (the push-out fit
|
|
128
|
+
* then handles its skin); a vertex facing the body itself already counts as covered. Returns the regions
|
|
129
|
+
* dropped. Skipped when the report carries no surfaces (a hand-built one).
|
|
130
|
+
*/
|
|
131
|
+
export declare function pruneHoleEdges(hidden: string[], coverage: HideCoverageReport): string[];
|
|
107
132
|
/** The regions of `slotType`'s platform grant that `coverage` shows the garment fully occludes. */
|
|
108
133
|
export declare function deriveHideFromCoverage(slotType: string, coverage: HideCoverageReport, threshold?: number): DerivedHide;
|
|
109
134
|
/** One human line per granted region, for terminal output. */
|
|
@@ -4,6 +4,7 @@ exports.DEFAULT_CONE_DEG = exports.DEFAULT_BACKOFF_M = exports.DEFAULT_STANDOFF_
|
|
|
4
4
|
exports.measureHideCoverage = measureHideCoverage;
|
|
5
5
|
exports.measureHideCoverageFiles = measureHideCoverageFiles;
|
|
6
6
|
exports.collapseRegionsToGlobs = collapseRegionsToGlobs;
|
|
7
|
+
exports.pruneHoleEdges = pruneHoleEdges;
|
|
7
8
|
exports.deriveHideFromCoverage = deriveHideFromCoverage;
|
|
8
9
|
exports.formatDerivedHide = formatDerivedHide;
|
|
9
10
|
const core_1 = require("@gltf-transform/core");
|
|
@@ -133,6 +134,7 @@ function bodyVertices(body, lod) {
|
|
|
133
134
|
const positions = [];
|
|
134
135
|
const normals = [];
|
|
135
136
|
const regions = [];
|
|
137
|
+
const triangles = [];
|
|
136
138
|
let baked = 0, total = 0;
|
|
137
139
|
for (const node of nodes) {
|
|
138
140
|
for (const prim of node.getMesh().listPrimitives()) {
|
|
@@ -140,6 +142,13 @@ function bodyVertices(body, lod) {
|
|
|
140
142
|
if (!posed || !posed.normals)
|
|
141
143
|
continue;
|
|
142
144
|
const count = posed.positions.length / 3;
|
|
145
|
+
const base = positions.length / 3;
|
|
146
|
+
if (prim.getMode() === 4) {
|
|
147
|
+
const idx = prim.getIndices()?.getArray() ?? null;
|
|
148
|
+
const n = idx ? idx.length : count;
|
|
149
|
+
for (let k = 0; k + 2 < n; k += 3)
|
|
150
|
+
triangles.push(base + (idx ? idx[k] : k), base + (idx ? idx[k + 1] : k + 1), base + (idx ? idx[k + 2] : k + 2));
|
|
151
|
+
}
|
|
143
152
|
const regionAttr = prim.getAttribute('_REGION');
|
|
144
153
|
const labelNames = node.getSkin()?.listJoints().map((j) => j.getName()) ?? [];
|
|
145
154
|
const inf = regionAttr ? null : (0, posing_1.readInfluences)(prim, count);
|
|
@@ -165,7 +174,7 @@ function bodyVertices(body, lod) {
|
|
|
165
174
|
throw new Error('hide coverage: the base body GLB has no skinned mesh with NORMALs — pass the HELIX base body (Base Male / Base Female).');
|
|
166
175
|
if (baked !== 0 && baked !== total)
|
|
167
176
|
throw new Error('hide coverage: only some base-body primitives carry a baked _REGION attribute — use a body GLB baked by `helix character bake-body-regions`.');
|
|
168
|
-
return { positions: Float64Array.from(positions), normals: Float64Array.from(normals), regions, regionSource: baked > 0 ? '_REGION' : 'dominant-joint' };
|
|
177
|
+
return { triangles: Uint32Array.from(triangles), positions: Float64Array.from(positions), normals: Float64Array.from(normals), regions, regionSource: baked > 0 ? '_REGION' : 'dominant-joint' };
|
|
169
178
|
}
|
|
170
179
|
/** Unit directions: the normal plus `coneDeg`-tilted copies toward four tangents. */
|
|
171
180
|
function rayFan(n, coneDeg) {
|
|
@@ -192,6 +201,8 @@ function rayFan(n, coneDeg) {
|
|
|
192
201
|
/** Occlusion of one body LOD's vertices by one garment LOD's surface, per region. */
|
|
193
202
|
function measureLodPair(verts, grid, bodyGrid, standoffM, backoffM, coneDeg, inScope) {
|
|
194
203
|
const rows = new Map();
|
|
204
|
+
// Occlusion of EVERY vertex (in scope or not): the hole-edge check needs the neighbours of a hidden region too.
|
|
205
|
+
const occludedFlags = new Uint8Array(verts.regions.length);
|
|
195
206
|
let unclassified = 0;
|
|
196
207
|
const reach = backoffM + standoffM;
|
|
197
208
|
const o = [0, 0, 0];
|
|
@@ -199,16 +210,19 @@ function measureLodPair(verts, grid, bodyGrid, standoffM, backoffM, coneDeg, inS
|
|
|
199
210
|
const region = verts.regions[i];
|
|
200
211
|
if (region === null) {
|
|
201
212
|
unclassified++;
|
|
213
|
+
occludedFlags[i] = 1;
|
|
202
214
|
continue;
|
|
203
215
|
}
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
row
|
|
209
|
-
|
|
216
|
+
const scoped = !inScope || inScope(region);
|
|
217
|
+
let row;
|
|
218
|
+
if (scoped) {
|
|
219
|
+
row = rows.get(region);
|
|
220
|
+
if (!row) {
|
|
221
|
+
row = { vertices: 0, occluded: 0, selfOccluded: 0, bareMin: [Infinity, Infinity, Infinity], bareMax: [-Infinity, -Infinity, -Infinity] };
|
|
222
|
+
rows.set(region, row);
|
|
223
|
+
}
|
|
224
|
+
row.vertices++;
|
|
210
225
|
}
|
|
211
|
-
row.vertices++;
|
|
212
226
|
let hit = false;
|
|
213
227
|
const n = [verts.normals[i * 3], verts.normals[i * 3 + 1], verts.normals[i * 3 + 2]];
|
|
214
228
|
o[0] = verts.positions[i * 3] - n[0] * backoffM;
|
|
@@ -229,15 +243,20 @@ function measureLodPair(verts, grid, bodyGrid, standoffM, backoffM, coneDeg, inS
|
|
|
229
243
|
for (const d of rayFan(n, SELF_OCCLUSION_CONE_DEG)) {
|
|
230
244
|
if (bodyGrid.firstHitAlong(start, d, standoffM, 1e-4) !== null) {
|
|
231
245
|
hit = true;
|
|
232
|
-
row
|
|
246
|
+
if (row)
|
|
247
|
+
row.selfOccluded++;
|
|
233
248
|
break;
|
|
234
249
|
}
|
|
235
250
|
}
|
|
236
251
|
}
|
|
237
252
|
if (hit) {
|
|
238
|
-
|
|
253
|
+
occludedFlags[i] = 1;
|
|
254
|
+
if (row)
|
|
255
|
+
row.occluded++;
|
|
239
256
|
continue;
|
|
240
257
|
}
|
|
258
|
+
if (!row)
|
|
259
|
+
continue;
|
|
241
260
|
for (let k = 0; k < 3; k++) {
|
|
242
261
|
const v = verts.positions[i * 3 + k];
|
|
243
262
|
if (v < row.bareMin[k])
|
|
@@ -246,7 +265,7 @@ function measureLodPair(verts, grid, bodyGrid, standoffM, backoffM, coneDeg, inS
|
|
|
246
265
|
row.bareMax[k] = v;
|
|
247
266
|
}
|
|
248
267
|
}
|
|
249
|
-
return { unclassified, rows };
|
|
268
|
+
return { unclassified, rows, occluded: occludedFlags };
|
|
250
269
|
}
|
|
251
270
|
/**
|
|
252
271
|
* Per-region occlusion of the base body by `garment`. Both documents must be in their authored (bind) pose.
|
|
@@ -267,6 +286,7 @@ function measureHideCoverage(garment, body, options = {}) {
|
|
|
267
286
|
const tally = new Map();
|
|
268
287
|
let regionSource = '_REGION';
|
|
269
288
|
let unclassified = 0;
|
|
289
|
+
const lodSurfaces = [];
|
|
270
290
|
for (let k = 0; k < lods; k++) {
|
|
271
291
|
const verts = bodyVertices(body, Math.min(k, bodyLods - 1));
|
|
272
292
|
regionSource = verts.regionSource;
|
|
@@ -274,6 +294,7 @@ function measureHideCoverage(garment, body, options = {}) {
|
|
|
274
294
|
const pair = measureLodPair(verts, grids[Math.min(k, grids.length - 1)], bodyGrid, standoffM, backoffM, coneDeg, inScope);
|
|
275
295
|
if (k === 0)
|
|
276
296
|
unclassified = pair.unclassified;
|
|
297
|
+
lodSurfaces.push({ regions: verts.regions, triangles: verts.triangles, occluded: pair.occluded });
|
|
277
298
|
for (const [region, row] of pair.rows) {
|
|
278
299
|
let t = tally.get(region);
|
|
279
300
|
if (!t) {
|
|
@@ -303,7 +324,9 @@ function measureHideCoverage(garment, body, options = {}) {
|
|
|
303
324
|
};
|
|
304
325
|
})
|
|
305
326
|
.sort((a, b) => (order.get(a.region) ?? 99) - (order.get(b.region) ?? 99));
|
|
306
|
-
|
|
327
|
+
const report = { standoffM, backoffM, coneDeg, lods, regionSource, unclassifiedVertices: unclassified, regions };
|
|
328
|
+
Object.defineProperty(report, 'lodSurfaces', { value: lodSurfaces, enumerable: false });
|
|
329
|
+
return report;
|
|
307
330
|
}
|
|
308
331
|
/** `measureHideCoverage` on two GLB files (meshopt-compressed renditions included). */
|
|
309
332
|
async function measureHideCoverageFiles(garmentPath, bodyPath, options = {}) {
|
|
@@ -334,6 +357,53 @@ function collapseRegionsToGlobs(hidden, grantGlobs) {
|
|
|
334
357
|
out.push(r);
|
|
335
358
|
return out;
|
|
336
359
|
}
|
|
360
|
+
/**
|
|
361
|
+
* HOLE-EDGE CHECK. The region fraction alone lets a handful of bare vertices through (98 % of 363 torso vertices
|
|
362
|
+
* is seven of them), and those are exactly the ones on a hem: the engine collapses every triangle with >= 2
|
|
363
|
+
* corners in a hidden region, so a collapsed triangle whose third corner (or any corner) is NOT under the
|
|
364
|
+
* garment opens a notch in the skin the fabric does not cross — the black sawtooth under a jacket hem or a
|
|
365
|
+
* collar (Bomber Jacket, Clare Top, Casual Blazer, Black Shorts). So after the threshold: collapse triangles
|
|
366
|
+
* with the engine's rule at every LOD, and while any corner of a collapsed triangle is bare, drop the hidden
|
|
367
|
+
* region carrying the most such corners and recompute. A region dropped here is left visible (the push-out fit
|
|
368
|
+
* then handles its skin); a vertex facing the body itself already counts as covered. Returns the regions
|
|
369
|
+
* dropped. Skipped when the report carries no surfaces (a hand-built one).
|
|
370
|
+
*/
|
|
371
|
+
function pruneHoleEdges(hidden, coverage) {
|
|
372
|
+
const surfaces = coverage.lodSurfaces;
|
|
373
|
+
const dropped = [];
|
|
374
|
+
if (!surfaces || surfaces.length === 0)
|
|
375
|
+
return dropped;
|
|
376
|
+
for (;;) {
|
|
377
|
+
if (hidden.length === 0)
|
|
378
|
+
return dropped;
|
|
379
|
+
const hid = new Set(hidden);
|
|
380
|
+
const score = new Map();
|
|
381
|
+
for (const surface of surfaces) {
|
|
382
|
+
const { regions, triangles, occluded } = surface;
|
|
383
|
+
for (let t = 0; t + 2 < triangles.length; t += 3) {
|
|
384
|
+
const corners = [triangles[t], triangles[t + 1], triangles[t + 2]];
|
|
385
|
+
const hiddenCorners = corners.filter((c) => { const r = regions[c]; return r !== null && r !== undefined && hid.has(r); });
|
|
386
|
+
if (hiddenCorners.length < 2)
|
|
387
|
+
continue;
|
|
388
|
+
const bare = corners.filter((c) => occluded[c] === 0).length;
|
|
389
|
+
if (bare === 0)
|
|
390
|
+
continue;
|
|
391
|
+
for (const c of hiddenCorners)
|
|
392
|
+
score.set(regions[c], (score.get(regions[c]) ?? 0) + bare / hiddenCorners.length);
|
|
393
|
+
}
|
|
394
|
+
}
|
|
395
|
+
if (score.size === 0)
|
|
396
|
+
return dropped;
|
|
397
|
+
let worst = '', worstScore = -1;
|
|
398
|
+
for (const [region, v] of score)
|
|
399
|
+
if (v > worstScore) {
|
|
400
|
+
worst = region;
|
|
401
|
+
worstScore = v;
|
|
402
|
+
}
|
|
403
|
+
hidden.splice(hidden.indexOf(worst), 1);
|
|
404
|
+
dropped.push(worst);
|
|
405
|
+
}
|
|
406
|
+
}
|
|
337
407
|
/** The regions of `slotType`'s platform grant that `coverage` shows the garment fully occludes. */
|
|
338
408
|
function deriveHideFromCoverage(slotType, coverage, threshold = exports.DEFAULT_COVERAGE_THRESHOLD) {
|
|
339
409
|
const grantGlobs = (0, bodyRegionHide_1.defaultHideRegionsForSlotType)(slotType);
|
|
@@ -350,6 +420,9 @@ function deriveHideFromCoverage(slotType, coverage, threshold = exports.DEFAULT_
|
|
|
350
420
|
else
|
|
351
421
|
visible.push({ region, fraction: row.fraction });
|
|
352
422
|
}
|
|
423
|
+
for (const region of pruneHoleEdges(hidden, coverage))
|
|
424
|
+
visible.push({ region, fraction: measured.get(region).fraction, holeEdge: true });
|
|
425
|
+
visible.sort((a, b) => granted.indexOf(a.region) - granted.indexOf(b.region));
|
|
353
426
|
const hideNodes = collapseRegionsToGlobs(hidden, grantGlobs);
|
|
354
427
|
return {
|
|
355
428
|
slotType,
|
|
@@ -369,7 +442,7 @@ function formatDerivedHide(derived) {
|
|
|
369
442
|
const rows = new Map(derived.coverage.regions.map((r) => [r.region, r]));
|
|
370
443
|
for (const region of derived.granted) {
|
|
371
444
|
const row = rows.get(region);
|
|
372
|
-
lines.push(` ${derived.hidden.includes(region) ? 'HIDE ' : 'visible'} ${region.padEnd(17)} ${pct(row.fraction).padStart(6)} (${row.vertices} vertices${row.perLod.length > 1 ? `; per LOD ${row.perLod.map(pct).join(' / ')}` : ''})`);
|
|
445
|
+
lines.push(` ${derived.hidden.includes(region) ? 'HIDE ' : 'visible'} ${region.padEnd(17)} ${pct(row.fraction).padStart(6)}${derived.visible.find((v) => v.region === region)?.holeEdge ? ' hole-edge' : ''} (${row.vertices} vertices${row.perLod.length > 1 ? `; per LOD ${row.perLod.map(pct).join(' / ')}` : ''})`);
|
|
373
446
|
}
|
|
374
447
|
lines.push(derived.hideNodes.length > 0 ? ` ops: ${JSON.stringify(derived.ops)}` : ' ops: [] (nothing is fully occluded — nothing hidden; the push-out fit handles the visible skin)');
|
|
375
448
|
return lines.join('\n');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hideCoverage.js","sourceRoot":"","sources":["../../src/character/hideCoverage.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"hideCoverage.js","sourceRoot":"","sources":["../../src/character/hideCoverage.ts"],"names":[],"mappings":"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"}
|