reze-engine 0.55.10 → 0.55.12
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/dist/engine.d.ts +15 -6
- package/dist/engine.d.ts.map +1 -1
- package/dist/engine.js +73 -28
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/model.d.ts +65 -0
- package/dist/model.d.ts.map +1 -1
- package/dist/model.js +164 -0
- package/package.json +1 -1
- package/src/engine.ts +71 -29
- package/src/index.ts +1 -0
- package/src/model.ts +175 -0
package/dist/engine.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Quat, Vec3 } from "./math";
|
|
2
|
-
import { Model } from "./model";
|
|
2
|
+
import { Model, type EyeTrackingOptions } from "./model";
|
|
3
3
|
import { type CameraKeyframe } from "./vmd-loader";
|
|
4
4
|
import { type CameraPose } from "./camera-animation";
|
|
5
5
|
import { RezePhysics } from "./physics";
|
|
@@ -2770,11 +2770,14 @@ export declare class Engine {
|
|
|
2770
2770
|
private handleCanvasTouch;
|
|
2771
2771
|
private performRaycast;
|
|
2772
2772
|
private renderSelectionPasses;
|
|
2773
|
-
/** The index
|
|
2774
|
-
*
|
|
2775
|
-
* the
|
|
2776
|
-
*
|
|
2777
|
-
|
|
2773
|
+
/** The index runs `material` owns — EVERY run, because a PMX may carry
|
|
2774
|
+
* several materials under one name and a name is how the host asks; taking
|
|
2775
|
+
* the first left the rest of a hair or a coat out of its own wireframe —
|
|
2776
|
+
* or the whole list when it is null. Materials are consecutive runs in
|
|
2777
|
+
* declaration order, so each offset is a prefix sum, the same walk the draw
|
|
2778
|
+
* list does. Empty for a name the model does not have, which is what a
|
|
2779
|
+
* stale selection looks like after a reload. */
|
|
2780
|
+
private materialIndexRanges;
|
|
2778
2781
|
/** A cache key no material can collide with — a PMX name is never empty and
|
|
2779
2782
|
* never contains a NUL. */
|
|
2780
2783
|
private static readonly SEAM_KEY;
|
|
@@ -2931,6 +2934,12 @@ export declare class Engine {
|
|
|
2931
2934
|
* gaps between them are the timing, and the hold between the middle two is how
|
|
2932
2935
|
* long she is away.
|
|
2933
2936
|
*/
|
|
2937
|
+
/**
|
|
2938
|
+
* Eyes on the camera, per model — see Model.setEyeTracking. Live: solved
|
|
2939
|
+
* every frame against wherever the camera is, orbit or motion alike. Null
|
|
2940
|
+
* gives the eyes back to the motion.
|
|
2941
|
+
*/
|
|
2942
|
+
setEyeTracking(modelName: string, options: EyeTrackingOptions | null): boolean;
|
|
2934
2943
|
setModelDissolveCycle(modelName: string, cycle: DissolveCycle | null): boolean;
|
|
2935
2944
|
/** Every dissolve cycle, at the current scene clock. Once per frame, before
|
|
2936
2945
|
* the cast is written and long before any effect reads it. */
|
package/dist/engine.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../src/engine.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../src/engine.ts"],"names":[],"mappings":"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"}
|
package/dist/engine.js
CHANGED
|
@@ -187,6 +187,8 @@ const SUBJECT_BONES = ["センター", "全ての親"];
|
|
|
187
187
|
const MAX_EFFECT_ANCHORS = EFFECT_ANCHORS;
|
|
188
188
|
/** Only for the bounding sphere's height. */
|
|
189
189
|
const HEAD_BONE = "頭";
|
|
190
|
+
/** Scratch for the per-frame camera-to-model-space hand-off to the eyes. */
|
|
191
|
+
const _gazeScratch = new Vec3(0, 0, 0);
|
|
190
192
|
/** Path samples kept per trailed anchor. ~2.1s at the sampling rate below, which
|
|
191
193
|
* is a long ribbon — a dancer's arm draws most of a circle in that time.
|
|
192
194
|
*
|
|
@@ -2975,8 +2977,13 @@ export class Engine {
|
|
|
2975
2977
|
*/
|
|
2976
2978
|
async setEffects(list) {
|
|
2977
2979
|
const noMounts = { background: false, foreground: false };
|
|
2978
|
-
|
|
2980
|
+
// Clearing an engine that has nothing yet is already done; only an install
|
|
2981
|
+
// needs the device.
|
|
2982
|
+
if (!this.device) {
|
|
2983
|
+
if (!list || list.length === 0)
|
|
2984
|
+
return [];
|
|
2979
2985
|
return [{ ok: false, diagnostics: ["setEffects requires init() to have run"], mounts: noMounts, params: [], duration: 0 }];
|
|
2986
|
+
}
|
|
2980
2987
|
const requested = list ?? [];
|
|
2981
2988
|
if (requested.length === 0) {
|
|
2982
2989
|
for (const e of this.effects) {
|
|
@@ -3096,8 +3103,13 @@ export class Engine {
|
|
|
3096
3103
|
// the life of the surface. What used to be a scene-wide decision made here
|
|
3097
3104
|
// is now each effect's own.
|
|
3098
3105
|
this.ensureFilterPage();
|
|
3099
|
-
|
|
3100
|
-
|
|
3106
|
+
// EVERY shared buffer, not only the field and composite groups. The mounts
|
|
3107
|
+
// above were built across awaits, and audio, a score or lyrics landing in
|
|
3108
|
+
// one of those gaps replaced its buffer and destroyed the old one — which
|
|
3109
|
+
// the new particle, light, trail and grid groups had been built against,
|
|
3110
|
+
// so the next submit named a destroyed buffer. Rebinding at install closes
|
|
3111
|
+
// the gap from whichever side the asset arrived.
|
|
3112
|
+
this.rebindSharedBuffers();
|
|
3101
3113
|
this.writeCompositeViewUniforms();
|
|
3102
3114
|
return results;
|
|
3103
3115
|
}
|
|
@@ -8370,6 +8382,17 @@ export class Engine {
|
|
|
8370
8382
|
const stageIdle = (inst.isStage || inst.isPlane || inst.isProp) && !attached && inst.model.isIdle();
|
|
8371
8383
|
let verticesChanged = false;
|
|
8372
8384
|
if (!stageIdle) {
|
|
8385
|
+
// The camera in the model's own space, for the eyes — the placement
|
|
8386
|
+
// undone, since bones live in model space.
|
|
8387
|
+
if (inst.model.hasEyeTracking()) {
|
|
8388
|
+
const eye = this.camera.getEyePosition();
|
|
8389
|
+
const m = inst.model;
|
|
8390
|
+
_gazeScratch.setXYZ(eye.x - m.position.x, eye.y - m.position.y, eye.z - m.position.z);
|
|
8391
|
+
Quat.rotateVecInvInto(m.rotation, _gazeScratch, _gazeScratch);
|
|
8392
|
+
const inv = 1 / Math.max(m.scale, 1e-6);
|
|
8393
|
+
_gazeScratch.setXYZ(_gazeScratch.x * inv, _gazeScratch.y * inv, _gazeScratch.z * inv);
|
|
8394
|
+
inst.model.setGazeTarget(_gazeScratch);
|
|
8395
|
+
}
|
|
8373
8396
|
verticesChanged = inst.model.update(deltaTime, inst.isStage || inst.isPlane ? false : this.ikEnabled);
|
|
8374
8397
|
inst.skinMatricesDirty = true;
|
|
8375
8398
|
}
|
|
@@ -10303,8 +10326,10 @@ export class Engine {
|
|
|
10303
10326
|
if (!inst)
|
|
10304
10327
|
return;
|
|
10305
10328
|
const target = this.selectedMaterial.materialName;
|
|
10306
|
-
|
|
10307
|
-
|
|
10329
|
+
// Every draw under the name — see materialIndexRanges for why there can be
|
|
10330
|
+
// more than one.
|
|
10331
|
+
const draws = inst.drawCalls.filter((d) => (d.type === "opaque" || d.type === "transparent") && d.materialName === target && this.shouldRenderDrawCall(inst, d));
|
|
10332
|
+
if (draws.length === 0)
|
|
10308
10333
|
return;
|
|
10309
10334
|
// Mask pass: fill the selected material's projected footprint with 1.0. Depth-always
|
|
10310
10335
|
// (no depth attachment) so the outline traces complete boundaries even when the
|
|
@@ -10317,7 +10342,8 @@ export class Engine {
|
|
|
10317
10342
|
mpass.setVertexBuffer(1, inst.jointsBuffer);
|
|
10318
10343
|
mpass.setVertexBuffer(2, inst.weightsBuffer);
|
|
10319
10344
|
mpass.setIndexBuffer(inst.indexBuffer, "uint32");
|
|
10320
|
-
|
|
10345
|
+
for (const draw of draws)
|
|
10346
|
+
mpass.drawIndexed(draw.count, 1, draw.firstIndex, 0, 0);
|
|
10321
10347
|
mpass.end();
|
|
10322
10348
|
// Edge pass: screen-space edge detect on the mask, alpha-blended over swapchain.
|
|
10323
10349
|
const edgeAttachment = this.selectionEdgePassDescriptor.colorAttachments[0];
|
|
@@ -10331,21 +10357,25 @@ export class Engine {
|
|
|
10331
10357
|
// Unique edges of the mesh, as a line-list index buffer. Each interior edge is
|
|
10332
10358
|
// shared by two triangles, so deduplicating halves both the buffer and the
|
|
10333
10359
|
// draw. Built once per model, on the first frame its wireframe is asked for.
|
|
10334
|
-
/** The index
|
|
10335
|
-
*
|
|
10336
|
-
* the
|
|
10337
|
-
*
|
|
10338
|
-
|
|
10360
|
+
/** The index runs `material` owns — EVERY run, because a PMX may carry
|
|
10361
|
+
* several materials under one name and a name is how the host asks; taking
|
|
10362
|
+
* the first left the rest of a hair or a coat out of its own wireframe —
|
|
10363
|
+
* or the whole list when it is null. Materials are consecutive runs in
|
|
10364
|
+
* declaration order, so each offset is a prefix sum, the same walk the draw
|
|
10365
|
+
* list does. Empty for a name the model does not have, which is what a
|
|
10366
|
+
* stale selection looks like after a reload. */
|
|
10367
|
+
materialIndexRanges(inst, material) {
|
|
10339
10368
|
const indices = inst.model.getIndices();
|
|
10340
10369
|
if (!material)
|
|
10341
|
-
return [0, indices.length];
|
|
10370
|
+
return [[0, indices.length]];
|
|
10371
|
+
const runs = [];
|
|
10342
10372
|
let offset = 0;
|
|
10343
10373
|
for (const m of inst.model.getMaterials()) {
|
|
10344
10374
|
if (m.name === material)
|
|
10345
|
-
|
|
10375
|
+
runs.push([offset, offset + m.vertexCount]);
|
|
10346
10376
|
offset += m.vertexCount;
|
|
10347
10377
|
}
|
|
10348
|
-
return
|
|
10378
|
+
return runs;
|
|
10349
10379
|
}
|
|
10350
10380
|
/**
|
|
10351
10381
|
* @param material one material's own edges, or null for the whole mesh
|
|
@@ -10391,10 +10421,9 @@ export class Engine {
|
|
|
10391
10421
|
}
|
|
10392
10422
|
}
|
|
10393
10423
|
else {
|
|
10394
|
-
const
|
|
10395
|
-
if (
|
|
10424
|
+
const runs = this.materialIndexRanges(inst, material);
|
|
10425
|
+
if (runs.length === 0)
|
|
10396
10426
|
return false;
|
|
10397
|
-
const [start, end] = range;
|
|
10398
10427
|
const seen = new Set();
|
|
10399
10428
|
const add = (a, b) => {
|
|
10400
10429
|
const lo = a < b ? a : b;
|
|
@@ -10405,10 +10434,12 @@ export class Engine {
|
|
|
10405
10434
|
seen.add(k);
|
|
10406
10435
|
edges.push(lo, hi);
|
|
10407
10436
|
};
|
|
10408
|
-
for (
|
|
10409
|
-
|
|
10410
|
-
|
|
10411
|
-
|
|
10437
|
+
for (const [start, end] of runs) {
|
|
10438
|
+
for (let i = start; i + 2 < end; i += 3) {
|
|
10439
|
+
add(indices[i], indices[i + 1]);
|
|
10440
|
+
add(indices[i + 1], indices[i + 2]);
|
|
10441
|
+
add(indices[i + 2], indices[i]);
|
|
10442
|
+
}
|
|
10412
10443
|
}
|
|
10413
10444
|
}
|
|
10414
10445
|
if (edges.length === 0) {
|
|
@@ -10460,8 +10491,8 @@ export class Engine {
|
|
|
10460
10491
|
// picked, since only the picked material draws at all then.
|
|
10461
10492
|
const hm = this.hoverMaterial;
|
|
10462
10493
|
const hoverName = material === null && hm?.modelName === inst.name ? hm.materialName : null;
|
|
10463
|
-
const
|
|
10464
|
-
const hover =
|
|
10494
|
+
const hoverRuns = hoverName ? this.materialIndexRanges(inst, hoverName) : [];
|
|
10495
|
+
const hover = hoverRuns.length > 0 && this.ensureEdgeBuffer(inst, hoverName) ? inst.wireEdges.get(hoverName) : null;
|
|
10465
10496
|
this.wireframeColorData.set(DEFAULT_VERTEX_COLOR);
|
|
10466
10497
|
this.wireframeColorData[4] = this.canvas.width;
|
|
10467
10498
|
this.wireframeColorData[5] = this.canvas.height;
|
|
@@ -10499,9 +10530,10 @@ export class Engine {
|
|
|
10499
10530
|
// before the base mesh below gets a chance to occlude it. The base mesh's
|
|
10500
10531
|
// depth write further down repeats the SAME geometry for these faces
|
|
10501
10532
|
// (identical z), so it neither disturbs this nor needs to skip them.
|
|
10502
|
-
if (hover &&
|
|
10533
|
+
if (hover && !xray) {
|
|
10503
10534
|
bindMesh();
|
|
10504
|
-
|
|
10535
|
+
for (const [start, end] of hoverRuns)
|
|
10536
|
+
pass.drawIndexed(end - start, 1, start);
|
|
10505
10537
|
pass.setBindGroup(0, this.wireframeHoverBindGroup);
|
|
10506
10538
|
pass.setBindGroup(1, hover.bindGroup);
|
|
10507
10539
|
pass.setPipeline(this.wireframePipeline);
|
|
@@ -10522,11 +10554,12 @@ export class Engine {
|
|
|
10522
10554
|
// the coat hide it does not answer that. Its own depth still goes in, so its
|
|
10523
10555
|
// back faces stay hidden and it reads as an object instead of a haze —
|
|
10524
10556
|
// which is the difference between this and turning x-ray on.
|
|
10525
|
-
const
|
|
10557
|
+
const runs = material !== null ? this.materialIndexRanges(inst, material) : null;
|
|
10526
10558
|
if (!xray) {
|
|
10527
10559
|
bindMesh();
|
|
10528
|
-
if (
|
|
10529
|
-
|
|
10560
|
+
if (runs)
|
|
10561
|
+
for (const [start, end] of runs)
|
|
10562
|
+
pass.drawIndexed(end - start, 1, start);
|
|
10530
10563
|
else
|
|
10531
10564
|
pass.drawIndexed(inst.model.getIndices().length);
|
|
10532
10565
|
}
|
|
@@ -11755,6 +11788,18 @@ export class Engine {
|
|
|
11755
11788
|
* gaps between them are the timing, and the hold between the middle two is how
|
|
11756
11789
|
* long she is away.
|
|
11757
11790
|
*/
|
|
11791
|
+
/**
|
|
11792
|
+
* Eyes on the camera, per model — see Model.setEyeTracking. Live: solved
|
|
11793
|
+
* every frame against wherever the camera is, orbit or motion alike. Null
|
|
11794
|
+
* gives the eyes back to the motion.
|
|
11795
|
+
*/
|
|
11796
|
+
setEyeTracking(modelName, options) {
|
|
11797
|
+
const inst = this.modelInstances.get(modelName);
|
|
11798
|
+
if (!inst)
|
|
11799
|
+
return false;
|
|
11800
|
+
inst.model.setEyeTracking(options);
|
|
11801
|
+
return true;
|
|
11802
|
+
}
|
|
11758
11803
|
setModelDissolveCycle(modelName, cycle) {
|
|
11759
11804
|
if (!this.modelInstances.has(modelName))
|
|
11760
11805
|
return false;
|
package/dist/index.d.ts
CHANGED
|
@@ -49,4 +49,5 @@ export { boneOverlay, boneMarkerPositions, rigidbodyOverlay, jointOverlay, build
|
|
|
49
49
|
* Pure strings, no GPU: importing them costs a host nothing.
|
|
50
50
|
*/
|
|
51
51
|
export { EFFECT_MATH_API, PARTICLE_STRUCT_WGSL } from "./shaders/passes/hosted-api";
|
|
52
|
+
export type { EyeTrackingOptions } from "./model";
|
|
52
53
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,MAAM,EACN,qBAAqB,EACrB,8BAA8B,EAC9B,sBAAsB,EACtB,qBAAqB,EACrB,KAAK,mBAAmB,EACxB,KAAK,WAAW,EAChB,KAAK,aAAa,EAClB,KAAK,YAAY,EACjB,KAAK,mBAAmB,EACxB,KAAK,oBAAoB,EACzB,KAAK,yBAAyB,EAC9B,KAAK,cAAc,EACnB,KAAK,iBAAiB,EACtB,KAAK,cAAc,EACnB,KAAK,eAAe,EACpB,KAAK,cAAc,EACnB,KAAK,iBAAiB,EACtB,KAAK,aAAa,EAClB,KAAK,aAAa,EAClB,KAAK,gBAAgB,EACrB,KAAK,YAAY,EACjB,KAAK,eAAe,EACpB,KAAK,QAAQ,GACd,MAAM,UAAU,CAAA;AACjB,OAAO,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,KAAK,oBAAoB,EAAE,MAAM,iBAAiB,CAAA;AACvG,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAIzC,OAAO,EAAE,QAAQ,EAAE,KAAK,QAAQ,EAAE,MAAM,OAAO,CAAA;AAE/C,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,QAAQ,EAAE,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,sBAAsB,CAAA;AAIrH,OAAO,EAAE,gBAAgB,EAAE,KAAK,QAAQ,EAAE,KAAK,UAAU,EAAE,MAAM,eAAe,CAAA;AAIhF,OAAO,EAAE,WAAW,EAAE,KAAK,YAAY,EAAE,KAAK,WAAW,EAAE,MAAM,mBAAmB,CAAA;AACpF,OAAO,EACL,YAAY,EACZ,aAAa,EACb,gBAAgB,EAChB,KAAK,cAAc,EACnB,KAAK,aAAa,EAClB,KAAK,SAAS,GACf,MAAM,iBAAiB,CAAA;AACxB,YAAY,EACV,WAAW,EACX,SAAS,EACT,SAAS,EACT,YAAY,EACZ,WAAW,EACX,UAAU,GACX,MAAM,gBAAgB,CAAA;AACvB,OAAO,EAAE,aAAa,EAAE,KAAK,QAAQ,EAAE,KAAK,KAAK,EAAE,MAAM,kBAAkB,CAAA;AAC3E,OAAO,EAAE,cAAc,EAAE,KAAK,WAAW,EAAE,KAAK,SAAS,EAAE,KAAK,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAC7G,YAAY,EACV,UAAU,EACV,UAAU,EACV,gBAAgB,EAChB,eAAe,EACf,sBAAsB,EACtB,qBAAqB,GACtB,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAA;AACvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAA;AACjE,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAA;AAC/D,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAA;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAA;AAC3D,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAA;AAInD,OAAO,EACL,eAAe,EACf,eAAe,EACf,cAAc,EACd,cAAc,EACd,KAAK,gBAAgB,EACrB,KAAK,eAAe,GACrB,MAAM,sBAAsB,CAAA;AAC7B,OAAO,EACL,KAAK,EACL,uBAAuB,EACvB,kBAAkB,EAClB,KAAK,aAAa,EAClB,KAAK,iBAAiB,EACtB,KAAK,KAAK,EACV,KAAK,QAAQ,EACb,KAAK,eAAe,EACpB,KAAK,mBAAmB,EACxB,KAAK,aAAa,GACnB,MAAM,SAAS,CAAA;AAChB,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,UAAU,EAAE,MAAM,QAAQ,CAAA;AACrE,YAAY,EACV,aAAa,EACb,oBAAoB,EACpB,iBAAiB,EACjB,UAAU,EACV,YAAY,EACZ,UAAU,EACV,aAAa,EACb,iBAAiB,EACjB,YAAY,GACb,MAAM,aAAa,CAAA;AACpB,OAAO,EACL,oBAAoB,EACpB,KAAK,eAAe,EACpB,KAAK,iBAAiB,EACtB,KAAK,cAAc,EACnB,KAAK,eAAe,EACpB,KAAK,aAAa,EAClB,KAAK,gBAAgB,EACrB,KAAK,aAAa,GACnB,MAAM,cAAc,CAAA;AACrB,OAAO,EAAE,qBAAqB,EAAE,KAAK,YAAY,EAAE,KAAK,iBAAiB,EAAE,KAAK,mBAAmB,EAAE,MAAM,iBAAiB,CAAA;AAC5H,OAAO,EACL,GAAG,EACH,iBAAiB,EACjB,wBAAwB,EACxB,mCAAmC,GACpC,MAAM,aAAa,CAAA;AACpB,OAAO,EAAE,SAAS,EAAE,4BAA4B,EAAE,KAAK,cAAc,EAAE,KAAK,OAAO,EAAE,MAAM,cAAc,CAAA;AACzG,OAAO,EAAE,SAAS,EAAE,KAAK,iBAAiB,EAAE,MAAM,cAAc,CAAA;AAChE,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AAGxC,OAAO,EACL,eAAe,EACf,gBAAgB,EAChB,KAAK,WAAW,EAChB,KAAK,UAAU,EACf,KAAK,WAAW,EAChB,KAAK,SAAS,EACd,KAAK,aAAa,EAClB,KAAK,WAAW,EAChB,KAAK,OAAO,EACZ,KAAK,SAAS,EACd,KAAK,QAAQ,EACb,KAAK,cAAc,EACnB,KAAK,eAAe,EACpB,KAAK,YAAY,EACjB,KAAK,QAAQ,GACd,MAAM,gBAAgB,CAAA;AACvB,OAAO,EAAE,eAAe,EAAE,KAAK,UAAU,EAAE,MAAM,oBAAoB,CAAA;AACrE,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAA;AACvC,YAAY,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAClD,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,KAAK,SAAS,EAAE,KAAK,KAAK,EAAE,MAAM,iBAAiB,CAAA;AAI3F,OAAO,EACL,WAAW,EACX,mBAAmB,EACnB,gBAAgB,EAChB,YAAY,EACZ,kBAAkB,EAClB,WAAW,EACX,oBAAoB,EACpB,cAAc,EACd,uBAAuB,EACvB,qBAAqB,EACrB,oBAAoB,EACpB,yBAAyB,EACzB,qBAAqB,EACrB,oBAAoB,EACpB,aAAa,EACb,KAAK,gBAAgB,EACrB,KAAK,YAAY,EACjB,KAAK,eAAe,EACpB,KAAK,kBAAkB,EACvB,KAAK,SAAS,EACd,KAAK,uBAAuB,EAC5B,KAAK,cAAc,EACnB,KAAK,mBAAmB,EACxB,KAAK,IAAI,EACT,KAAK,SAAS,GACf,MAAM,WAAW,CAAA;AAElB;;;;;;;;;;;GAWG;AACH,OAAO,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAA;AACnF,YAAY,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAA"}
|
package/dist/model.d.ts
CHANGED
|
@@ -3,6 +3,14 @@ import { type AssetReader } from "./asset-reader";
|
|
|
3
3
|
import { Rigidbody, Joint } from "./physics";
|
|
4
4
|
import { type VmdTrackSelection } from "./vmd-writer";
|
|
5
5
|
import { AnimationClip, AnimationPlayOptions, AnimationProgress, BlendEntry } from "./animation";
|
|
6
|
+
/** What setEyeTracking asks for. */
|
|
7
|
+
export interface EyeTrackingOptions {
|
|
8
|
+
/** 0..1 — how much of the solved gaze replaces the motion's own. Default 1. */
|
|
9
|
+
strength?: number;
|
|
10
|
+
/** Degrees of yaw the eye reaches with the camera 75° to the side. The
|
|
11
|
+
* vertical reaches a fraction of it. Default 20. */
|
|
12
|
+
range?: number;
|
|
13
|
+
}
|
|
6
14
|
export interface ClipEventInfo {
|
|
7
15
|
clip: string;
|
|
8
16
|
/** The registered event time, seconds. */
|
|
@@ -359,6 +367,63 @@ export declare class Model {
|
|
|
359
367
|
getLoadWarnings(): readonly string[];
|
|
360
368
|
/** Post-pose local rotation offsets by bone index (see setBoneRotationOffset). */
|
|
361
369
|
private readonly boneRotationOffsets;
|
|
370
|
+
/** What setEyeTracking asked for, or null while the eyes are the motion's. */
|
|
371
|
+
private eyeTracking;
|
|
372
|
+
/** Where the eyes are asked to look, MODEL space — set by the host each
|
|
373
|
+
* frame before update(); the camera, as the host uses it. */
|
|
374
|
+
private readonly gazeTarget;
|
|
375
|
+
private gazeTargetSet;
|
|
376
|
+
/** The gaze as it stands, per eye (左, 右), in degrees — kept so the eyes can
|
|
377
|
+
* HOLD when the camera goes behind her. */
|
|
378
|
+
private readonly eyeYaw;
|
|
379
|
+
private readonly eyePitch;
|
|
380
|
+
private eyeSubset;
|
|
381
|
+
/**
|
|
382
|
+
* Eyes on a target — the camera, as the host uses it.
|
|
383
|
+
*
|
|
384
|
+
* BONES, NOT MORPHS. MMD gaze is the 両目 → 左目/右目 chain, 両目 driving
|
|
385
|
+
* both through 付与; morphs shape the lids and never steer the iris. The
|
|
386
|
+
* solve writes 左目 and 右目 and holds 両目 at identity so its append cannot
|
|
387
|
+
* stack on top.
|
|
388
|
+
*
|
|
389
|
+
* LIVE, EVERY FRAME — after the motion, IK and 付与 have had their say and
|
|
390
|
+
* before the world pass the skin reads. So it holds under an orbit camera
|
|
391
|
+
* the same as under a camera motion, and an export sees what the editor did.
|
|
392
|
+
*
|
|
393
|
+
* `strength` is how much of the solved gaze replaces the motion's own;
|
|
394
|
+
* `range` the yaw the eye reaches with the camera at 90°, in degrees — the
|
|
395
|
+
* vertical reaches a fraction of it. Null gives the eyes back.
|
|
396
|
+
*/
|
|
397
|
+
setEyeTracking(options: EyeTrackingOptions | null): void;
|
|
398
|
+
hasEyeTracking(): boolean;
|
|
399
|
+
/** Where the eyes look, in MODEL space. Set each frame before update();
|
|
400
|
+
* null leaves them to the motion until a target is set again. */
|
|
401
|
+
setGazeTarget(target: Vec3 | null): void;
|
|
402
|
+
/**
|
|
403
|
+
* The eye solve. Reads the head as IK left it, writes 左目/右目 and holds 両目.
|
|
404
|
+
* Angles are taken in the head's frame with forward = -Z, the way the model
|
|
405
|
+
* rests, and the rotation is the arc from that rest forward.
|
|
406
|
+
*
|
|
407
|
+
* What makes it read as alive rather than possessed, in order:
|
|
408
|
+
* - BEHIND HER, THE EYES HOLD. Past 90° off her facing there is no target
|
|
409
|
+
* to chase and nothing to return to: they keep where they were. Handing
|
|
410
|
+
* them back to the motion read as a reset, and crossing straight behind
|
|
411
|
+
* would flip the held side; a hold does neither, and they pick up again
|
|
412
|
+
* as the camera comes round.
|
|
413
|
+
* - VRM'S RANGE MAP, not an aim. The target's whole 90° of offset maps
|
|
414
|
+
* linearly onto the eye's few degrees (VRMC_vrm lookAt.rangeMap), so a
|
|
415
|
+
* camera 20° above her draws a fraction of a degree of look-up rather
|
|
416
|
+
* than the most she has. Aiming the eye and clamping saturated almost at
|
|
417
|
+
* once, and an MMD iris is most of the eyeball — a few degrees of pitch
|
|
418
|
+
* carries it under the lid — so the vertical scales are a fraction of the
|
|
419
|
+
* horizontal one.
|
|
420
|
+
* - IMMEDIATE, as VRM applies it. Any smoothing or dead band read as the
|
|
421
|
+
* eyes lagging the camera.
|
|
422
|
+
* - VERGENCE. Each eye takes its own direction, so a close camera
|
|
423
|
+
* converges them a little.
|
|
424
|
+
* - NO ROLL. The rotation is the shortest arc from the rest forward.
|
|
425
|
+
*/
|
|
426
|
+
private solveEyes;
|
|
362
427
|
/** Compose a constant local rotation onto a bone AFTER every pose source (clip,
|
|
363
428
|
* blend, tween) each frame — the classic MMD "heel correction": pitch the 足首
|
|
364
429
|
* bones so a motion authored for flat shoes grounds a heeled model. Persists
|
package/dist/model.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../src/model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAA6C,MAAM,QAAQ,CAAA;AAEpF,OAAO,EAAiB,KAAK,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAChE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,WAAW,CAAA;AAG5C,OAAO,EAAa,KAAK,iBAAiB,EAAE,MAAM,cAAc,CAAA;AAChE,OAAO,EACL,aAAa,EACb,oBAAoB,EACpB,iBAAiB,EAEjB,UAAU,EASX,MAAM,aAAa,CAAA;AAsBpB,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAA;IACZ,0CAA0C;IAC1C,IAAI,EAAE,MAAM,CAAA;IACZ,uDAAuD;IACvD,MAAM,EAAE,MAAM,CAAA;CACf;AAED;;2EAE2E;AAC3E,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,MAAM,EAAE,CAAA;IAChB,CAAC,EAAE,MAAM,EAAE,CAAA;IACX,CAAC,EAAE,MAAM,EAAE,CAAA;CACZ;AAOD,MAAM,WAAW,OAAO;IACtB,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;CACb;AAED,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAA;IACzC,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAA;IAClC,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAA;IACjC,SAAS,EAAE,MAAM,CAAA;IACjB,mBAAmB,EAAE,MAAM,CAAA;IAC3B,kBAAkB,EAAE,MAAM,CAAA;IAC1B,kBAAkB,EAAE,MAAM,CAAA;IAC1B,UAAU,EAAE,MAAM,CAAA;IAClB,gBAAgB,EAAE,MAAM,CAAA;IAGxB,UAAU,EAAE,OAAO,CAAA;IACnB,QAAQ,EAAE,MAAM,CAAA;IAChB,SAAS,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAA;IAC3C,QAAQ,EAAE,MAAM,CAAA;IAChB,WAAW,EAAE,MAAM,CAAA;CACpB;AAED,MAAM,WAAW,IAAI;IACnB,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,EAAE,MAAM,CAAA;IACnB,eAAe,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAA;IACzC,QAAQ,EAAE,MAAM,EAAE,CAAA;IAClB,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,4EAA4E;IAC5E,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAA;IACpC;;uDAEmD;IACnD,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;CACnB;AAGD,MAAM,WAAW,MAAM;IACrB,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE,OAAO,CAAA;IACjB,QAAQ,CAAC,EAAE,IAAI,CAAA;IACf,QAAQ,CAAC,EAAE,IAAI,CAAA;CAChB;AAGD,MAAM,WAAW,QAAQ;IACvB,KAAK,EAAE,MAAM,CAAA;IACb,WAAW,EAAE,MAAM,CAAA;IACnB,eAAe,EAAE,MAAM,CAAA;IACvB,cAAc,EAAE,MAAM,CAAA;IACtB,UAAU,EAAE,MAAM,CAAA;IAClB,KAAK,EAAE,MAAM,EAAE,CAAA;CAChB;AAGD,MAAM,WAAW,WAAW;IAC1B,UAAU,EAAE,IAAI,CAAA;IAChB,aAAa,EAAE,IAAI,CAAA;CACpB;AAED,MAAM,WAAW,QAAQ;IACvB,KAAK,EAAE,IAAI,EAAE,CAAA;IACb,mBAAmB,EAAE,YAAY,CAAA;CAClC;AAED,MAAM,WAAW,QAAQ;IACvB,MAAM,EAAE,WAAW,CAAA;IACnB,OAAO,EAAE,UAAU,CAAA;CACpB;AAGD,MAAM,WAAW,iBAAiB;IAChC,WAAW,EAAE,MAAM,CAAA;IACnB,cAAc,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAA;CACzC;AAGD,MAAM,WAAW,mBAAmB;IAClC,UAAU,EAAE,MAAM,CAAA;IAClB,KAAK,EAAE,MAAM,CAAA;CACd;AAID,MAAM,WAAW,eAAe;IAC9B,SAAS,EAAE,MAAM,CAAA;IACjB,WAAW,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAA;IACrC,wCAAwC;IACxC,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAA;CAC3C;AAED,8FAA8F;AAC9F,eAAO,MAAM,uBAAuB,IAAI,CAAA;AACxC,eAAO,MAAM,kBAAkB,IAAI,CAAA;AAInC,MAAM,WAAW,mBAAmB;IAClC,gEAAgE;IAChE,aAAa,EAAE,MAAM,CAAA;IACrB,mDAAmD;IACnD,UAAU,EAAE,MAAM,CAAA;IAClB,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAA;IACzC,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAA;IAClC,SAAS,EAAE,MAAM,CAAA;IACjB,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAA;IACjC,SAAS,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAA;IAC3C,QAAQ,EAAE,MAAM,CAAA;IAChB,YAAY,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAA;IAC9C,WAAW,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAA;IAC7C,SAAS,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAA;CAC5C;AAKD,MAAM,WAAW,aAAa;IAC5B,WAAW,EAAE,MAAM,CAAA;IACnB,yDAAyD;IACzD,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAA;CACzC;AAGD,MAAM,WAAW,KAAK;IACpB,IAAI,EAAE,MAAM,CAAA;IACZ,yEAAyE;IACzE,IAAI,EAAE,MAAM,CAAA;IACZ,aAAa,EAAE,iBAAiB,EAAE,CAAA;IAClC,eAAe,CAAC,EAAE,mBAAmB,EAAE,CAAA;IACvC,WAAW,CAAC,EAAE,eAAe,EAAE,CAAA;IAC/B,eAAe,CAAC,EAAE,mBAAmB,EAAE,CAAA;IACvC,SAAS,CAAC,EAAE,aAAa,EAAE,CAAA;CAC5B;AAED,MAAM,WAAW,QAAQ;IACvB,MAAM,EAAE,KAAK,EAAE,CAAA;CAChB;AAGD,UAAU,gBAAgB;IACxB,aAAa,EAAE,YAAY,CAAA;IAC3B,QAAQ,EAAE,WAAW,CAAA;IACrB,QAAQ,EAAE,WAAW,CAAA;IACrB,SAAS,EAAE,YAAY,CAAA;IACvB,UAAU,EAAE,MAAM,CAAA;IAClB,WAAW,EAAE,MAAM,CAAA;IACnB,UAAU,EAAE,MAAM,CAAA;CACnB;AA2CD,qBAAa,KAAK;IAChB,OAAO,CAAC,KAAK,CAAa;IAE1B,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAO5B,IAAI,QAAQ,IAAI,IAAI,CAEnB;IAED,IAAI,QAAQ,IAAI,IAAI,CAEnB;IAED,2EAA2E;IAC3E,IAAI,KAAK,IAAI,MAAM,CAElB;IAED;6DACyD;IACzD,IAAI,OAAO,IAAI,OAAO,CAErB;IAED,WAAW,CAAC,QAAQ,EAAE,IAAI,GAAG,IAAI;IAKjC,WAAW,CAAC,QAAQ,EAAE,IAAI,GAAG,IAAI;IAKjC,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAK7B,UAAU,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAIlC;;iFAE6E;IAC7E,aAAa,CAAC,MAAM,EAAE,YAAY,GAAG,IAAI,GAAG,IAAI;IAQhD,aAAa,IAAI,YAAY,GAAG,IAAI;IAIpC;4EACwE;IACxE,aAAa,IAAI,YAAY;IAK7B,OAAO,CAAC,iBAAiB;IAUzB,OAAO,CAAC,UAAU,CAA2B;IAC7C,OAAO,CAAC,cAAc,CAA2B;IACjD,OAAO,CAAC,WAAW,CAAQ;IAC3B,OAAO,CAAC,SAAS,CAA0B;IAG3C,OAAO,CAAC,qBAAqB,CAAC,CAAc;IAC5C,OAAO,CAAC,gBAAgB,CAAK;IAC7B,OAAO,CAAC,gBAAgB,CAAK;IAC7B,OAAO,CAAC,mBAAmB,CAAK;IAChC,OAAO,CAAC,mBAAmB,CAAK;IAChC,OAAO,CAAC,eAAe,CAAO;IAG9B,OAAO,CAAC,eAAe,CAAQ;IAC/B,OAAO,CAAC,iBAAiB,CAAQ;IACjC,OAAO,CAAC,QAAQ,CAAgB;IAChC,OAAO,CAAC,SAAS,CAAiB;IAElC,OAAO,CAAC,QAAQ,CAAU;IAC1B,OAAO,CAAC,QAAQ,CAAU;IAG1B,OAAO,CAAC,QAAQ,CAAU;IAG1B,OAAO,CAAC,WAAW,CAAkB;IACrC,OAAO,CAAC,MAAM,CAAc;IAG5B,OAAO,CAAC,YAAY,CAAe;IAGnC,OAAO,CAAC,eAAe,CAAkB;IAGzC,OAAO,CAAC,YAAY,CAAe;IACnC,OAAO,CAAC,WAAW,CAAiB;IAKpC,OAAO,CAAC,aAAa,CAAqF;IAK1G,OAAO,CAAC,cAAc,CAAe;IACrC,OAAO,CAAC,iBAAiB,CAAa;IACtC,OAAO,CAAC,iBAAiB,CAAa;IACtC,OAAO,CAAC,gBAAgB,CAAQ;IAChC,4EAA4E;IAC5E,OAAO,CAAC,SAAS,CAAQ;IAGzB,OAAO,CAAC,aAAa,CAAO;IAM5B,OAAO,CAAC,SAAS,CAAqB;IACtC,OAAO,CAAC,SAAS,CAAwB;IACzC,OAAO,CAAC,MAAM,CAAY;IAC1B,OAAO,CAAC,QAAQ,CAAgB;IAChC,OAAO,CAAC,gBAAgB,CAAuE;IAC/F,OAAO,CAAC,eAAe,CAAiB;IACxC,OAAO,CAAC,cAAc,CAAgB;IACtC;;;;;iCAK6B;IAC7B,OAAO,CAAC,UAAU,CAA4B;IAC9C;;;;;;kCAM8B;IAC9B,OAAO,CAAC,eAAe,CAAsC;IAG7D,OAAO,CAAC,iBAAiB,CAAC,CAAc;IAMxC,OAAO,CAAC,WAAW,CAAa;IAChC,4FAA4F;IAC5F,OAAO,CAAC,aAAa,CAA0B;IAC/C,oFAAoF;IACpF,OAAO,CAAC,kBAAkB,CAA0B;IACpD,kFAAkF;IAClF,OAAO,CAAC,oBAAoB,CAA0B;IACtD,kFAAkF;IAClF,OAAO,CAAC,iBAAiB,CAAsB;IAC/C,OAAO,CAAC,oBAAoB,CAA0B;IAKtD,OAAO,CAAC,YAAY,CAAe;IAEnC,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,WAAW,CAAY;IAG/B,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAuB;IACtD,OAAO,CAAC,gBAAgB,CAAiC;IACzD,OAAO,CAAC,iBAAiB,CAAiC;IAC1D,OAAO,CAAC,eAAe,CAA6B;IAKpD,OAAO,CAAC,OAAO,CASA;IACf,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAmB;IAClD;iFAC6E;IAC7E,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAiG;IAC5H,OAAO,CAAC,QAAQ,CAAC,cAAc,CAA4D;IAK3F,OAAO,CAAC,YAAY,CAA4B;IAChD,OAAO,CAAC,SAAS,CAAoH;IACrI,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAoD;IACrF,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAoD;IAGtF,OAAO,CAAC,WAAW,CAAsB;IACzC,OAAO,CAAC,aAAa,CAAsB;IAC3C,OAAO,CAAC,cAAc,CAA4B;IAClD,OAAO,CAAC,YAAY,CAA0B;IAC9C,OAAO,CAAC,aAAa,CAA4B;IACjD,OAAO,CAAC,aAAa,CAA0B;IAC/C,OAAO,CAAC,eAAe,CAAI;IAE3B,OAAO,CAAC,WAAW,CAA2B;IAC9C,OAAO,CAAC,aAAa,CAAK;IAE1B,iHAAiH;IACjH,eAAe,CAAC,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI;gBAM1D,UAAU,EAAE,YAAY,CAAC,WAAW,CAAC,EACrC,SAAS,EAAE,WAAW,CAAC,WAAW,CAAC,EACnC,QAAQ,EAAE,OAAO,EAAE,EACnB,SAAS,EAAE,QAAQ,EAAE,EACrB,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,EAClB,WAAW,GAAE,SAAS,EAAO,EAC7B,MAAM,GAAE,KAAK,EAAO,EACpB,YAAY,GAAE,MAAM,EAAO;IA0B7B,gEAAgE;IAChE,OAAO,CAAC,cAAc,CAA2D;IAEjF,OAAO,CAAC,yBAAyB;IAuCjC,OAAO,CAAC,mBAAmB;IA2C3B,OAAO,CAAC,gBAAgB;IAuDxB,OAAO,CAAC,sBAAsB;IAwC9B,OAAO,CAAC,sBAAsB;IA+B9B;;;;;;;;OAQG;IACH;;;;;;;;;;;;;;;;;;OAkBG;IACH,OAAO,CAAC,cAAc;IAUtB,OAAO,CAAC,eAAe;IA8BvB;;+CAE2C;IAC3C,oBAAoB,IAAI,OAAO;IAM/B;;;;;;;;;;;OAWG;IACH,wBAAwB,IAAI,MAAM,EAAE;IA8BpC,OAAO,CAAC,YAAY;IA6EpB,WAAW,IAAI,YAAY,CAAC,WAAW,CAAC;IAIxC,WAAW,IAAI,OAAO,EAAE;IAIxB,YAAY,IAAI,QAAQ,EAAE;IAI1B,UAAU,IAAI,WAAW,CAAC,WAAW,CAAC;IAItC;;;;;;;;OAQG;IACH,WAAW,IAAI;QAAE,SAAS,EAAE,YAAY,CAAC;QAAC,GAAG,EAAE,YAAY,CAAC;QAAC,OAAO,EAAE,WAAW,CAAA;KAAE;IAgBnF,WAAW,IAAI,QAAQ;IAOvB,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAI7C,uBAAuB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAShD,uBAAuB,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC,EAAE,IAAI,GAAG,IAAI;IAWzD,OAAO,CAAC,kBAAkB,CAAQ;IAClC,qBAAqB,CAAC,SAAS,EAAE,OAAO,GAAG,IAAI;IAG/C,oBAAoB,IAAI,OAAO;IAI/B;+DAC2D;IAC3D,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,YAAY,GAAG,IAAI;IAOzD,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI;IAMnD;;;;;;;OAOG;IACH,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI;IASlD,WAAW,IAAI,QAAQ;IAOvB,cAAc,IAAI,OAAO;IAKzB,eAAe,IAAI,SAAS,MAAM,EAAE;IAIpC,kFAAkF;IAClF,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAA0B;IAE9D;;;oDAGgD;IAChD,qBAAqB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,GAAG,IAAI,GAAG,OAAO;IAQvE,cAAc,IAAI,SAAS,EAAE;IAI7B,SAAS,IAAI,KAAK,EAAE;IAIpB,WAAW,IAAI,QAAQ;IAIvB,eAAe,IAAI,YAAY;IAM/B,WAAW,CAAC,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI;IAmD3E,SAAS,CAAC,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI;IAwD5E,OAAO,CAAC,4BAA4B;IA0CpC,gBAAgB,IAAI,IAAI,EAAE;IAI1B,oBAAoB,IAAI,YAAY;IAWpC,0BAA0B,IAAI,YAAY;IAI1C,eAAe,IAAI,YAAY;IAoC/B,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI;IAkDvE,OAAO,CAAC,WAAW;IAoGnB,eAAe,IAAI,IAAI;IAMvB,wBAAwB,IAAI,OAAO;IAQnC,wBAAwB,IAAI,YAAY;IAQxC,qBAAqB,IAAI,gBAAgB,GAAG,IAAI;IA6DhD,wBAAwB,IAAI;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI;IAavE,OAAO,CAAC,yBAAyB;IA0DjC;;;;;;;;;OASG;IACH,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,KAAK,GAAG,QAAQ,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAoDpG;;8DAE0D;IAC1D,OAAO,CAAC,kBAAkB;IAS1B,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa,GAAG,IAAI;IAIjD,aAAa,IAAI,IAAI;IAWrB,cAAc,IAAI,IAAI;IAStB,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI;IAI3C;;;;;;;;;;;8EAW0E;IAC1E,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE;QAAE,CAAC,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,iBAAiB,GAAG,IAAI;IAgC5F,mEAAmE;IACnE,OAAO,CAAC,MAAM,CAAC,WAAW;IAU1B;;;;;;;;;OASG;IACH,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,iBAAiB,CAAA;KAAE,GAAG,WAAW;IAM9E,IAAI,IAAI,IAAI;IACZ,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAC3B,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,oBAAoB,GAAG,OAAO;IAgB3D,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IASxB;;;;2DAIuD;IACvD,YAAY,CAAC,OAAO,EAAE,UAAU,EAAE,GAAG,IAAI;IAMzC,cAAc,IAAI,IAAI;IAItB;;;iFAG6E;IAC7E,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,IAAI,CAAA;KAAE,GAAG,OAAO;IAWvG,+EAA+E;IAC/E,aAAa,CAAC,OAAO,SAAM,GAAG,IAAI;IAUlC,4CAA4C;IAC5C,UAAU,IAAI,MAAM,GAAG,IAAI;IAI3B;;;;mDAI+C;IAC/C,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC,EAAE,aAAa,KAAK,IAAI,EAAE,OAAO,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,MAAM,IAAI;IAc5H,OAAO,CAAC,cAAc;IAYtB;yEACqE;IACrE,OAAO,CAAC,gBAAgB;IAWxB;;;mFAG+E;IAC/E,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO;IAoBjF,KAAK,IAAI,IAAI;IAIb,IAAI,IAAI,IAAI;IAOZ;;uEAEmE;IACnE,cAAc,IAAI,IAAI;IAQtB,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAM3B,oBAAoB,IAAI,iBAAiB;IAazC,OAAO,CAAC,MAAM,CAAC,UAAU;IAWzB,OAAO,CAAC,iBAAiB;IAczB;;;;;;OAMG;IACH,OAAO,CAAC,UAAU,CAAoB;IAEtC;8EAC0E;IAC1E,OAAO,CAAC,eAAe;IAevB;;;;8BAI0B;IAC1B,OAAO,CAAC,mBAAmB;IA2C3B,8FAA8F;IAC9F,OAAO,CAAC,gBAAgB;IAkBxB;;;;;;;;;;;;;;;;;OAiBG;IACH,OAAO,CAAC,cAAc;IAetB,OAAO,CAAC,iBAAiB;IAiCzB;;;;yEAIqE;IACrE,OAAO,CAAC,gBAAgB;IAuIxB;sFACkF;IAClF,OAAO,CAAC,YAAY;IAmDpB;;2EAEuE;IACvE,OAAO,CAAC,cAAc;IA0CtB;;;;;;;;;OASG;IACH,MAAM,IAAI,OAAO;IAiBjB,qDAAqD;IACrD,OAAO,CAAC,eAAe;IAQvB,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,UAAO,GAAG,OAAO;IAqGpD,OAAO,CAAC,aAAa;IAyCrB,OAAO,CAAC,aAAa,CAAyB;IAI9C,OAAO,CAAC,4BAA4B;IA4HpC;;;;;;;;;;;;;;;;;OAiBG;IACH,qBAAqB,CAAC,WAAW,EAAE,MAAM,EAAE,GAAG,IAAI;IAkDlD;kFAC8E;IAC9E,oBAAoB,IAAI,MAAM,EAAE;IAIhC;;;;;;;;;;;;;;;OAeG;IACH,kBAAkB,IAAI,IAAI;IA4C1B,oBAAoB,CAAC,MAAM,CAAC,EAAE,UAAU,GAAG,IAAI;CA0GhD"}
|
|
1
|
+
{"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../src/model.ts"],"names":[],"mappings":"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"}
|
package/dist/model.js
CHANGED
|
@@ -13,6 +13,23 @@ const _animSlerp = new Quat(0, 0, 0, 1);
|
|
|
13
13
|
const _animInterpT = new Vec3(0, 0, 0);
|
|
14
14
|
const _convOut = new Vec3(0, 0, 0);
|
|
15
15
|
const _convMat = new Float32Array(16);
|
|
16
|
+
// Scratch for the eye solve — see solveEyes.
|
|
17
|
+
const _eyeHx = new Vec3(0, 0, 0);
|
|
18
|
+
const _eyeHy = new Vec3(0, 0, 0);
|
|
19
|
+
const _eyeHz = new Vec3(0, 0, 0);
|
|
20
|
+
const _eyeDir = new Vec3(0, 0, 0);
|
|
21
|
+
const _eyeGaze = new Vec3(0, 0, 0);
|
|
22
|
+
/** Rest forward of an eye — MMD models face -Z. */
|
|
23
|
+
const _eyeFwd = new Vec3(0, 0, -1);
|
|
24
|
+
const _eyeQuat = Quat.identity();
|
|
25
|
+
const _eyeOwn = Quat.identity();
|
|
26
|
+
const smooth01 = (a, b, x) => {
|
|
27
|
+
const t = Math.min(1, Math.max(0, (x - a) / (b - a)));
|
|
28
|
+
return t * t * (3 - 2 * t);
|
|
29
|
+
};
|
|
30
|
+
/** VRM's range map: `inMax` degrees of target offset onto `out` degrees of eye,
|
|
31
|
+
* linearly — a look-at that never saturates. */
|
|
32
|
+
const rangeMap = (v, inMax, out) => (Math.min(Math.abs(v), inMax) / inMax) * out * Math.sign(v);
|
|
16
33
|
// Scratch for the post-physics append recovery — see applyPhysicsAppend.
|
|
17
34
|
const _appendBasisX = new Vec3(0, 0, 0);
|
|
18
35
|
const _appendBasisY = new Vec3(0, 0, 0);
|
|
@@ -218,6 +235,18 @@ export class Model {
|
|
|
218
235
|
this.clipApplySuspended = false;
|
|
219
236
|
/** Post-pose local rotation offsets by bone index (see setBoneRotationOffset). */
|
|
220
237
|
this.boneRotationOffsets = new Map();
|
|
238
|
+
// ─── Eyes on a target ────────────────────────────────────────────────
|
|
239
|
+
/** What setEyeTracking asked for, or null while the eyes are the motion's. */
|
|
240
|
+
this.eyeTracking = null;
|
|
241
|
+
/** Where the eyes are asked to look, MODEL space — set by the host each
|
|
242
|
+
* frame before update(); the camera, as the host uses it. */
|
|
243
|
+
this.gazeTarget = new Vec3(0, 0, 0);
|
|
244
|
+
this.gazeTargetSet = false;
|
|
245
|
+
/** The gaze as it stands, per eye (左, 右), in degrees — kept so the eyes can
|
|
246
|
+
* HOLD when the camera goes behind her. */
|
|
247
|
+
this.eyeYaw = [0, 0];
|
|
248
|
+
this.eyePitch = [0, 0];
|
|
249
|
+
this.eyeSubset = null;
|
|
221
250
|
/**
|
|
222
251
|
* IK bones whose chains are switched OFF at the current frame.
|
|
223
252
|
*
|
|
@@ -742,6 +771,138 @@ export class Model {
|
|
|
742
771
|
getLoadWarnings() {
|
|
743
772
|
return this.loadWarnings;
|
|
744
773
|
}
|
|
774
|
+
/**
|
|
775
|
+
* Eyes on a target — the camera, as the host uses it.
|
|
776
|
+
*
|
|
777
|
+
* BONES, NOT MORPHS. MMD gaze is the 両目 → 左目/右目 chain, 両目 driving
|
|
778
|
+
* both through 付与; morphs shape the lids and never steer the iris. The
|
|
779
|
+
* solve writes 左目 and 右目 and holds 両目 at identity so its append cannot
|
|
780
|
+
* stack on top.
|
|
781
|
+
*
|
|
782
|
+
* LIVE, EVERY FRAME — after the motion, IK and 付与 have had their say and
|
|
783
|
+
* before the world pass the skin reads. So it holds under an orbit camera
|
|
784
|
+
* the same as under a camera motion, and an export sees what the editor did.
|
|
785
|
+
*
|
|
786
|
+
* `strength` is how much of the solved gaze replaces the motion's own;
|
|
787
|
+
* `range` the yaw the eye reaches with the camera at 90°, in degrees — the
|
|
788
|
+
* vertical reaches a fraction of it. Null gives the eyes back.
|
|
789
|
+
*/
|
|
790
|
+
setEyeTracking(options) {
|
|
791
|
+
if (!options) {
|
|
792
|
+
this.eyeTracking = null;
|
|
793
|
+
return;
|
|
794
|
+
}
|
|
795
|
+
const first = this.eyeTracking === null;
|
|
796
|
+
this.eyeTracking = {
|
|
797
|
+
strength: Math.min(1, Math.max(0, options.strength ?? 1)),
|
|
798
|
+
range: Math.min(30, Math.max(2, options.range ?? 20)),
|
|
799
|
+
};
|
|
800
|
+
if (first) {
|
|
801
|
+
this.eyeYaw[0] = this.eyeYaw[1] = 0;
|
|
802
|
+
this.eyePitch[0] = this.eyePitch[1] = 0;
|
|
803
|
+
}
|
|
804
|
+
}
|
|
805
|
+
hasEyeTracking() {
|
|
806
|
+
return this.eyeTracking !== null;
|
|
807
|
+
}
|
|
808
|
+
/** Where the eyes look, in MODEL space. Set each frame before update();
|
|
809
|
+
* null leaves them to the motion until a target is set again. */
|
|
810
|
+
setGazeTarget(target) {
|
|
811
|
+
if (!target) {
|
|
812
|
+
this.gazeTargetSet = false;
|
|
813
|
+
return;
|
|
814
|
+
}
|
|
815
|
+
this.gazeTarget.set(target);
|
|
816
|
+
this.gazeTargetSet = true;
|
|
817
|
+
}
|
|
818
|
+
/**
|
|
819
|
+
* The eye solve. Reads the head as IK left it, writes 左目/右目 and holds 両目.
|
|
820
|
+
* Angles are taken in the head's frame with forward = -Z, the way the model
|
|
821
|
+
* rests, and the rotation is the arc from that rest forward.
|
|
822
|
+
*
|
|
823
|
+
* What makes it read as alive rather than possessed, in order:
|
|
824
|
+
* - BEHIND HER, THE EYES HOLD. Past 90° off her facing there is no target
|
|
825
|
+
* to chase and nothing to return to: they keep where they were. Handing
|
|
826
|
+
* them back to the motion read as a reset, and crossing straight behind
|
|
827
|
+
* would flip the held side; a hold does neither, and they pick up again
|
|
828
|
+
* as the camera comes round.
|
|
829
|
+
* - VRM'S RANGE MAP, not an aim. The target's whole 90° of offset maps
|
|
830
|
+
* linearly onto the eye's few degrees (VRMC_vrm lookAt.rangeMap), so a
|
|
831
|
+
* camera 20° above her draws a fraction of a degree of look-up rather
|
|
832
|
+
* than the most she has. Aiming the eye and clamping saturated almost at
|
|
833
|
+
* once, and an MMD iris is most of the eyeball — a few degrees of pitch
|
|
834
|
+
* carries it under the lid — so the vertical scales are a fraction of the
|
|
835
|
+
* horizontal one.
|
|
836
|
+
* - IMMEDIATE, as VRM applies it. Any smoothing or dead band read as the
|
|
837
|
+
* eyes lagging the camera.
|
|
838
|
+
* - VERGENCE. Each eye takes its own direction, so a close camera
|
|
839
|
+
* converges them a little.
|
|
840
|
+
* - NO ROLL. The rotation is the shortest arc from the rest forward.
|
|
841
|
+
*/
|
|
842
|
+
solveEyes() {
|
|
843
|
+
const t = this.eyeTracking;
|
|
844
|
+
if (!t)
|
|
845
|
+
return;
|
|
846
|
+
const ni = this.runtimeSkeleton.nameIndex;
|
|
847
|
+
const head = ni["頭"];
|
|
848
|
+
const left = ni["左目"];
|
|
849
|
+
const right = ni["右目"];
|
|
850
|
+
if (head === undefined || left === undefined || right === undefined)
|
|
851
|
+
return;
|
|
852
|
+
const both = ni["両目"];
|
|
853
|
+
const rots = this.runtimeSkeleton.localRotations;
|
|
854
|
+
const worldMats = this.runtimeSkeleton.worldMatrices;
|
|
855
|
+
const hm = worldMats[head].values;
|
|
856
|
+
// The head's axes in model space: its columns. The head LOOKS along its
|
|
857
|
+
// local -Z — MMD models rest facing -Z — so forward is the third column
|
|
858
|
+
// negated.
|
|
859
|
+
const hx = _eyeHx.setXYZ(hm[0], hm[1], hm[2]).normalizeInPlace();
|
|
860
|
+
const hy = _eyeHy.setXYZ(hm[4], hm[5], hm[6]).normalizeInPlace();
|
|
861
|
+
const hz = _eyeHz.setXYZ(hm[8], hm[9], hm[10]).normalizeInPlace();
|
|
862
|
+
const g = this.gazeTarget;
|
|
863
|
+
const toHead = _eyeDir.setXYZ(g.x - hm[12], g.y - hm[13], g.z - hm[14]).normalizeInPlace();
|
|
864
|
+
const behind = -(toHead.x * hz.x + toHead.y * hz.y + toHead.z * hz.z) < 0;
|
|
865
|
+
const w = t.strength;
|
|
866
|
+
const bothRot = both !== undefined ? rots[both] : null;
|
|
867
|
+
// Both map a shorter input range than VRM's 90°: the eye reaches its full
|
|
868
|
+
// yaw with the camera at 75°, and the vertical — a camera is rarely far
|
|
869
|
+
// above or below her — its little at 45°.
|
|
870
|
+
const yawOut = t.range;
|
|
871
|
+
const upOut = t.range * 0.22;
|
|
872
|
+
const downOut = t.range * 0.3;
|
|
873
|
+
const deg = 180 / Math.PI;
|
|
874
|
+
for (let e = 0; e < 2; e++) {
|
|
875
|
+
const idx = e === 0 ? left : right;
|
|
876
|
+
const em = worldMats[idx].values;
|
|
877
|
+
// From this eye to the target, in the head's frame.
|
|
878
|
+
const d = _eyeDir.setXYZ(g.x - em[12], g.y - em[13], g.z - em[14]).normalizeInPlace();
|
|
879
|
+
const lx = d.x * hx.x + d.y * hx.y + d.z * hx.z;
|
|
880
|
+
const ly = d.x * hy.x + d.y * hy.y + d.z * hy.z;
|
|
881
|
+
const lz = -(d.x * hz.x + d.y * hz.y + d.z * hz.z);
|
|
882
|
+
const yaw = Math.atan2(lx, lz) * deg;
|
|
883
|
+
const pitch = Math.asin(Math.max(-1, Math.min(1, ly))) * deg;
|
|
884
|
+
if (!behind) {
|
|
885
|
+
this.eyeYaw[e] = rangeMap(yaw, 75, yawOut);
|
|
886
|
+
this.eyePitch[e] = rangeMap(pitch, 45, pitch > 0 ? upOut : downOut);
|
|
887
|
+
}
|
|
888
|
+
const ry = this.eyeYaw[e] / deg;
|
|
889
|
+
const rp = this.eyePitch[e] / deg;
|
|
890
|
+
const gaze = _eyeGaze.setXYZ(Math.sin(ry) * Math.cos(rp), Math.sin(rp), -Math.cos(ry) * Math.cos(rp));
|
|
891
|
+
Quat.fromUnitVectorsInto(_eyeFwd, gaze, _eyeQuat);
|
|
892
|
+
// Over the motion's own gaze — what 両目 and this eye together had.
|
|
893
|
+
const own = rots[idx];
|
|
894
|
+
if (bothRot)
|
|
895
|
+
Quat.multiplyInto(bothRot, own, _eyeOwn);
|
|
896
|
+
else
|
|
897
|
+
_eyeOwn.set(own);
|
|
898
|
+
Quat.slerpInto(_eyeOwn, _eyeQuat, w, own);
|
|
899
|
+
}
|
|
900
|
+
if (bothRot)
|
|
901
|
+
bothRot.setIdentity();
|
|
902
|
+
// Only these need their world matrices again; nothing hangs off an eye.
|
|
903
|
+
this.eyeSubset ?? (this.eyeSubset = new Int32Array(both !== undefined ? [both, left, right] : [left, right]));
|
|
904
|
+
this.computeWorldMatrices(this.eyeSubset);
|
|
905
|
+
}
|
|
745
906
|
/** Compose a constant local rotation onto a bone AFTER every pose source (clip,
|
|
746
907
|
* blend, tween) each frame — the classic MMD "heel correction": pitch the 足首
|
|
747
908
|
* bones so a motion authored for flat shoes grounds a heeled model. Persists
|
|
@@ -2116,6 +2277,9 @@ export class Model {
|
|
|
2116
2277
|
// Recompute world matrices with final IK rotations applied to localRotations
|
|
2117
2278
|
this.computeWorldMatrices();
|
|
2118
2279
|
}
|
|
2280
|
+
// The eyes, last of all: they read the head as IK left it.
|
|
2281
|
+
if (this.eyeTracking !== null && this.gazeTargetSet)
|
|
2282
|
+
this.solveEyes();
|
|
2119
2283
|
return verticesChanged;
|
|
2120
2284
|
}
|
|
2121
2285
|
solveIKChains() {
|
package/package.json
CHANGED
package/src/engine.ts
CHANGED
|
@@ -2,7 +2,7 @@ import { Camera } from "./camera"
|
|
|
2
2
|
import { decodeDds, isDds } from "./dds-loader"
|
|
3
3
|
import { Mat4, Quat, Vec3 } from "./math"
|
|
4
4
|
import { decodePsd, isPsd } from "./psd-loader"
|
|
5
|
-
import { Model, MATERIAL_MORPH_MULTIPLY, type Material, type Skeleton } from "./model"
|
|
5
|
+
import { Model, MATERIAL_MORPH_MULTIPLY, type EyeTrackingOptions, type Material, type Skeleton } from "./model"
|
|
6
6
|
import { MORPH_COMPUTE_WGSL } from "./shaders/passes/morph"
|
|
7
7
|
import { CULL_COMPUTE_WGSL } from "./shaders/passes/cull"
|
|
8
8
|
import { buildAnchorTable, anchorAliasWgsl, EMPTY_ANCHOR_TABLE, type AnchorTable } from "./shaders/anchor-table"
|
|
@@ -351,6 +351,8 @@ const MAX_EFFECT_ANCHORS = EFFECT_ANCHORS
|
|
|
351
351
|
|
|
352
352
|
/** Only for the bounding sphere's height. */
|
|
353
353
|
const HEAD_BONE = "頭"
|
|
354
|
+
/** Scratch for the per-frame camera-to-model-space hand-off to the eyes. */
|
|
355
|
+
const _gazeScratch = new Vec3(0, 0, 0)
|
|
354
356
|
|
|
355
357
|
/** Path samples kept per trailed anchor. ~2.1s at the sampling rate below, which
|
|
356
358
|
* is a long ribbon — a dancer's arm draws most of a circle in that time.
|
|
@@ -4081,7 +4083,12 @@ export class Engine {
|
|
|
4081
4083
|
list: { wgsl: string; params?: Record<string, EffectParamValue> }[] | null,
|
|
4082
4084
|
): Promise<EffectResult[]> {
|
|
4083
4085
|
const noMounts = { background: false, foreground: false }
|
|
4084
|
-
|
|
4086
|
+
// Clearing an engine that has nothing yet is already done; only an install
|
|
4087
|
+
// needs the device.
|
|
4088
|
+
if (!this.device) {
|
|
4089
|
+
if (!list || list.length === 0) return []
|
|
4090
|
+
return [{ ok: false, diagnostics: ["setEffects requires init() to have run"], mounts: noMounts, params: [], duration: 0 }]
|
|
4091
|
+
}
|
|
4085
4092
|
|
|
4086
4093
|
const requested = list ?? []
|
|
4087
4094
|
if (requested.length === 0) {
|
|
@@ -4216,8 +4223,13 @@ export class Engine {
|
|
|
4216
4223
|
// the life of the surface. What used to be a scene-wide decision made here
|
|
4217
4224
|
// is now each effect's own.
|
|
4218
4225
|
this.ensureFilterPage()
|
|
4219
|
-
|
|
4220
|
-
|
|
4226
|
+
// EVERY shared buffer, not only the field and composite groups. The mounts
|
|
4227
|
+
// above were built across awaits, and audio, a score or lyrics landing in
|
|
4228
|
+
// one of those gaps replaced its buffer and destroyed the old one — which
|
|
4229
|
+
// the new particle, light, trail and grid groups had been built against,
|
|
4230
|
+
// so the next submit named a destroyed buffer. Rebinding at install closes
|
|
4231
|
+
// the gap from whichever side the asset arrived.
|
|
4232
|
+
this.rebindSharedBuffers()
|
|
4221
4233
|
this.writeCompositeViewUniforms()
|
|
4222
4234
|
return results
|
|
4223
4235
|
}
|
|
@@ -9880,6 +9892,17 @@ export class Engine {
|
|
|
9880
9892
|
const stageIdle = (inst.isStage || inst.isPlane || inst.isProp) && !attached && inst.model.isIdle()
|
|
9881
9893
|
let verticesChanged = false
|
|
9882
9894
|
if (!stageIdle) {
|
|
9895
|
+
// The camera in the model's own space, for the eyes — the placement
|
|
9896
|
+
// undone, since bones live in model space.
|
|
9897
|
+
if (inst.model.hasEyeTracking()) {
|
|
9898
|
+
const eye = this.camera.getEyePosition()
|
|
9899
|
+
const m = inst.model
|
|
9900
|
+
_gazeScratch.setXYZ(eye.x - m.position.x, eye.y - m.position.y, eye.z - m.position.z)
|
|
9901
|
+
Quat.rotateVecInvInto(m.rotation, _gazeScratch, _gazeScratch)
|
|
9902
|
+
const inv = 1 / Math.max(m.scale, 1e-6)
|
|
9903
|
+
_gazeScratch.setXYZ(_gazeScratch.x * inv, _gazeScratch.y * inv, _gazeScratch.z * inv)
|
|
9904
|
+
inst.model.setGazeTarget(_gazeScratch)
|
|
9905
|
+
}
|
|
9883
9906
|
verticesChanged = inst.model.update(deltaTime, inst.isStage || inst.isPlane ? false : this.ikEnabled)
|
|
9884
9907
|
inst.skinMatricesDirty = true
|
|
9885
9908
|
}
|
|
@@ -12036,10 +12059,12 @@ export class Engine {
|
|
|
12036
12059
|
const inst = this.modelInstances.get(this.selectedMaterial.modelName)
|
|
12037
12060
|
if (!inst) return
|
|
12038
12061
|
const target = this.selectedMaterial.materialName
|
|
12039
|
-
|
|
12040
|
-
|
|
12062
|
+
// Every draw under the name — see materialIndexRanges for why there can be
|
|
12063
|
+
// more than one.
|
|
12064
|
+
const draws = inst.drawCalls.filter(
|
|
12065
|
+
(d) => (d.type === "opaque" || d.type === "transparent") && d.materialName === target && this.shouldRenderDrawCall(inst, d),
|
|
12041
12066
|
)
|
|
12042
|
-
if (
|
|
12067
|
+
if (draws.length === 0) return
|
|
12043
12068
|
|
|
12044
12069
|
// Mask pass: fill the selected material's projected footprint with 1.0. Depth-always
|
|
12045
12070
|
// (no depth attachment) so the outline traces complete boundaries even when the
|
|
@@ -12052,7 +12077,7 @@ export class Engine {
|
|
|
12052
12077
|
mpass.setVertexBuffer(1, inst.jointsBuffer)
|
|
12053
12078
|
mpass.setVertexBuffer(2, inst.weightsBuffer)
|
|
12054
12079
|
mpass.setIndexBuffer(inst.indexBuffer, "uint32")
|
|
12055
|
-
mpass.drawIndexed(draw.count, 1, draw.firstIndex, 0, 0)
|
|
12080
|
+
for (const draw of draws) mpass.drawIndexed(draw.count, 1, draw.firstIndex, 0, 0)
|
|
12056
12081
|
mpass.end()
|
|
12057
12082
|
|
|
12058
12083
|
// Edge pass: screen-space edge detect on the mask, alpha-blended over swapchain.
|
|
@@ -12068,19 +12093,23 @@ export class Engine {
|
|
|
12068
12093
|
// Unique edges of the mesh, as a line-list index buffer. Each interior edge is
|
|
12069
12094
|
// shared by two triangles, so deduplicating halves both the buffer and the
|
|
12070
12095
|
// draw. Built once per model, on the first frame its wireframe is asked for.
|
|
12071
|
-
/** The index
|
|
12072
|
-
*
|
|
12073
|
-
* the
|
|
12074
|
-
*
|
|
12075
|
-
|
|
12096
|
+
/** The index runs `material` owns — EVERY run, because a PMX may carry
|
|
12097
|
+
* several materials under one name and a name is how the host asks; taking
|
|
12098
|
+
* the first left the rest of a hair or a coat out of its own wireframe —
|
|
12099
|
+
* or the whole list when it is null. Materials are consecutive runs in
|
|
12100
|
+
* declaration order, so each offset is a prefix sum, the same walk the draw
|
|
12101
|
+
* list does. Empty for a name the model does not have, which is what a
|
|
12102
|
+
* stale selection looks like after a reload. */
|
|
12103
|
+
private materialIndexRanges(inst: ModelInstance, material: string | null): [number, number][] {
|
|
12076
12104
|
const indices = inst.model.getIndices()
|
|
12077
|
-
if (!material) return [0, indices.length]
|
|
12105
|
+
if (!material) return [[0, indices.length]]
|
|
12106
|
+
const runs: [number, number][] = []
|
|
12078
12107
|
let offset = 0
|
|
12079
12108
|
for (const m of inst.model.getMaterials()) {
|
|
12080
|
-
if (m.name === material)
|
|
12109
|
+
if (m.name === material) runs.push([offset, offset + m.vertexCount])
|
|
12081
12110
|
offset += m.vertexCount
|
|
12082
12111
|
}
|
|
12083
|
-
return
|
|
12112
|
+
return runs
|
|
12084
12113
|
}
|
|
12085
12114
|
|
|
12086
12115
|
/** A cache key no material can collide with — a PMX name is never empty and
|
|
@@ -12129,9 +12158,8 @@ export class Engine {
|
|
|
12129
12158
|
offset = end
|
|
12130
12159
|
}
|
|
12131
12160
|
} else {
|
|
12132
|
-
const
|
|
12133
|
-
if (
|
|
12134
|
-
const [start, end] = range
|
|
12161
|
+
const runs = this.materialIndexRanges(inst, material)
|
|
12162
|
+
if (runs.length === 0) return false
|
|
12135
12163
|
const seen = new Set<number>()
|
|
12136
12164
|
const add = (a: number, b: number) => {
|
|
12137
12165
|
const lo = a < b ? a : b
|
|
@@ -12141,10 +12169,12 @@ export class Engine {
|
|
|
12141
12169
|
seen.add(k)
|
|
12142
12170
|
edges.push(lo, hi)
|
|
12143
12171
|
}
|
|
12144
|
-
for (
|
|
12145
|
-
|
|
12146
|
-
|
|
12147
|
-
|
|
12172
|
+
for (const [start, end] of runs) {
|
|
12173
|
+
for (let i = start; i + 2 < end; i += 3) {
|
|
12174
|
+
add(indices[i], indices[i + 1])
|
|
12175
|
+
add(indices[i + 1], indices[i + 2])
|
|
12176
|
+
add(indices[i + 2], indices[i])
|
|
12177
|
+
}
|
|
12148
12178
|
}
|
|
12149
12179
|
}
|
|
12150
12180
|
if (edges.length === 0) {
|
|
@@ -12197,8 +12227,8 @@ export class Engine {
|
|
|
12197
12227
|
// picked, since only the picked material draws at all then.
|
|
12198
12228
|
const hm = this.hoverMaterial
|
|
12199
12229
|
const hoverName = material === null && hm?.modelName === inst.name ? hm.materialName : null
|
|
12200
|
-
const
|
|
12201
|
-
const hover =
|
|
12230
|
+
const hoverRuns = hoverName ? this.materialIndexRanges(inst, hoverName) : []
|
|
12231
|
+
const hover = hoverRuns.length > 0 && this.ensureEdgeBuffer(inst, hoverName) ? inst.wireEdges.get(hoverName!) : null
|
|
12202
12232
|
|
|
12203
12233
|
this.wireframeColorData.set(DEFAULT_VERTEX_COLOR)
|
|
12204
12234
|
this.wireframeColorData[4] = this.canvas.width
|
|
@@ -12239,9 +12269,9 @@ export class Engine {
|
|
|
12239
12269
|
// before the base mesh below gets a chance to occlude it. The base mesh's
|
|
12240
12270
|
// depth write further down repeats the SAME geometry for these faces
|
|
12241
12271
|
// (identical z), so it neither disturbs this nor needs to skip them.
|
|
12242
|
-
if (hover &&
|
|
12272
|
+
if (hover && !xray) {
|
|
12243
12273
|
bindMesh()
|
|
12244
|
-
pass.drawIndexed(
|
|
12274
|
+
for (const [start, end] of hoverRuns) pass.drawIndexed(end - start, 1, start)
|
|
12245
12275
|
pass.setBindGroup(0, this.wireframeHoverBindGroup)
|
|
12246
12276
|
pass.setBindGroup(1, hover.bindGroup)
|
|
12247
12277
|
pass.setPipeline(this.wireframePipeline)
|
|
@@ -12263,10 +12293,10 @@ export class Engine {
|
|
|
12263
12293
|
// the coat hide it does not answer that. Its own depth still goes in, so its
|
|
12264
12294
|
// back faces stay hidden and it reads as an object instead of a haze —
|
|
12265
12295
|
// which is the difference between this and turning x-ray on.
|
|
12266
|
-
const
|
|
12296
|
+
const runs = material !== null ? this.materialIndexRanges(inst, material) : null
|
|
12267
12297
|
if (!xray) {
|
|
12268
12298
|
bindMesh()
|
|
12269
|
-
if (
|
|
12299
|
+
if (runs) for (const [start, end] of runs) pass.drawIndexed(end - start, 1, start)
|
|
12270
12300
|
else pass.drawIndexed(inst.model.getIndices().length)
|
|
12271
12301
|
}
|
|
12272
12302
|
|
|
@@ -13726,6 +13756,18 @@ export class Engine {
|
|
|
13726
13756
|
* gaps between them are the timing, and the hold between the middle two is how
|
|
13727
13757
|
* long she is away.
|
|
13728
13758
|
*/
|
|
13759
|
+
/**
|
|
13760
|
+
* Eyes on the camera, per model — see Model.setEyeTracking. Live: solved
|
|
13761
|
+
* every frame against wherever the camera is, orbit or motion alike. Null
|
|
13762
|
+
* gives the eyes back to the motion.
|
|
13763
|
+
*/
|
|
13764
|
+
setEyeTracking(modelName: string, options: EyeTrackingOptions | null): boolean {
|
|
13765
|
+
const inst = this.modelInstances.get(modelName)
|
|
13766
|
+
if (!inst) return false
|
|
13767
|
+
inst.model.setEyeTracking(options)
|
|
13768
|
+
return true
|
|
13769
|
+
}
|
|
13770
|
+
|
|
13729
13771
|
setModelDissolveCycle(modelName: string, cycle: DissolveCycle | null): boolean {
|
|
13730
13772
|
if (!this.modelInstances.has(modelName)) return false
|
|
13731
13773
|
if (!cycle) {
|
package/src/index.ts
CHANGED
package/src/model.ts
CHANGED
|
@@ -30,6 +30,34 @@ const _animSlerp = new Quat(0, 0, 0, 1)
|
|
|
30
30
|
const _animInterpT = new Vec3(0, 0, 0)
|
|
31
31
|
const _convOut = new Vec3(0, 0, 0)
|
|
32
32
|
const _convMat = new Float32Array(16)
|
|
33
|
+
// Scratch for the eye solve — see solveEyes.
|
|
34
|
+
const _eyeHx = new Vec3(0, 0, 0)
|
|
35
|
+
const _eyeHy = new Vec3(0, 0, 0)
|
|
36
|
+
const _eyeHz = new Vec3(0, 0, 0)
|
|
37
|
+
const _eyeDir = new Vec3(0, 0, 0)
|
|
38
|
+
const _eyeGaze = new Vec3(0, 0, 0)
|
|
39
|
+
/** Rest forward of an eye — MMD models face -Z. */
|
|
40
|
+
const _eyeFwd = new Vec3(0, 0, -1)
|
|
41
|
+
const _eyeQuat = Quat.identity()
|
|
42
|
+
const _eyeOwn = Quat.identity()
|
|
43
|
+
const smooth01 = (a: number, b: number, x: number): number => {
|
|
44
|
+
const t = Math.min(1, Math.max(0, (x - a) / (b - a)))
|
|
45
|
+
return t * t * (3 - 2 * t)
|
|
46
|
+
}
|
|
47
|
+
/** VRM's range map: `inMax` degrees of target offset onto `out` degrees of eye,
|
|
48
|
+
* linearly — a look-at that never saturates. */
|
|
49
|
+
const rangeMap = (v: number, inMax: number, out: number): number =>
|
|
50
|
+
(Math.min(Math.abs(v), inMax) / inMax) * out * Math.sign(v)
|
|
51
|
+
|
|
52
|
+
/** What setEyeTracking asks for. */
|
|
53
|
+
export interface EyeTrackingOptions {
|
|
54
|
+
/** 0..1 — how much of the solved gaze replaces the motion's own. Default 1. */
|
|
55
|
+
strength?: number
|
|
56
|
+
/** Degrees of yaw the eye reaches with the camera 75° to the side. The
|
|
57
|
+
* vertical reaches a fraction of it. Default 20. */
|
|
58
|
+
range?: number
|
|
59
|
+
}
|
|
60
|
+
|
|
33
61
|
// Scratch for the post-physics append recovery — see applyPhysicsAppend.
|
|
34
62
|
const _appendBasisX = new Vec3(0, 0, 0)
|
|
35
63
|
const _appendBasisY = new Vec3(0, 0, 0)
|
|
@@ -1082,6 +1110,150 @@ export class Model {
|
|
|
1082
1110
|
/** Post-pose local rotation offsets by bone index (see setBoneRotationOffset). */
|
|
1083
1111
|
private readonly boneRotationOffsets = new Map<number, Quat>()
|
|
1084
1112
|
|
|
1113
|
+
// ─── Eyes on a target ────────────────────────────────────────────────
|
|
1114
|
+
/** What setEyeTracking asked for, or null while the eyes are the motion's. */
|
|
1115
|
+
private eyeTracking: { strength: number; range: number } | null = null
|
|
1116
|
+
/** Where the eyes are asked to look, MODEL space — set by the host each
|
|
1117
|
+
* frame before update(); the camera, as the host uses it. */
|
|
1118
|
+
private readonly gazeTarget = new Vec3(0, 0, 0)
|
|
1119
|
+
private gazeTargetSet = false
|
|
1120
|
+
/** The gaze as it stands, per eye (左, 右), in degrees — kept so the eyes can
|
|
1121
|
+
* HOLD when the camera goes behind her. */
|
|
1122
|
+
private readonly eyeYaw = [0, 0]
|
|
1123
|
+
private readonly eyePitch = [0, 0]
|
|
1124
|
+
private eyeSubset: Int32Array | null = null
|
|
1125
|
+
|
|
1126
|
+
/**
|
|
1127
|
+
* Eyes on a target — the camera, as the host uses it.
|
|
1128
|
+
*
|
|
1129
|
+
* BONES, NOT MORPHS. MMD gaze is the 両目 → 左目/右目 chain, 両目 driving
|
|
1130
|
+
* both through 付与; morphs shape the lids and never steer the iris. The
|
|
1131
|
+
* solve writes 左目 and 右目 and holds 両目 at identity so its append cannot
|
|
1132
|
+
* stack on top.
|
|
1133
|
+
*
|
|
1134
|
+
* LIVE, EVERY FRAME — after the motion, IK and 付与 have had their say and
|
|
1135
|
+
* before the world pass the skin reads. So it holds under an orbit camera
|
|
1136
|
+
* the same as under a camera motion, and an export sees what the editor did.
|
|
1137
|
+
*
|
|
1138
|
+
* `strength` is how much of the solved gaze replaces the motion's own;
|
|
1139
|
+
* `range` the yaw the eye reaches with the camera at 90°, in degrees — the
|
|
1140
|
+
* vertical reaches a fraction of it. Null gives the eyes back.
|
|
1141
|
+
*/
|
|
1142
|
+
setEyeTracking(options: EyeTrackingOptions | null): void {
|
|
1143
|
+
if (!options) {
|
|
1144
|
+
this.eyeTracking = null
|
|
1145
|
+
return
|
|
1146
|
+
}
|
|
1147
|
+
const first = this.eyeTracking === null
|
|
1148
|
+
this.eyeTracking = {
|
|
1149
|
+
strength: Math.min(1, Math.max(0, options.strength ?? 1)),
|
|
1150
|
+
range: Math.min(30, Math.max(2, options.range ?? 20)),
|
|
1151
|
+
}
|
|
1152
|
+
if (first) {
|
|
1153
|
+
this.eyeYaw[0] = this.eyeYaw[1] = 0
|
|
1154
|
+
this.eyePitch[0] = this.eyePitch[1] = 0
|
|
1155
|
+
}
|
|
1156
|
+
}
|
|
1157
|
+
|
|
1158
|
+
hasEyeTracking(): boolean {
|
|
1159
|
+
return this.eyeTracking !== null
|
|
1160
|
+
}
|
|
1161
|
+
|
|
1162
|
+
/** Where the eyes look, in MODEL space. Set each frame before update();
|
|
1163
|
+
* null leaves them to the motion until a target is set again. */
|
|
1164
|
+
setGazeTarget(target: Vec3 | null): void {
|
|
1165
|
+
if (!target) {
|
|
1166
|
+
this.gazeTargetSet = false
|
|
1167
|
+
return
|
|
1168
|
+
}
|
|
1169
|
+
this.gazeTarget.set(target)
|
|
1170
|
+
this.gazeTargetSet = true
|
|
1171
|
+
}
|
|
1172
|
+
|
|
1173
|
+
/**
|
|
1174
|
+
* The eye solve. Reads the head as IK left it, writes 左目/右目 and holds 両目.
|
|
1175
|
+
* Angles are taken in the head's frame with forward = -Z, the way the model
|
|
1176
|
+
* rests, and the rotation is the arc from that rest forward.
|
|
1177
|
+
*
|
|
1178
|
+
* What makes it read as alive rather than possessed, in order:
|
|
1179
|
+
* - BEHIND HER, THE EYES HOLD. Past 90° off her facing there is no target
|
|
1180
|
+
* to chase and nothing to return to: they keep where they were. Handing
|
|
1181
|
+
* them back to the motion read as a reset, and crossing straight behind
|
|
1182
|
+
* would flip the held side; a hold does neither, and they pick up again
|
|
1183
|
+
* as the camera comes round.
|
|
1184
|
+
* - VRM'S RANGE MAP, not an aim. The target's whole 90° of offset maps
|
|
1185
|
+
* linearly onto the eye's few degrees (VRMC_vrm lookAt.rangeMap), so a
|
|
1186
|
+
* camera 20° above her draws a fraction of a degree of look-up rather
|
|
1187
|
+
* than the most she has. Aiming the eye and clamping saturated almost at
|
|
1188
|
+
* once, and an MMD iris is most of the eyeball — a few degrees of pitch
|
|
1189
|
+
* carries it under the lid — so the vertical scales are a fraction of the
|
|
1190
|
+
* horizontal one.
|
|
1191
|
+
* - IMMEDIATE, as VRM applies it. Any smoothing or dead band read as the
|
|
1192
|
+
* eyes lagging the camera.
|
|
1193
|
+
* - VERGENCE. Each eye takes its own direction, so a close camera
|
|
1194
|
+
* converges them a little.
|
|
1195
|
+
* - NO ROLL. The rotation is the shortest arc from the rest forward.
|
|
1196
|
+
*/
|
|
1197
|
+
private solveEyes(): void {
|
|
1198
|
+
const t = this.eyeTracking
|
|
1199
|
+
if (!t) return
|
|
1200
|
+
const ni = this.runtimeSkeleton.nameIndex
|
|
1201
|
+
const head = ni["頭"]
|
|
1202
|
+
const left = ni["左目"]
|
|
1203
|
+
const right = ni["右目"]
|
|
1204
|
+
if (head === undefined || left === undefined || right === undefined) return
|
|
1205
|
+
const both = ni["両目"]
|
|
1206
|
+
const rots = this.runtimeSkeleton.localRotations
|
|
1207
|
+
const worldMats = this.runtimeSkeleton.worldMatrices
|
|
1208
|
+
const hm = worldMats[head].values
|
|
1209
|
+
// The head's axes in model space: its columns. The head LOOKS along its
|
|
1210
|
+
// local -Z — MMD models rest facing -Z — so forward is the third column
|
|
1211
|
+
// negated.
|
|
1212
|
+
const hx = _eyeHx.setXYZ(hm[0], hm[1], hm[2]).normalizeInPlace()
|
|
1213
|
+
const hy = _eyeHy.setXYZ(hm[4], hm[5], hm[6]).normalizeInPlace()
|
|
1214
|
+
const hz = _eyeHz.setXYZ(hm[8], hm[9], hm[10]).normalizeInPlace()
|
|
1215
|
+
const g = this.gazeTarget
|
|
1216
|
+
const toHead = _eyeDir.setXYZ(g.x - hm[12], g.y - hm[13], g.z - hm[14]).normalizeInPlace()
|
|
1217
|
+
const behind = -(toHead.x * hz.x + toHead.y * hz.y + toHead.z * hz.z) < 0
|
|
1218
|
+
const w = t.strength
|
|
1219
|
+
const bothRot = both !== undefined ? rots[both] : null
|
|
1220
|
+
// Both map a shorter input range than VRM's 90°: the eye reaches its full
|
|
1221
|
+
// yaw with the camera at 75°, and the vertical — a camera is rarely far
|
|
1222
|
+
// above or below her — its little at 45°.
|
|
1223
|
+
const yawOut = t.range
|
|
1224
|
+
const upOut = t.range * 0.22
|
|
1225
|
+
const downOut = t.range * 0.3
|
|
1226
|
+
const deg = 180 / Math.PI
|
|
1227
|
+
for (let e = 0; e < 2; e++) {
|
|
1228
|
+
const idx = e === 0 ? left : right
|
|
1229
|
+
const em = worldMats[idx].values
|
|
1230
|
+
// From this eye to the target, in the head's frame.
|
|
1231
|
+
const d = _eyeDir.setXYZ(g.x - em[12], g.y - em[13], g.z - em[14]).normalizeInPlace()
|
|
1232
|
+
const lx = d.x * hx.x + d.y * hx.y + d.z * hx.z
|
|
1233
|
+
const ly = d.x * hy.x + d.y * hy.y + d.z * hy.z
|
|
1234
|
+
const lz = -(d.x * hz.x + d.y * hz.y + d.z * hz.z)
|
|
1235
|
+
const yaw = Math.atan2(lx, lz) * deg
|
|
1236
|
+
const pitch = Math.asin(Math.max(-1, Math.min(1, ly))) * deg
|
|
1237
|
+
if (!behind) {
|
|
1238
|
+
this.eyeYaw[e] = rangeMap(yaw, 75, yawOut)
|
|
1239
|
+
this.eyePitch[e] = rangeMap(pitch, 45, pitch > 0 ? upOut : downOut)
|
|
1240
|
+
}
|
|
1241
|
+
const ry = this.eyeYaw[e] / deg
|
|
1242
|
+
const rp = this.eyePitch[e] / deg
|
|
1243
|
+
const gaze = _eyeGaze.setXYZ(Math.sin(ry) * Math.cos(rp), Math.sin(rp), -Math.cos(ry) * Math.cos(rp))
|
|
1244
|
+
Quat.fromUnitVectorsInto(_eyeFwd, gaze, _eyeQuat)
|
|
1245
|
+
// Over the motion's own gaze — what 両目 and this eye together had.
|
|
1246
|
+
const own = rots[idx]
|
|
1247
|
+
if (bothRot) Quat.multiplyInto(bothRot, own, _eyeOwn)
|
|
1248
|
+
else _eyeOwn.set(own)
|
|
1249
|
+
Quat.slerpInto(_eyeOwn, _eyeQuat, w, own)
|
|
1250
|
+
}
|
|
1251
|
+
if (bothRot) bothRot.setIdentity()
|
|
1252
|
+
// Only these need their world matrices again; nothing hangs off an eye.
|
|
1253
|
+
this.eyeSubset ??= new Int32Array(both !== undefined ? [both, left, right] : [left, right])
|
|
1254
|
+
this.computeWorldMatrices(this.eyeSubset)
|
|
1255
|
+
}
|
|
1256
|
+
|
|
1085
1257
|
/** Compose a constant local rotation onto a bone AFTER every pose source (clip,
|
|
1086
1258
|
* blend, tween) each frame — the classic MMD "heel correction": pitch the 足首
|
|
1087
1259
|
* bones so a motion authored for flat shoes grounds a heeled model. Persists
|
|
@@ -2531,6 +2703,9 @@ export class Model {
|
|
|
2531
2703
|
this.computeWorldMatrices()
|
|
2532
2704
|
}
|
|
2533
2705
|
|
|
2706
|
+
// The eyes, last of all: they read the head as IK left it.
|
|
2707
|
+
if (this.eyeTracking !== null && this.gazeTargetSet) this.solveEyes()
|
|
2708
|
+
|
|
2534
2709
|
return verticesChanged
|
|
2535
2710
|
}
|
|
2536
2711
|
|