reze-engine 0.12.2 → 0.12.3
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 +20 -20
- package/dist/engine.d.ts +9 -4
- package/dist/engine.d.ts.map +1 -1
- package/dist/engine.js +62 -18
- package/dist/shaders/body.d.ts +1 -1
- package/dist/shaders/body.d.ts.map +1 -1
- package/dist/shaders/body.js +7 -28
- package/dist/shaders/cloth_rough.d.ts +1 -1
- package/dist/shaders/cloth_rough.d.ts.map +1 -1
- package/dist/shaders/cloth_rough.js +4 -16
- package/dist/shaders/cloth_smooth.d.ts +1 -1
- package/dist/shaders/cloth_smooth.d.ts.map +1 -1
- package/dist/shaders/cloth_smooth.js +5 -17
- package/dist/shaders/default.d.ts +1 -1
- package/dist/shaders/default.d.ts.map +1 -1
- package/dist/shaders/eye.d.ts +1 -1
- package/dist/shaders/eye.d.ts.map +1 -1
- package/dist/shaders/face.d.ts +1 -1
- package/dist/shaders/face.d.ts.map +1 -1
- package/dist/shaders/face.js +21 -57
- package/dist/shaders/hair.d.ts +1 -1
- package/dist/shaders/hair.d.ts.map +1 -1
- package/dist/shaders/hair.js +7 -27
- package/dist/shaders/materials/body.d.ts +1 -1
- package/dist/shaders/materials/body.d.ts.map +1 -1
- package/dist/shaders/materials/body.js +1 -1
- package/dist/shaders/materials/cloth_rough.d.ts +1 -1
- package/dist/shaders/materials/cloth_rough.d.ts.map +1 -1
- package/dist/shaders/materials/cloth_rough.js +1 -1
- package/dist/shaders/materials/cloth_smooth.d.ts +1 -1
- package/dist/shaders/materials/cloth_smooth.d.ts.map +1 -1
- package/dist/shaders/materials/cloth_smooth.js +1 -1
- package/dist/shaders/materials/common.d.ts +1 -1
- package/dist/shaders/materials/common.d.ts.map +1 -1
- package/dist/shaders/materials/common.js +19 -3
- package/dist/shaders/materials/default.d.ts +1 -1
- package/dist/shaders/materials/default.d.ts.map +1 -1
- package/dist/shaders/materials/default.js +1 -1
- package/dist/shaders/materials/eye.d.ts +1 -1
- package/dist/shaders/materials/eye.d.ts.map +1 -1
- package/dist/shaders/materials/eye.js +1 -1
- package/dist/shaders/materials/face.d.ts +1 -1
- package/dist/shaders/materials/face.d.ts.map +1 -1
- package/dist/shaders/materials/face.js +1 -1
- package/dist/shaders/materials/hair.d.ts +1 -1
- package/dist/shaders/materials/hair.d.ts.map +1 -1
- package/dist/shaders/materials/hair.js +1 -1
- package/dist/shaders/materials/metal.d.ts +1 -1
- package/dist/shaders/materials/metal.d.ts.map +1 -1
- package/dist/shaders/materials/metal.js +1 -1
- package/dist/shaders/materials/stockings.d.ts +1 -1
- package/dist/shaders/materials/stockings.d.ts.map +1 -1
- package/dist/shaders/materials/stockings.js +1 -1
- package/dist/shaders/metal.d.ts +1 -1
- package/dist/shaders/metal.d.ts.map +1 -1
- package/dist/shaders/metal.js +4 -17
- package/dist/shaders/nodes.d.ts +1 -1
- package/dist/shaders/nodes.d.ts.map +1 -1
- package/dist/shaders/nodes.js +0 -9
- package/dist/shaders/passes/bloom.d.ts +1 -1
- package/dist/shaders/passes/bloom.d.ts.map +1 -1
- package/dist/shaders/passes/bloom.js +7 -4
- package/dist/shaders/passes/composite.d.ts +1 -1
- package/dist/shaders/passes/composite.d.ts.map +1 -1
- package/dist/shaders/passes/composite.js +11 -4
- package/dist/shaders/passes/ground.d.ts +1 -1
- package/dist/shaders/passes/ground.d.ts.map +1 -1
- package/dist/shaders/passes/ground.js +6 -2
- package/dist/shaders/passes/outline.d.ts +1 -1
- package/dist/shaders/passes/outline.d.ts.map +1 -1
- package/dist/shaders/passes/outline.js +2 -2
- package/dist/shaders/stockings.d.ts +1 -1
- package/dist/shaders/stockings.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/engine.ts +60 -18
- package/src/shaders/materials/body.ts +1 -1
- package/src/shaders/materials/cloth_rough.ts +1 -1
- package/src/shaders/materials/cloth_smooth.ts +1 -1
- package/src/shaders/materials/common.ts +19 -3
- package/src/shaders/materials/default.ts +1 -1
- package/src/shaders/materials/eye.ts +1 -1
- package/src/shaders/materials/face.ts +1 -1
- package/src/shaders/materials/hair.ts +1 -1
- package/src/shaders/materials/metal.ts +1 -1
- package/src/shaders/materials/stockings.ts +1 -1
- package/src/shaders/passes/bloom.ts +7 -4
- package/src/shaders/passes/composite.ts +11 -4
- package/src/shaders/passes/ground.ts +6 -2
- package/src/shaders/passes/outline.ts +2 -2
- package/dist/bezier-interpolate.d.ts +0 -15
- package/dist/bezier-interpolate.d.ts.map +0 -1
- package/dist/bezier-interpolate.js +0 -40
- package/dist/engine_ts.d.ts +0 -143
- package/dist/engine_ts.d.ts.map +0 -1
- package/dist/engine_ts.js +0 -1575
- package/dist/ik.d.ts +0 -32
- package/dist/ik.d.ts.map +0 -1
- package/dist/ik.js +0 -337
- package/dist/player.d.ts +0 -64
- package/dist/player.d.ts.map +0 -1
- package/dist/player.js +0 -220
- package/dist/pool-scene.d.ts +0 -52
- package/dist/pool-scene.d.ts.map +0 -1
- package/dist/pool-scene.js +0 -1122
- package/dist/pool.d.ts +0 -38
- package/dist/pool.d.ts.map +0 -1
- package/dist/pool.js +0 -422
- package/dist/rzm-converter.d.ts +0 -12
- package/dist/rzm-converter.d.ts.map +0 -1
- package/dist/rzm-converter.js +0 -40
- package/dist/rzm-loader.d.ts +0 -24
- package/dist/rzm-loader.d.ts.map +0 -1
- package/dist/rzm-loader.js +0 -488
- package/dist/rzm-writer.d.ts +0 -27
- package/dist/rzm-writer.d.ts.map +0 -1
- package/dist/rzm-writer.js +0 -701
|
@@ -24,10 +24,13 @@ fn fetch(c: vec2<i32>, clampV: f32) -> vec3f {
|
|
|
24
24
|
let d = vec2<i32>(textureDimensions(hdrTex));
|
|
25
25
|
let cc = clamp(c, vec2<i32>(0), d - vec2<i32>(1));
|
|
26
26
|
let s = textureLoad(hdrTex, cc, 0);
|
|
27
|
-
//
|
|
28
|
-
|
|
29
|
-
//
|
|
30
|
-
|
|
27
|
+
// hdrTex is rg11b10ufloat (no alpha channel). Alpha lives in maskTex.g, written
|
|
28
|
+
// alongside the bloom mask in .r by the scene pass. Scene uses src-alpha blend
|
|
29
|
+
// with clear alpha 0 → hdr rgb is premultiplied; divide by the aux alpha to
|
|
30
|
+
// recover straight color before the Karis luminance weighting.
|
|
31
|
+
let aux = textureLoad(maskTex, cc, 0);
|
|
32
|
+
let mask = aux.r;
|
|
33
|
+
let rgb = max(s.rgb / max(aux.g, 1e-6), vec3f(0.0));
|
|
31
34
|
let masked = rgb * mask;
|
|
32
35
|
// Blender clamps each tap BEFORE Karis average (eevee_bloom: color = min(clampIntensity, color)).
|
|
33
36
|
return select(masked, min(masked, vec3f(clampV)), clampV > 0.0);
|
|
@@ -13,6 +13,12 @@ override APPLY_GAMMA: bool = true;
|
|
|
13
13
|
@group(0) @binding(1) var bloomTex: texture_2d<f32>; // bloomUpTexture mip 0 (full pyramid top)
|
|
14
14
|
@group(0) @binding(2) var bloomSamp: sampler;
|
|
15
15
|
@group(0) @binding(3) var<uniform> viewU: array<vec4<f32>, 2>;
|
|
16
|
+
// Aux mask/alpha texture. .r = bloom mask (unused here; bloom blit uses it).
|
|
17
|
+
// .g = accumulated canvas alpha (what hdr.a carried before the HDR format
|
|
18
|
+
// became rg11b10ufloat). We unpremultiply HDR by this alpha for tonemap, then
|
|
19
|
+
// re-premultiply the tonemapped color for output so the premultiplied canvas
|
|
20
|
+
// alphaMode composites the WebGPU surface over the page background correctly.
|
|
21
|
+
@group(0) @binding(4) var maskTex: texture_2d<f32>;
|
|
16
22
|
// viewU[0] = (exposure, invGamma, _, _); viewU[1] = (tint.rgb, intensity)
|
|
17
23
|
// invGamma = 1/gamma precomputed on CPU — avoids a per-pixel divide.
|
|
18
24
|
|
|
@@ -39,11 +45,12 @@ fn filmic(x: f32) -> f32 {
|
|
|
39
45
|
}
|
|
40
46
|
|
|
41
47
|
@fragment fn fs(@builtin(position) fragCoord: vec4f) -> @location(0) vec4f {
|
|
42
|
-
let
|
|
43
|
-
let
|
|
48
|
+
let coord = vec2<i32>(fragCoord.xy);
|
|
49
|
+
let hdr = textureLoad(hdrTex, coord, 0);
|
|
50
|
+
let alpha = textureLoad(maskTex, coord, 0).g;
|
|
51
|
+
let a = max(alpha, 1e-6);
|
|
44
52
|
let straight = hdr.rgb / a;
|
|
45
53
|
let fullSz = vec2f(textureDimensions(hdrTex));
|
|
46
|
-
let bloomSz = vec2f(textureDimensions(bloomTex));
|
|
47
54
|
// Bloom is at half-res (pyramid mip 0). Sampler interpolates back to full-res UVs.
|
|
48
55
|
// fragCoord.xy is already at pixel center (e.g. 0.5, 0.5 for first pixel).
|
|
49
56
|
let bloomUv = fragCoord.xy / max(fullSz, vec2f(1.0));
|
|
@@ -57,6 +64,6 @@ fn filmic(x: f32) -> f32 {
|
|
|
57
64
|
if (APPLY_GAMMA) {
|
|
58
65
|
disp = pow(disp, vec3f(viewU[0].y));
|
|
59
66
|
}
|
|
60
|
-
return vec4f(disp *
|
|
67
|
+
return vec4f(disp * alpha, alpha);
|
|
61
68
|
}
|
|
62
69
|
`
|
|
@@ -48,7 +48,7 @@ struct VO { @builtin(position) position: vec4f, @location(0) worldPos: vec3f, @l
|
|
|
48
48
|
var o: VO; o.worldPos = position; o.normal = normal;
|
|
49
49
|
o.position = camera.projection * camera.view * vec4f(position, 1.0); return o;
|
|
50
50
|
}
|
|
51
|
-
struct FSOut { @location(0) color: vec4f, @location(1) mask:
|
|
51
|
+
struct FSOut { @location(0) color: vec4f, @location(1) mask: vec4f };
|
|
52
52
|
@fragment fn fs(i: VO) -> FSOut {
|
|
53
53
|
let n = normalize(i.normal);
|
|
54
54
|
let centerDist = length(i.worldPos.xz);
|
|
@@ -88,7 +88,11 @@ struct FSOut { @location(0) color: vec4f, @location(1) mask: f32 };
|
|
|
88
88
|
let finalColor = mix(baseColor, material.gridLineColor, gridLine * material.gridLineOpacity * edgeFade);
|
|
89
89
|
var out: FSOut;
|
|
90
90
|
out.color = vec4f(finalColor * edgeFade, edgeFade);
|
|
91
|
-
|
|
91
|
+
// mask.r = 0: ground never contributes to bloom. mask.g = 1.0 with src.a =
|
|
92
|
+
// edgeFade turns the aux blend into alpha-over, so the drawable alpha fades
|
|
93
|
+
// from edgeFade at the center to 0 at the radial edge — letting the page
|
|
94
|
+
// background show through under the premultiplied canvas alphaMode.
|
|
95
|
+
out.mask = vec4f(0.0, 1.0, 0.0, edgeFade);
|
|
92
96
|
return out;
|
|
93
97
|
}
|
|
94
98
|
`
|
|
@@ -74,11 +74,11 @@ struct VertexOutput {
|
|
|
74
74
|
return output;
|
|
75
75
|
}
|
|
76
76
|
|
|
77
|
-
struct FSOut { @location(0) color: vec4f, @location(1) mask:
|
|
77
|
+
struct FSOut { @location(0) color: vec4f, @location(1) mask: vec4f };
|
|
78
78
|
@fragment fn fs() -> FSOut {
|
|
79
79
|
var out: FSOut;
|
|
80
80
|
out.color = material.edgeColor;
|
|
81
|
-
out.mask = 1.0;
|
|
81
|
+
out.mask = vec4f(1.0, 1.0, 0.0, out.color.a);
|
|
82
82
|
return out;
|
|
83
83
|
}
|
|
84
84
|
`
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Bezier interpolation for VMD animations
|
|
3
|
-
* Based on the reference implementation from babylon-mmd
|
|
4
|
-
*/
|
|
5
|
-
/**
|
|
6
|
-
* Bezier interpolation function
|
|
7
|
-
* @param x1 First control point X (0-127, normalized to 0-1)
|
|
8
|
-
* @param x2 Second control point X (0-127, normalized to 0-1)
|
|
9
|
-
* @param y1 First control point Y (0-127, normalized to 0-1)
|
|
10
|
-
* @param y2 Second control point Y (0-127, normalized to 0-1)
|
|
11
|
-
* @param t Interpolation parameter (0-1)
|
|
12
|
-
* @returns Interpolated value (0-1)
|
|
13
|
-
*/
|
|
14
|
-
export declare function bezierInterpolate(x1: number, x2: number, y1: number, y2: number, t: number): number;
|
|
15
|
-
//# sourceMappingURL=bezier-interpolate.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"bezier-interpolate.d.ts","sourceRoot":"","sources":["../src/bezier-interpolate.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAgCnG"}
|
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Bezier interpolation for VMD animations
|
|
3
|
-
* Based on the reference implementation from babylon-mmd
|
|
4
|
-
*/
|
|
5
|
-
/**
|
|
6
|
-
* Bezier interpolation function
|
|
7
|
-
* @param x1 First control point X (0-127, normalized to 0-1)
|
|
8
|
-
* @param x2 Second control point X (0-127, normalized to 0-1)
|
|
9
|
-
* @param y1 First control point Y (0-127, normalized to 0-1)
|
|
10
|
-
* @param y2 Second control point Y (0-127, normalized to 0-1)
|
|
11
|
-
* @param t Interpolation parameter (0-1)
|
|
12
|
-
* @returns Interpolated value (0-1)
|
|
13
|
-
*/
|
|
14
|
-
export function bezierInterpolate(x1, x2, y1, y2, t) {
|
|
15
|
-
// Clamp t to [0, 1]
|
|
16
|
-
t = Math.max(0, Math.min(1, t));
|
|
17
|
-
// Binary search for the t value that gives us the desired x
|
|
18
|
-
// We're solving for t in the Bezier curve: x(t) = 3*(1-t)^2*t*x1 + 3*(1-t)*t^2*x2 + t^3
|
|
19
|
-
let start = 0;
|
|
20
|
-
let end = 1;
|
|
21
|
-
let mid = 0.5;
|
|
22
|
-
// Iterate until we find the t value that gives us the desired x
|
|
23
|
-
for (let i = 0; i < 15; i++) {
|
|
24
|
-
// Evaluate Bezier curve at mid point
|
|
25
|
-
const x = 3 * (1 - mid) * (1 - mid) * mid * x1 + 3 * (1 - mid) * mid * mid * x2 + mid * mid * mid;
|
|
26
|
-
if (Math.abs(x - t) < 0.0001) {
|
|
27
|
-
break;
|
|
28
|
-
}
|
|
29
|
-
if (x < t) {
|
|
30
|
-
start = mid;
|
|
31
|
-
}
|
|
32
|
-
else {
|
|
33
|
-
end = mid;
|
|
34
|
-
}
|
|
35
|
-
mid = (start + end) / 2;
|
|
36
|
-
}
|
|
37
|
-
// Now evaluate the y value at this t
|
|
38
|
-
const y = 3 * (1 - mid) * (1 - mid) * mid * y1 + 3 * (1 - mid) * mid * mid * y2 + mid * mid * mid;
|
|
39
|
-
return y;
|
|
40
|
-
}
|
package/dist/engine_ts.d.ts
DELETED
|
@@ -1,143 +0,0 @@
|
|
|
1
|
-
import { Quat, Vec3 } from "reze-mmd";
|
|
2
|
-
export type EngineOptions = {
|
|
3
|
-
ambientColor?: Vec3;
|
|
4
|
-
bloomIntensity?: number;
|
|
5
|
-
rimLightIntensity?: number;
|
|
6
|
-
cameraDistance?: number;
|
|
7
|
-
cameraTarget?: Vec3;
|
|
8
|
-
};
|
|
9
|
-
export interface EngineStats {
|
|
10
|
-
fps: number;
|
|
11
|
-
frameTime: number;
|
|
12
|
-
}
|
|
13
|
-
export declare class Engine {
|
|
14
|
-
private canvas;
|
|
15
|
-
private device;
|
|
16
|
-
private context;
|
|
17
|
-
private presentationFormat;
|
|
18
|
-
private camera;
|
|
19
|
-
private cameraUniformBuffer;
|
|
20
|
-
private cameraMatrixData;
|
|
21
|
-
private cameraDistance;
|
|
22
|
-
private cameraTarget;
|
|
23
|
-
private lightUniformBuffer;
|
|
24
|
-
private lightData;
|
|
25
|
-
private vertexBuffer;
|
|
26
|
-
private indexBuffer?;
|
|
27
|
-
private resizeObserver;
|
|
28
|
-
private depthTexture;
|
|
29
|
-
private modelPipeline;
|
|
30
|
-
private eyePipeline;
|
|
31
|
-
private hairPipelineOverEyes;
|
|
32
|
-
private hairPipelineOverNonEyes;
|
|
33
|
-
private hairDepthPipeline;
|
|
34
|
-
private outlinePipeline;
|
|
35
|
-
private hairOutlinePipeline;
|
|
36
|
-
private mainBindGroupLayout;
|
|
37
|
-
private outlineBindGroupLayout;
|
|
38
|
-
private jointsBuffer;
|
|
39
|
-
private weightsBuffer;
|
|
40
|
-
private skinMatrixBuffer?;
|
|
41
|
-
private multisampleTexture;
|
|
42
|
-
private readonly sampleCount;
|
|
43
|
-
private renderPassDescriptor;
|
|
44
|
-
private readonly STENCIL_EYE_VALUE;
|
|
45
|
-
private readonly BLOOM_DOWNSCALE_FACTOR;
|
|
46
|
-
private static readonly DEFAULT_BLOOM_THRESHOLD;
|
|
47
|
-
private static readonly DEFAULT_BLOOM_INTENSITY;
|
|
48
|
-
private static readonly DEFAULT_RIM_LIGHT_INTENSITY;
|
|
49
|
-
private static readonly DEFAULT_CAMERA_DISTANCE;
|
|
50
|
-
private static readonly DEFAULT_CAMERA_TARGET;
|
|
51
|
-
private static readonly TRANSPARENCY_EPSILON;
|
|
52
|
-
private static readonly STATS_FPS_UPDATE_INTERVAL_MS;
|
|
53
|
-
private static readonly STATS_FRAME_TIME_ROUNDING;
|
|
54
|
-
private ambientColor;
|
|
55
|
-
private sceneRenderTexture;
|
|
56
|
-
private sceneRenderTextureView;
|
|
57
|
-
private bloomExtractTexture;
|
|
58
|
-
private bloomBlurTexture1;
|
|
59
|
-
private bloomBlurTexture2;
|
|
60
|
-
private bloomExtractPipeline;
|
|
61
|
-
private bloomBlurPipeline;
|
|
62
|
-
private bloomComposePipeline;
|
|
63
|
-
private blurDirectionBuffer;
|
|
64
|
-
private bloomIntensityBuffer;
|
|
65
|
-
private bloomThresholdBuffer;
|
|
66
|
-
private linearSampler;
|
|
67
|
-
private bloomExtractBindGroup?;
|
|
68
|
-
private bloomBlurHBindGroup?;
|
|
69
|
-
private bloomBlurVBindGroup?;
|
|
70
|
-
private bloomComposeBindGroup?;
|
|
71
|
-
private bloomThreshold;
|
|
72
|
-
private bloomIntensity;
|
|
73
|
-
private rimLightIntensity;
|
|
74
|
-
private currentModel;
|
|
75
|
-
private modelDir;
|
|
76
|
-
private physics;
|
|
77
|
-
private materialSampler;
|
|
78
|
-
private textureCache;
|
|
79
|
-
private vertexBufferNeedsUpdate;
|
|
80
|
-
private drawCalls;
|
|
81
|
-
private lastFpsUpdate;
|
|
82
|
-
private framesSinceLastUpdate;
|
|
83
|
-
private lastFrameTime;
|
|
84
|
-
private frameTimeSum;
|
|
85
|
-
private frameTimeCount;
|
|
86
|
-
private stats;
|
|
87
|
-
private animationFrameId;
|
|
88
|
-
private renderLoopCallback;
|
|
89
|
-
private player;
|
|
90
|
-
private hasAnimation;
|
|
91
|
-
constructor(canvas: HTMLCanvasElement, options?: EngineOptions);
|
|
92
|
-
init(): Promise<void>;
|
|
93
|
-
private createRenderPipeline;
|
|
94
|
-
private createPipelines;
|
|
95
|
-
private createBloomPipelines;
|
|
96
|
-
private setupBloom;
|
|
97
|
-
private setupResize;
|
|
98
|
-
private handleResize;
|
|
99
|
-
private setupCamera;
|
|
100
|
-
private setupLighting;
|
|
101
|
-
private setAmbientColor;
|
|
102
|
-
loadAnimation(url: string): Promise<void>;
|
|
103
|
-
playAnimation(): void;
|
|
104
|
-
stopAnimation(): void;
|
|
105
|
-
pauseAnimation(): void;
|
|
106
|
-
seekAnimation(time: number): void;
|
|
107
|
-
getAnimationProgress(): import("./player").AnimationProgress;
|
|
108
|
-
/**
|
|
109
|
-
* Apply animation pose to model
|
|
110
|
-
*/
|
|
111
|
-
private applyPose;
|
|
112
|
-
/**
|
|
113
|
-
* Reset bones and physics to match a given pose
|
|
114
|
-
* @param pose The pose to apply
|
|
115
|
-
* @param resetBonesWithoutKeyframes If true, reset bones that don't have keyframes in the pose to identity
|
|
116
|
-
*/
|
|
117
|
-
private resetBonesAndPhysics;
|
|
118
|
-
getStats(): EngineStats;
|
|
119
|
-
runRenderLoop(callback?: () => void): void;
|
|
120
|
-
stopRenderLoop(): void;
|
|
121
|
-
dispose(): void;
|
|
122
|
-
loadModel(path: string): Promise<void>;
|
|
123
|
-
rotateBones(bones: string[], rotations: Quat[], durationMs?: number): void;
|
|
124
|
-
moveBones(bones: string[], relativeTranslations: Vec3[], durationMs?: number): void;
|
|
125
|
-
setMorphWeight(name: string, weight: number, durationMs?: number): void;
|
|
126
|
-
private updateVertexBuffer;
|
|
127
|
-
private setupModelBuffers;
|
|
128
|
-
private setupMaterials;
|
|
129
|
-
private createMaterialUniformBuffer;
|
|
130
|
-
private createUniformBuffer;
|
|
131
|
-
private createTextureFromPath;
|
|
132
|
-
private renderEyes;
|
|
133
|
-
private renderHair;
|
|
134
|
-
render(): void;
|
|
135
|
-
private applyBloom;
|
|
136
|
-
private updateCameraUniforms;
|
|
137
|
-
private updateRenderTarget;
|
|
138
|
-
private updateModelPose;
|
|
139
|
-
private computeSkinMatrices;
|
|
140
|
-
private drawOutlines;
|
|
141
|
-
private updateStats;
|
|
142
|
-
}
|
|
143
|
-
//# sourceMappingURL=engine_ts.d.ts.map
|
package/dist/engine_ts.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"engine_ts.d.ts","sourceRoot":"","sources":["../src/engine_ts.ts"],"names":[],"mappings":"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"}
|