postext-folio 0.72.1 → 0.74.0
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/environments.d.ts.map +1 -1
- package/dist/environments.js +9 -2
- package/dist/environments.js.map +1 -1
- package/dist/pageFlip/finish.d.ts +118 -0
- package/dist/pageFlip/finish.d.ts.map +1 -0
- package/dist/pageFlip/finish.js +225 -0
- package/dist/pageFlip/finish.js.map +1 -0
- package/dist/pageFlip/leaf.d.ts.map +1 -1
- package/dist/pageFlip/leaf.js +3 -0
- package/dist/pageFlip/leaf.js.map +1 -1
- package/dist/pageFlip/materials.d.ts +4 -2
- package/dist/pageFlip/materials.d.ts.map +1 -1
- package/dist/pageFlip/materials.js +32 -6
- package/dist/pageFlip/materials.js.map +1 -1
- package/dist/pageFlip/mirror.d.ts +15 -0
- package/dist/pageFlip/mirror.d.ts.map +1 -0
- package/dist/pageFlip/mirror.js +54 -0
- package/dist/pageFlip/mirror.js.map +1 -0
- package/dist/pageFlip/occlusion.d.ts +11 -1
- package/dist/pageFlip/occlusion.d.ts.map +1 -1
- package/dist/pageFlip/occlusion.js +9 -4
- package/dist/pageFlip/occlusion.js.map +1 -1
- package/dist/pageFlip/through.d.ts +140 -0
- package/dist/pageFlip/through.d.ts.map +1 -0
- package/dist/pageFlip/through.js +235 -0
- package/dist/pageFlip/through.js.map +1 -0
- package/dist/pageFlip.d.ts +9 -0
- package/dist/pageFlip.d.ts.map +1 -1
- package/dist/pageFlip.js +33 -51
- package/dist/pageFlip.js.map +1 -1
- package/dist/postext/painting.d.ts +2 -0
- package/dist/postext/painting.d.ts.map +1 -1
- package/dist/postext/painting.js +28 -10
- package/dist/postext/painting.js.map +1 -1
- package/dist/postext/state.d.ts +4 -1
- package/dist/postext/state.d.ts.map +1 -1
- package/dist/postext/through.d.ts +37 -0
- package/dist/postext/through.d.ts.map +1 -0
- package/dist/postext/through.js +178 -0
- package/dist/postext/through.js.map +1 -0
- package/dist/postext.d.ts.map +1 -1
- package/dist/postext.js +17 -2
- package/dist/postext.js.map +1 -1
- package/dist/viewer/constants.d.ts +4 -0
- package/dist/viewer/constants.d.ts.map +1 -1
- package/dist/viewer/constants.js +13 -0
- package/dist/viewer/constants.js.map +1 -1
- package/dist/viewer/turning.d.ts.map +1 -1
- package/dist/viewer/turning.js +2 -1
- package/dist/viewer/turning.js.map +1 -1
- package/dist/viewer/types.d.ts +2 -0
- package/dist/viewer/types.d.ts.map +1 -1
- package/dist/viewer.d.ts.map +1 -1
- package/dist/viewer.js +4 -2
- package/dist/viewer.js.map +1 -1
- package/package.json +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"environments.d.ts","sourceRoot":"","sources":["../src/environments.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,EAIL,KAAK,EAEL,OAAO,EAER,MAAM,OAAO,CAAC;AAEf,MAAM,MAAM,eAAe,GAAG,QAAQ,GAAG,UAAU,GAAG,MAAM,GAAG,UAAU,GAAG,OAAO,CAAC;AAEpF;;wEAEwE;AACxE,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,KAAK,CAAC;IACb;yCACqC;IACrC,GAAG,EAAE,OAAO,CAAC;IACb,QAAQ,EAAE,KAAK,CAAC;IAChB,gCAAgC;IAChC,YAAY,EAAE,MAAM,CAAC;IACrB,uEAAuE;IACvE,QAAQ,EAAE,MAAM,CAAC;IACjB;;0EAEsE;IACtE,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,0DAA0D;IAC1D,QAAQ,EAAE,MAAM,CAAC;CAClB;AA+BD;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,eAAe,GAAG,WAAW,
|
|
1
|
+
{"version":3,"file":"environments.d.ts","sourceRoot":"","sources":["../src/environments.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,EAIL,KAAK,EAEL,OAAO,EAER,MAAM,OAAO,CAAC;AAEf,MAAM,MAAM,eAAe,GAAG,QAAQ,GAAG,UAAU,GAAG,MAAM,GAAG,UAAU,GAAG,OAAO,CAAC;AAEpF;;wEAEwE;AACxE,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,KAAK,CAAC;IACb;yCACqC;IACrC,GAAG,EAAE,OAAO,CAAC;IACb,QAAQ,EAAE,KAAK,CAAC;IAChB,gCAAgC;IAChC,YAAY,EAAE,MAAM,CAAC;IACrB,uEAAuE;IACvE,QAAQ,EAAE,MAAM,CAAC;IACjB;;0EAEsE;IACtE,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,0DAA0D;IAC1D,QAAQ,EAAE,MAAM,CAAC;CAClB;AA+BD;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,eAAe,GAAG,WAAW,CAmG9D"}
|
package/dist/environments.js
CHANGED
|
@@ -35,7 +35,11 @@ export function environment(kind) {
|
|
|
35
35
|
switch (kind) {
|
|
36
36
|
case "studio":
|
|
37
37
|
return {
|
|
38
|
-
scene: sceneOf(room("#6d6d6d"), panel(6, 4, "#ffffff", 7, [-4, 3, 7]), panel(4, 6, "#ffffff", 2.2, [7, -1, 4]), panel(10, 2, "#ffffff", 1.5, [0, 8, 6])
|
|
38
|
+
scene: sceneOf(room("#6d6d6d"), panel(6, 4, "#ffffff", 7, [-4, 3, 7]), panel(4, 6, "#ffffff", 2.2, [7, -1, 4]), panel(10, 2, "#ffffff", 1.5, [0, 8, 6]),
|
|
39
|
+
// A strip light overhead, beyond the book (#1568): what a page
|
|
40
|
+
// seen from the reader's place mirrors, so foil and metallic ink
|
|
41
|
+
// catch a highlight (they would mirror only the grey room).
|
|
42
|
+
panel(8, 1.4, "#ffffff", 3, [0, 4.6, 9.6])),
|
|
39
43
|
key: new Vector3(-0.4, 0.3, 0.86).normalize(),
|
|
40
44
|
keyColor: new Color("#ffffff"),
|
|
41
45
|
keyIntensity: 0.5,
|
|
@@ -51,7 +55,10 @@ export function environment(kind) {
|
|
|
51
55
|
// Sunlit floor bounce.
|
|
52
56
|
panel(8, 4, "#ffe6c4", 1.8, [-3, 0, -1.9], [-3, 0, 5]),
|
|
53
57
|
// Light bounced off the room's far wall.
|
|
54
|
-
panel(10, 8, "#fff8f0", 1.6, [9.5, 0, 4], [0, 0, 4])
|
|
58
|
+
panel(10, 8, "#fff8f0", 1.6, [9.5, 0, 4], [0, 0, 4]),
|
|
59
|
+
// The window's light on the ceiling over the desk: what a page
|
|
60
|
+
// mirrors back at the reader, and metal ink with it (#1568).
|
|
61
|
+
panel(7, 3, "#fbfcff", 2.2, [-1.5, 4.2, 9.6])),
|
|
55
62
|
key: new Vector3(-0.75, 0.15, 0.64).normalize(),
|
|
56
63
|
keyColor: new Color("#fff4e6"),
|
|
57
64
|
keyIntensity: 1.0,
|
package/dist/environments.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"environments.js","sourceRoot":"","sources":["../src/environments.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EACR,WAAW,EACX,KAAK,EACL,IAAI,EACJ,iBAAiB,EACjB,aAAa,EACb,KAAK,EACL,cAAc,EACd,OAAO,GAER,MAAM,OAAO,CAAC;AAyBf;gCACgC;AAChC,SAAS,KAAK,CAAC,CAAS,EAAE,CAAS,EAAE,KAAa,EAAE,QAAgB,EAAE,EAA4B,EAAE,SAAmC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IAC9I,MAAM,CAAC,GAAG,IAAI,IAAI,CAAC,IAAI,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,iBAAiB,CAAC,EAAE,KAAK,EAAE,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAClI,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC;IACtB,CAAC,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC;IACpB,OAAO,CAAC,CAAC;AACX,CAAC;AAED,SAAS,IAAI,CAAC,KAAa,EAAE,QAAQ,GAAG,CAAC,EAAE,OAAiC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;IACtF,MAAM,CAAC,GAAG,IAAI,WAAW,CAAC,GAAG,IAAI,CAAC,CAAC;IACnC,mEAAmE;IACnE,MAAM,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC,EAAE,IAAI,iBAAiB,CAAC,EAAE,KAAK,EAAE,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC;IACnH,CAAC,CAAC,QAAQ,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC/B,OAAO,CAAC,CAAC;AACX,CAAC;AAED,SAAS,MAAM,CAAC,KAAa,EAAE,QAAgB,EAAE,EAA4B,EAAE,CAAC,GAAG,GAAG;IACpF,MAAM,CAAC,GAAG,IAAI,IAAI,CAAC,IAAI,cAAc,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,iBAAiB,CAAC,EAAE,KAAK,EAAE,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC;IAC/H,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC;IACtB,OAAO,CAAC,CAAC;AACX,CAAC;AAED,SAAS,OAAO,CAAC,GAAG,OAAmB;IACrC,MAAM,KAAK,GAAG,IAAI,KAAK,EAAE,CAAC;IAC1B,KAAK,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,CAAC;IACtB,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,WAAW,CAAC,IAAqB;IAC/C,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,QAAQ;YACX,OAAO;gBACL,KAAK,EAAE,OAAO,CACZ,IAAI,CAAC,SAAS,CAAC,EACf,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EACrC,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EACvC,KAAK,CAAC,EAAE,EAAE,CAAC,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"environments.js","sourceRoot":"","sources":["../src/environments.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
import { type Texture } from 'three';
|
|
2
|
+
import { type FaceThroughData } from './through.js';
|
|
3
|
+
/** A finish mask as postext paints it: RGBA bytes, not premultiplied, the
|
|
4
|
+
* top row first. R metalness, G sheen, B fluorescence, A opaque white. */
|
|
5
|
+
export interface FaceMaskData {
|
|
6
|
+
width: number;
|
|
7
|
+
height: number;
|
|
8
|
+
data: Uint8ClampedArray;
|
|
9
|
+
}
|
|
10
|
+
/** What a page face carries besides its painting. */
|
|
11
|
+
export interface FaceFinish {
|
|
12
|
+
/** Where its special inks lie (see {@link FaceMaskData}). */
|
|
13
|
+
mask?: FaceMaskData;
|
|
14
|
+
/** The painting is cut (#1569): transparent in its holes and past its
|
|
15
|
+
* leaf's outline. */
|
|
16
|
+
cut?: boolean;
|
|
17
|
+
/** What its holes show (see {@link FaceThroughData}). */
|
|
18
|
+
through?: FaceThroughData;
|
|
19
|
+
}
|
|
20
|
+
/** A mask's texture and whether it asks for a clear coat (a varnish, or the
|
|
21
|
+
* sheen of a foil or a metallic ink somewhere on it). */
|
|
22
|
+
export interface MaskTexture {
|
|
23
|
+
texture: Texture;
|
|
24
|
+
coat: boolean;
|
|
25
|
+
}
|
|
26
|
+
/** Whether any texel of a mask has a sheen (the G channel). */
|
|
27
|
+
export declare function maskHasSheen(mask: FaceMaskData): boolean;
|
|
28
|
+
/** A mask as a texture: linear data (not sRGB), mipmapped so a page seen
|
|
29
|
+
* small does not shimmer where foil meets paper. */
|
|
30
|
+
export declare function maskTexture(mask: FaceMaskData): MaskTexture;
|
|
31
|
+
/**
|
|
32
|
+
* The finishes of the pages, by page source, and the textures made for
|
|
33
|
+
* them: a texture is made the first time a face shows its mask and freed
|
|
34
|
+
* once no page carries that mask any more.
|
|
35
|
+
*/
|
|
36
|
+
export declare class FinishTextures {
|
|
37
|
+
private bySrc;
|
|
38
|
+
private textures;
|
|
39
|
+
private throughs;
|
|
40
|
+
/** The pages' finishes now; textures of masks no page carries are
|
|
41
|
+
* freed. True when anything changed. */
|
|
42
|
+
set(finishes: ReadonlyMap<unknown, FaceFinish>): boolean;
|
|
43
|
+
/** The mask texture of the page whose source is `src`, if it has one. */
|
|
44
|
+
maskOf(src: unknown): MaskTexture | null;
|
|
45
|
+
/** Whether the page whose source is `src` is painted cut. */
|
|
46
|
+
cutOf(src: unknown): boolean;
|
|
47
|
+
/** The through texture of the page whose source is `src` and how many
|
|
48
|
+
* layers it holds, if its holes show any. */
|
|
49
|
+
throughOf(src: unknown): {
|
|
50
|
+
texture: Texture;
|
|
51
|
+
layers: number;
|
|
52
|
+
} | null;
|
|
53
|
+
/** The textures alive (for tests and for the frame budget). */
|
|
54
|
+
get size(): number;
|
|
55
|
+
dispose(): void;
|
|
56
|
+
}
|
|
57
|
+
/** The uniforms a page material keeps for its faces' masks. */
|
|
58
|
+
export interface FinishUniforms {
|
|
59
|
+
uFrontMask: {
|
|
60
|
+
value: Texture | null;
|
|
61
|
+
};
|
|
62
|
+
uBackMask: {
|
|
63
|
+
value: Texture | null;
|
|
64
|
+
};
|
|
65
|
+
uHasFrontMask: {
|
|
66
|
+
value: number;
|
|
67
|
+
};
|
|
68
|
+
uHasBackMask: {
|
|
69
|
+
value: number;
|
|
70
|
+
};
|
|
71
|
+
}
|
|
72
|
+
export declare const finishUniforms: () => FinishUniforms;
|
|
73
|
+
/** A clear coat so thin it shows nothing: enough for three.js to compile
|
|
74
|
+
* the coat, which a varnish then lays on where it lies. */
|
|
75
|
+
export declare const HAIRLINE_COAT = 0.001;
|
|
76
|
+
/**
|
|
77
|
+
* Sets a page material's mask uniforms from the finishes of the pages on
|
|
78
|
+
* its two faces, and keeps a clear coat on it while one of them has a
|
|
79
|
+
* varnish or a foil (three.js compiles the coat only for a material whose
|
|
80
|
+
* `clearcoat` is above 0). `paperCoat` is the stock's own coat.
|
|
81
|
+
*/
|
|
82
|
+
export declare function dressFinish(m: {
|
|
83
|
+
clearcoat: number;
|
|
84
|
+
userData: {
|
|
85
|
+
uniforms: FinishUniforms;
|
|
86
|
+
};
|
|
87
|
+
}, front: MaskTexture | null, back: MaskTexture | null, paperCoat: number): void;
|
|
88
|
+
/** Declarations: the mask read at this point, shared by the chunks below. */
|
|
89
|
+
export declare const FINISH_PARS = "\n uniform sampler2D uFrontMask;\n uniform sampler2D uBackMask;\n uniform float uHasFrontMask;\n uniform float uHasBackMask;\n // R metal, G sheen, B fluorescence, A opaque white; zero off the inks.\n vec4 finishMask = vec4(0.0);\n // The ink's own colour (linear), not darkened by the paper's shade.\n vec3 finishInk = vec3(0.0);\n // G holds a sheen times how much of the texel the ink covers: the sheen\n // is the largest G round the point, the cover what this one has of it\n // (the edge of a gloss varnish is gloss over part of a texel, not satin).\n float finishSheen = 0.0;\n float finishCover = 0.0;\n vec4 finishAt(bool front, vec2 uv) {\n return front ? texture2D(uFrontMask, uv) : texture2D(uBackMask, uv);\n }\n";
|
|
90
|
+
/** In `map_fragment`, once the face's print `ink` is known and before the
|
|
91
|
+
* paper's shade multiplies it: reads the mask (the page image's rows run
|
|
92
|
+
* bottom up, the mask's top down). */
|
|
93
|
+
export declare const FINISH_READ = "\n if ((front ? uHasFrontMask : uHasBackMask) > 0.5) {\n vec2 muv = front ? uvF : uvB;\n muv.y = 1.0 - muv.y;\n finishMask = finishAt(front, muv);\n finishInk = ink;\n if (finishMask.g > 0.0) {\n // A texel and a half of the mask, or of the mipmap level a page\n // seen small reads.\n vec2 t = max(1.5 / vec2(front ? textureSize(uFrontMask, 0) : textureSize(uBackMask, 0)), 1.5 * fwidth(muv));\n float near = max(\n max(finishAt(front, muv + vec2(t.x, 0.0)).g, finishAt(front, muv - vec2(t.x, 0.0)).g),\n max(finishAt(front, muv + vec2(0.0, t.y)).g, finishAt(front, muv - vec2(0.0, t.y)).g));\n finishSheen = max(finishMask.g, near);\n finishCover = finishMask.g / finishSheen;\n }\n }\n";
|
|
94
|
+
/** After the paper's shade has multiplied the print: an opaque white and a
|
|
95
|
+
* metal lie over the paper, so they keep their own colour. A metal's
|
|
96
|
+
* colour is its reflectance: the screen hex shows it as a flat swatch, so
|
|
97
|
+
* it is lifted towards a bright metal of the same hue (at most twice: a
|
|
98
|
+
* dark ink knocking the metal out at its edge stays dark), and a little
|
|
99
|
+
* towards white, as a real gold reflects some of every colour. */
|
|
100
|
+
export declare const FINISH_DIFFUSE = "\n if (finishMask.a > 0.0 || finishMask.r > 0.0) {\n float top = max(max(finishInk.r, finishInk.g), max(finishInk.b, 1e-3));\n vec3 metal = mix(finishInk, finishInk * min(0.95 / top, 2.0), 0.8);\n metal = mix(metal, vec3(max(max(metal.r, metal.g), metal.b)), 0.25);\n diffuseColor.rgb = mix(diffuseColor.rgb, finishInk, finishMask.a);\n diffuseColor.rgb = mix(diffuseColor.rgb, metal, finishMask.r);\n }\n";
|
|
101
|
+
/** Roughness: a foil (gloss) bright and sharp, a metallic ink (satin) a
|
|
102
|
+
* soft lustre. A varnish fills the stock's own roughness: a gloss one
|
|
103
|
+
* leaves the print under it smooth (deeper, its highlight sharp), a matte
|
|
104
|
+
* or soft-touch one chalky. */
|
|
105
|
+
export declare const FINISH_ROUGHNESS = "\n if (finishMask.g > 0.0 || finishMask.r > 0.0) {\n float metalRough = mix(0.5, 0.17, smoothstep(0.2, 1.0, finishSheen));\n float varnish = mix(0.95, 0.12, smoothstep(0.3, 1.0, finishSheen));\n roughnessFactor = mix(roughnessFactor, varnish, finishCover * (1.0 - finishMask.r));\n roughnessFactor = mix(roughnessFactor, metalRough, finishMask.r);\n }\n";
|
|
106
|
+
/** Metalness: a foil all metal, a metallic ink (its flakes in a binder)
|
|
107
|
+
* mostly. */
|
|
108
|
+
export declare const FINISH_METALNESS = "\n metalnessFactor = mix(metalnessFactor, mix(0.75, 1.0, smoothstep(0.75, 0.95, finishSheen)), finishMask.r);\n";
|
|
109
|
+
/** A foil is pressed flat: the paper's grain hardly shows through it. */
|
|
110
|
+
export declare const FINISH_NORMAL = "\n if (finishMask.r > 0.0) normal = normalize(mix(normal, nonPerturbedNormal, 0.85 * finishMask.r));\n";
|
|
111
|
+
/** A fluorescent ink turns light the eye hardly sees into its own colour:
|
|
112
|
+
* it reads brighter than the paper round it, a little even in dim light. */
|
|
113
|
+
export declare const FINISH_EMISSIVE = "\n totalEmissiveRadiance += finishMask.b * finishInk * 0.45;\n";
|
|
114
|
+
/** The clear coat a varnish lays (after three.js has set the stock's): a
|
|
115
|
+
* gloss varnish a hard, sharp coat, a satin one softer, a matte or soft-
|
|
116
|
+
* touch one next to none. A bare metal takes none. */
|
|
117
|
+
export declare const FINISH_COAT = "\n #ifdef USE_CLEARCOAT\n if (finishMask.g > 0.0) {\n float s = smoothstep(0.3, 1.0, finishSheen);\n float w = finishCover * (1.0 - finishMask.r);\n material.clearcoat = mix(material.clearcoat, s, w);\n material.clearcoatRoughness = mix(material.clearcoatRoughness, min(1.0, max(mix(0.6, 0.03, s), 0.0525) + geometryRoughness), w);\n }\n #endif\n";
|
|
118
|
+
//# sourceMappingURL=finish.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"finish.d.ts","sourceRoot":"","sources":["../../src/pageFlip/finish.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,225 @@
|
|
|
1
|
+
// Special inks under the lights (#1568): each page face may carry a finish
|
|
2
|
+
// mask (postext's `renderFinishMask`, #1564) that says where a metallic ink,
|
|
3
|
+
// a foil, a fluorescent ink, an opaque white or a varnish lies on it. The
|
|
4
|
+
// page material reads it per texel: metal and roughness, a clear coat, an
|
|
5
|
+
// emissive lift, and white standing over the paper's shade. A page without
|
|
6
|
+
// one costs nothing: no texture, and every branch of the shader is off.
|
|
7
|
+
import { DataTexture, LinearFilter, LinearMipmapLinearFilter, RGBAFormat, UnsignedByteType } from 'three';
|
|
8
|
+
import { throughTexture } from './through.js';
|
|
9
|
+
/** Whether any texel of a mask has a sheen (the G channel). */
|
|
10
|
+
export function maskHasSheen(mask) {
|
|
11
|
+
const d = mask.data;
|
|
12
|
+
for (let i = 1; i < d.length; i += 4)
|
|
13
|
+
if (d[i] > 0)
|
|
14
|
+
return true;
|
|
15
|
+
return false;
|
|
16
|
+
}
|
|
17
|
+
/** A mask as a texture: linear data (not sRGB), mipmapped so a page seen
|
|
18
|
+
* small does not shimmer where foil meets paper. */
|
|
19
|
+
export function maskTexture(mask) {
|
|
20
|
+
const texture = new DataTexture(new Uint8Array(mask.data.buffer, mask.data.byteOffset, mask.data.byteLength), mask.width, mask.height, RGBAFormat, UnsignedByteType);
|
|
21
|
+
texture.minFilter = LinearMipmapLinearFilter;
|
|
22
|
+
texture.magFilter = LinearFilter;
|
|
23
|
+
texture.generateMipmaps = true;
|
|
24
|
+
texture.needsUpdate = true;
|
|
25
|
+
return { texture, coat: maskHasSheen(mask) };
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* The finishes of the pages, by page source, and the textures made for
|
|
29
|
+
* them: a texture is made the first time a face shows its mask and freed
|
|
30
|
+
* once no page carries that mask any more.
|
|
31
|
+
*/
|
|
32
|
+
export class FinishTextures {
|
|
33
|
+
bySrc = new Map();
|
|
34
|
+
textures = new Map();
|
|
35
|
+
throughs = new Map();
|
|
36
|
+
/** The pages' finishes now; textures of masks no page carries are
|
|
37
|
+
* freed. True when anything changed. */
|
|
38
|
+
set(finishes) {
|
|
39
|
+
let changed = finishes.size !== this.bySrc.size;
|
|
40
|
+
for (const [src, f] of finishes) {
|
|
41
|
+
const was = this.bySrc.get(src);
|
|
42
|
+
if (was?.mask !== f.mask || was?.through !== f.through || !!was?.cut !== !!f.cut)
|
|
43
|
+
changed = true;
|
|
44
|
+
}
|
|
45
|
+
this.bySrc = new Map(finishes);
|
|
46
|
+
const kept = new Set();
|
|
47
|
+
for (const f of finishes.values()) {
|
|
48
|
+
if (f.mask)
|
|
49
|
+
kept.add(f.mask);
|
|
50
|
+
if (f.through)
|
|
51
|
+
kept.add(f.through);
|
|
52
|
+
}
|
|
53
|
+
for (const [mask, t] of this.textures) {
|
|
54
|
+
if (kept.has(mask))
|
|
55
|
+
continue;
|
|
56
|
+
t.texture.dispose();
|
|
57
|
+
this.textures.delete(mask);
|
|
58
|
+
}
|
|
59
|
+
for (const [through, t] of this.throughs) {
|
|
60
|
+
if (kept.has(through))
|
|
61
|
+
continue;
|
|
62
|
+
t.dispose();
|
|
63
|
+
this.throughs.delete(through);
|
|
64
|
+
}
|
|
65
|
+
return changed;
|
|
66
|
+
}
|
|
67
|
+
/** The mask texture of the page whose source is `src`, if it has one. */
|
|
68
|
+
maskOf(src) {
|
|
69
|
+
const mask = src ? this.bySrc.get(src)?.mask : undefined;
|
|
70
|
+
if (!mask)
|
|
71
|
+
return null;
|
|
72
|
+
let t = this.textures.get(mask);
|
|
73
|
+
if (!t)
|
|
74
|
+
this.textures.set(mask, (t = maskTexture(mask)));
|
|
75
|
+
return t;
|
|
76
|
+
}
|
|
77
|
+
/** Whether the page whose source is `src` is painted cut. */
|
|
78
|
+
cutOf(src) {
|
|
79
|
+
return !!src && !!this.bySrc.get(src)?.cut;
|
|
80
|
+
}
|
|
81
|
+
/** The through texture of the page whose source is `src` and how many
|
|
82
|
+
* layers it holds, if its holes show any. */
|
|
83
|
+
throughOf(src) {
|
|
84
|
+
const through = src ? this.bySrc.get(src)?.through : undefined;
|
|
85
|
+
if (!through)
|
|
86
|
+
return null;
|
|
87
|
+
let t = this.throughs.get(through);
|
|
88
|
+
if (!t)
|
|
89
|
+
this.throughs.set(through, (t = throughTexture(through)));
|
|
90
|
+
return { texture: t, layers: through.layers };
|
|
91
|
+
}
|
|
92
|
+
/** The textures alive (for tests and for the frame budget). */
|
|
93
|
+
get size() {
|
|
94
|
+
return this.textures.size + this.throughs.size;
|
|
95
|
+
}
|
|
96
|
+
dispose() {
|
|
97
|
+
for (const t of this.textures.values())
|
|
98
|
+
t.texture.dispose();
|
|
99
|
+
for (const t of this.throughs.values())
|
|
100
|
+
t.dispose();
|
|
101
|
+
this.textures.clear();
|
|
102
|
+
this.throughs.clear();
|
|
103
|
+
this.bySrc.clear();
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
export const finishUniforms = () => ({
|
|
107
|
+
uFrontMask: { value: null },
|
|
108
|
+
uBackMask: { value: null },
|
|
109
|
+
uHasFrontMask: { value: 0 },
|
|
110
|
+
uHasBackMask: { value: 0 },
|
|
111
|
+
});
|
|
112
|
+
/** A clear coat so thin it shows nothing: enough for three.js to compile
|
|
113
|
+
* the coat, which a varnish then lays on where it lies. */
|
|
114
|
+
export const HAIRLINE_COAT = 1e-3;
|
|
115
|
+
/**
|
|
116
|
+
* Sets a page material's mask uniforms from the finishes of the pages on
|
|
117
|
+
* its two faces, and keeps a clear coat on it while one of them has a
|
|
118
|
+
* varnish or a foil (three.js compiles the coat only for a material whose
|
|
119
|
+
* `clearcoat` is above 0). `paperCoat` is the stock's own coat.
|
|
120
|
+
*/
|
|
121
|
+
export function dressFinish(m, front, back, paperCoat) {
|
|
122
|
+
const u = m.userData.uniforms;
|
|
123
|
+
u.uFrontMask.value = front?.texture ?? null;
|
|
124
|
+
u.uHasFrontMask.value = front ? 1 : 0;
|
|
125
|
+
u.uBackMask.value = back?.texture ?? null;
|
|
126
|
+
u.uHasBackMask.value = back ? 1 : 0;
|
|
127
|
+
const coat = (front?.coat || back?.coat) && paperCoat <= 0 ? HAIRLINE_COAT : paperCoat;
|
|
128
|
+
if (m.clearcoat !== coat)
|
|
129
|
+
m.clearcoat = coat;
|
|
130
|
+
}
|
|
131
|
+
/** Declarations: the mask read at this point, shared by the chunks below. */
|
|
132
|
+
export const FINISH_PARS = /* glsl */ `
|
|
133
|
+
uniform sampler2D uFrontMask;
|
|
134
|
+
uniform sampler2D uBackMask;
|
|
135
|
+
uniform float uHasFrontMask;
|
|
136
|
+
uniform float uHasBackMask;
|
|
137
|
+
// R metal, G sheen, B fluorescence, A opaque white; zero off the inks.
|
|
138
|
+
vec4 finishMask = vec4(0.0);
|
|
139
|
+
// The ink's own colour (linear), not darkened by the paper's shade.
|
|
140
|
+
vec3 finishInk = vec3(0.0);
|
|
141
|
+
// G holds a sheen times how much of the texel the ink covers: the sheen
|
|
142
|
+
// is the largest G round the point, the cover what this one has of it
|
|
143
|
+
// (the edge of a gloss varnish is gloss over part of a texel, not satin).
|
|
144
|
+
float finishSheen = 0.0;
|
|
145
|
+
float finishCover = 0.0;
|
|
146
|
+
vec4 finishAt(bool front, vec2 uv) {
|
|
147
|
+
return front ? texture2D(uFrontMask, uv) : texture2D(uBackMask, uv);
|
|
148
|
+
}
|
|
149
|
+
`;
|
|
150
|
+
/** In `map_fragment`, once the face's print `ink` is known and before the
|
|
151
|
+
* paper's shade multiplies it: reads the mask (the page image's rows run
|
|
152
|
+
* bottom up, the mask's top down). */
|
|
153
|
+
export const FINISH_READ = /* glsl */ `
|
|
154
|
+
if ((front ? uHasFrontMask : uHasBackMask) > 0.5) {
|
|
155
|
+
vec2 muv = front ? uvF : uvB;
|
|
156
|
+
muv.y = 1.0 - muv.y;
|
|
157
|
+
finishMask = finishAt(front, muv);
|
|
158
|
+
finishInk = ink;
|
|
159
|
+
if (finishMask.g > 0.0) {
|
|
160
|
+
// A texel and a half of the mask, or of the mipmap level a page
|
|
161
|
+
// seen small reads.
|
|
162
|
+
vec2 t = max(1.5 / vec2(front ? textureSize(uFrontMask, 0) : textureSize(uBackMask, 0)), 1.5 * fwidth(muv));
|
|
163
|
+
float near = max(
|
|
164
|
+
max(finishAt(front, muv + vec2(t.x, 0.0)).g, finishAt(front, muv - vec2(t.x, 0.0)).g),
|
|
165
|
+
max(finishAt(front, muv + vec2(0.0, t.y)).g, finishAt(front, muv - vec2(0.0, t.y)).g));
|
|
166
|
+
finishSheen = max(finishMask.g, near);
|
|
167
|
+
finishCover = finishMask.g / finishSheen;
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
`;
|
|
171
|
+
/** After the paper's shade has multiplied the print: an opaque white and a
|
|
172
|
+
* metal lie over the paper, so they keep their own colour. A metal's
|
|
173
|
+
* colour is its reflectance: the screen hex shows it as a flat swatch, so
|
|
174
|
+
* it is lifted towards a bright metal of the same hue (at most twice: a
|
|
175
|
+
* dark ink knocking the metal out at its edge stays dark), and a little
|
|
176
|
+
* towards white, as a real gold reflects some of every colour. */
|
|
177
|
+
export const FINISH_DIFFUSE = /* glsl */ `
|
|
178
|
+
if (finishMask.a > 0.0 || finishMask.r > 0.0) {
|
|
179
|
+
float top = max(max(finishInk.r, finishInk.g), max(finishInk.b, 1e-3));
|
|
180
|
+
vec3 metal = mix(finishInk, finishInk * min(0.95 / top, 2.0), 0.8);
|
|
181
|
+
metal = mix(metal, vec3(max(max(metal.r, metal.g), metal.b)), 0.25);
|
|
182
|
+
diffuseColor.rgb = mix(diffuseColor.rgb, finishInk, finishMask.a);
|
|
183
|
+
diffuseColor.rgb = mix(diffuseColor.rgb, metal, finishMask.r);
|
|
184
|
+
}
|
|
185
|
+
`;
|
|
186
|
+
/** Roughness: a foil (gloss) bright and sharp, a metallic ink (satin) a
|
|
187
|
+
* soft lustre. A varnish fills the stock's own roughness: a gloss one
|
|
188
|
+
* leaves the print under it smooth (deeper, its highlight sharp), a matte
|
|
189
|
+
* or soft-touch one chalky. */
|
|
190
|
+
export const FINISH_ROUGHNESS = /* glsl */ `
|
|
191
|
+
if (finishMask.g > 0.0 || finishMask.r > 0.0) {
|
|
192
|
+
float metalRough = mix(0.5, 0.17, smoothstep(0.2, 1.0, finishSheen));
|
|
193
|
+
float varnish = mix(0.95, 0.12, smoothstep(0.3, 1.0, finishSheen));
|
|
194
|
+
roughnessFactor = mix(roughnessFactor, varnish, finishCover * (1.0 - finishMask.r));
|
|
195
|
+
roughnessFactor = mix(roughnessFactor, metalRough, finishMask.r);
|
|
196
|
+
}
|
|
197
|
+
`;
|
|
198
|
+
/** Metalness: a foil all metal, a metallic ink (its flakes in a binder)
|
|
199
|
+
* mostly. */
|
|
200
|
+
export const FINISH_METALNESS = /* glsl */ `
|
|
201
|
+
metalnessFactor = mix(metalnessFactor, mix(0.75, 1.0, smoothstep(0.75, 0.95, finishSheen)), finishMask.r);
|
|
202
|
+
`;
|
|
203
|
+
/** A foil is pressed flat: the paper's grain hardly shows through it. */
|
|
204
|
+
export const FINISH_NORMAL = /* glsl */ `
|
|
205
|
+
if (finishMask.r > 0.0) normal = normalize(mix(normal, nonPerturbedNormal, 0.85 * finishMask.r));
|
|
206
|
+
`;
|
|
207
|
+
/** A fluorescent ink turns light the eye hardly sees into its own colour:
|
|
208
|
+
* it reads brighter than the paper round it, a little even in dim light. */
|
|
209
|
+
export const FINISH_EMISSIVE = /* glsl */ `
|
|
210
|
+
totalEmissiveRadiance += finishMask.b * finishInk * 0.45;
|
|
211
|
+
`;
|
|
212
|
+
/** The clear coat a varnish lays (after three.js has set the stock's): a
|
|
213
|
+
* gloss varnish a hard, sharp coat, a satin one softer, a matte or soft-
|
|
214
|
+
* touch one next to none. A bare metal takes none. */
|
|
215
|
+
export const FINISH_COAT = /* glsl */ `
|
|
216
|
+
#ifdef USE_CLEARCOAT
|
|
217
|
+
if (finishMask.g > 0.0) {
|
|
218
|
+
float s = smoothstep(0.3, 1.0, finishSheen);
|
|
219
|
+
float w = finishCover * (1.0 - finishMask.r);
|
|
220
|
+
material.clearcoat = mix(material.clearcoat, s, w);
|
|
221
|
+
material.clearcoatRoughness = mix(material.clearcoatRoughness, min(1.0, max(mix(0.6, 0.03, s), 0.0525) + geometryRoughness), w);
|
|
222
|
+
}
|
|
223
|
+
#endif
|
|
224
|
+
`;
|
|
225
|
+
//# sourceMappingURL=finish.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"finish.js","sourceRoot":"","sources":["../../src/pageFlip/finish.ts"],"names":[],"mappings":"AAAA,2EAA2E;AAC3E,6EAA6E;AAC7E,0EAA0E;AAC1E,0EAA0E;AAC1E,2EAA2E;AAC3E,wEAAwE;AACxE,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,wBAAwB,EAAE,UAAU,EAAE,gBAAgB,EAAgB,MAAM,OAAO,CAAC;AACxH,OAAO,EAAE,cAAc,EAAwB,MAAM,cAAc,CAAC;AA4BpE,+DAA+D;AAC/D,MAAM,UAAU,YAAY,CAAC,IAAkB;IAC7C,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC;IACpB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC;QAAE,IAAI,CAAC,CAAC,CAAC,CAAE,GAAG,CAAC;YAAE,OAAO,IAAI,CAAC;IACjE,OAAO,KAAK,CAAC;AACf,CAAC;AAED;qDACqD;AACrD,MAAM,UAAU,WAAW,CAAC,IAAkB;IAC5C,MAAM,OAAO,GAAG,IAAI,WAAW,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE,UAAU,EAAE,gBAAgB,CAAC,CAAC;IACrK,OAAO,CAAC,SAAS,GAAG,wBAAwB,CAAC;IAC7C,OAAO,CAAC,SAAS,GAAG,YAAY,CAAC;IACjC,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC;IAC/B,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC;IAC3B,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;AAC/C,CAAC;AAED;;;;GAIG;AACH,MAAM,OAAO,cAAc;IACjB,KAAK,GAAG,IAAI,GAAG,EAAuB,CAAC;IACvC,QAAQ,GAAG,IAAI,GAAG,EAA6B,CAAC;IAChD,QAAQ,GAAG,IAAI,GAAG,EAA4B,CAAC;IAEvD;6CACyC;IACzC,GAAG,CAAC,QAA0C;QAC5C,IAAI,OAAO,GAAG,QAAQ,CAAC,IAAI,KAAK,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;QAChD,KAAK,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,QAAQ,EAAE,CAAC;YAChC,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAChC,IAAI,GAAG,EAAE,IAAI,KAAK,CAAC,CAAC,IAAI,IAAI,GAAG,EAAE,OAAO,KAAK,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG;gBAAE,OAAO,GAAG,IAAI,CAAC;QACnG,CAAC;QACD,IAAI,CAAC,KAAK,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC/B,MAAM,IAAI,GAAG,IAAI,GAAG,EAAW,CAAC;QAChC,KAAK,MAAM,CAAC,IAAI,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC;YAClC,IAAI,CAAC,CAAC,IAAI;gBAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YAC7B,IAAI,CAAC,CAAC,OAAO;gBAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;QACrC,CAAC;QACD,KAAK,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YACtC,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC;gBAAE,SAAS;YAC7B,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;YACpB,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAC7B,CAAC;QACD,KAAK,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YACzC,IAAI,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC;gBAAE,SAAS;YAChC,CAAC,CAAC,OAAO,EAAE,CAAC;YACZ,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAChC,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,yEAAyE;IACzE,MAAM,CAAC,GAAY;QACjB,MAAM,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;QACzD,IAAI,CAAC,IAAI;YAAE,OAAO,IAAI,CAAC;QACvB,IAAI,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAChC,IAAI,CAAC,CAAC;YAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACzD,OAAO,CAAC,CAAC;IACX,CAAC;IAED,6DAA6D;IAC7D,KAAK,CAAC,GAAY;QAChB,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC;IAC7C,CAAC;IAED;kDAC8C;IAC9C,SAAS,CAAC,GAAY;QACpB,MAAM,OAAO,GAAG,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;QAC/D,IAAI,CAAC,OAAO;YAAE,OAAO,IAAI,CAAC;QAC1B,IAAI,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACnC,IAAI,CAAC,CAAC;YAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAClE,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC;IAChD,CAAC;IAED,+DAA+D;IAC/D,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;IACjD,CAAC;IAED,OAAO;QACL,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE;YAAE,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;QAC5D,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE;YAAE,CAAC,CAAC,OAAO,EAAE,CAAC;QACpD,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;QACtB,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;QACtB,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;IACrB,CAAC;CACF;AAUD,MAAM,CAAC,MAAM,cAAc,GAAG,GAAmB,EAAE,CAAC,CAAC;IACnD,UAAU,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE;IAC3B,SAAS,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE;IAC1B,aAAa,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE;IAC3B,YAAY,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE;CAC3B,CAAC,CAAC;AAEH;4DAC4D;AAC5D,MAAM,CAAC,MAAM,aAAa,GAAG,IAAI,CAAC;AAElC;;;;;GAKG;AACH,MAAM,UAAU,WAAW,CACzB,CAAgE,EAChE,KAAyB,EACzB,IAAwB,EACxB,SAAiB;IAEjB,MAAM,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC;IAC9B,CAAC,CAAC,UAAU,CAAC,KAAK,GAAG,KAAK,EAAE,OAAO,IAAI,IAAI,CAAC;IAC5C,CAAC,CAAC,aAAa,CAAC,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACtC,CAAC,CAAC,SAAS,CAAC,KAAK,GAAG,IAAI,EAAE,OAAO,IAAI,IAAI,CAAC;IAC1C,CAAC,CAAC,YAAY,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACpC,MAAM,IAAI,GAAG,CAAC,KAAK,EAAE,IAAI,IAAI,IAAI,EAAE,IAAI,CAAC,IAAI,SAAS,IAAI,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC;IACvF,IAAI,CAAC,CAAC,SAAS,KAAK,IAAI;QAAE,CAAC,CAAC,SAAS,GAAG,IAAI,CAAC;AAC/C,CAAC;AAED,6EAA6E;AAC7E,MAAM,CAAC,MAAM,WAAW,GAAG,UAAU,CAAC;;;;;;;;;;;;;;;;;CAiBrC,CAAC;AAEF;;uCAEuC;AACvC,MAAM,CAAC,MAAM,WAAW,GAAG,UAAU,CAAC;;;;;;;;;;;;;;;;;CAiBrC,CAAC;AAEF;;;;;mEAKmE;AACnE,MAAM,CAAC,MAAM,cAAc,GAAG,UAAU,CAAC;;;;;;;;CAQxC,CAAC;AAEF;;;gCAGgC;AAChC,MAAM,CAAC,MAAM,gBAAgB,GAAG,UAAU,CAAC;;;;;;;CAO1C,CAAC;AAEF;cACc;AACd,MAAM,CAAC,MAAM,gBAAgB,GAAG,UAAU,CAAC;;CAE1C,CAAC;AAEF,yEAAyE;AACzE,MAAM,CAAC,MAAM,aAAa,GAAG,UAAU,CAAC;;CAEvC,CAAC;AAEF;6EAC6E;AAC7E,MAAM,CAAC,MAAM,eAAe,GAAG,UAAU,CAAC;;CAEzC,CAAC;AAEF;;uDAEuD;AACvD,MAAM,CAAC,MAAM,WAAW,GAAG,UAAU,CAAC;;;;;;;;;CASrC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"leaf.d.ts","sourceRoot":"","sources":["../../src/pageFlip/leaf.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,cAAc,EAAE,IAAI,EAAE,WAAW,EAAE,oBAAoB,EAAE,KAAK,EAAW,MAAM,OAAO,CAAC;AAChG,OAAO,EAAS,KAAK,OAAO,EAAS,MAAM,oBAAoB,CAAC;AAChE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAE7C,OAAO,EAAU,KAAK,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE3D,yEAAyE;AACzE,eAAO,MAAM,SAAS,QAAuB,CAAC;AAO9C;gEACgE;AAChE,eAAO,MAAM,MAAM,GAAI,GAAG,MAAM,WAAsB,CAAC;AAEvD,uDAAuD;AACvD,wBAAgB,aAAa,CAAC,QAAQ,EAAE,cAAc,EAAE,EAAE,EAAE,MAAM,QAIjE;AAcD;yEACyE;AACzE,MAAM,WAAW,EAAE;IACjB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;CACX;AAED;;;;;;;;GAQG;AACH,wBAAgB,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,IAAI,SAAI;;;;;;;;;;;SAgClE;AAED,KAAK,IAAI,GAAG,WAAW,CAAC,UAAU,CAAC,OAAO,MAAM,CAAC,CAAC,CAAC;AAUnD;gDACgD;AAChD,wBAAgB,YAAY,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,UAExC;AAED;8BAC8B;AAC9B,wBAAgB,KAAK,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,MAAM,GAAG,EAAE,CAajD;AAED,kEAAkE;AAClE,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,OAAO,CAAC;CAChB;AAED;;;;;;GAMG;AACH,wBAAgB,OAAO,CAAC,QAAQ,EAAE,cAAc,EAAE,IAAI,EAAE,IAAI,GAAG,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,OAAO,SAAI,EAAE,IAAI,SAAI,EAAE,KAAK,CAAC,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAiLtQ;AAED,MAAM,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,EAAE,YAAY,CAAC,CAAC;AAE1D,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,QAAQ,CAAC;IACf,IAAI,EAAE,IAAI,CAAC,WAAW,EAAE,oBAAoB,CAAC,CAAC;CAC/C;AAED,+CAA+C;AAC/C,wBAAgB,WAAW,CAAC,IAAI,EAAE,QAAQ,
|
|
1
|
+
{"version":3,"file":"leaf.d.ts","sourceRoot":"","sources":["../../src/pageFlip/leaf.ts"],"names":[],"mappings":"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"}
|
package/dist/pageFlip/leaf.js
CHANGED
|
@@ -306,6 +306,9 @@ export function disposeLeaf(mesh) {
|
|
|
306
306
|
parts.slab.material.dispose();
|
|
307
307
|
}
|
|
308
308
|
mesh.userData.caster?.geometry.dispose();
|
|
309
|
+
// A cut leaf's own depth material and caster (#1569).
|
|
310
|
+
for (const key of ["cutDepth", "cutCaster"])
|
|
311
|
+
mesh.userData[key]?.dispose();
|
|
309
312
|
mesh.geometry.dispose();
|
|
310
313
|
mesh.material.dispose();
|
|
311
314
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"leaf.js","sourceRoot":"","sources":["../../src/pageFlip/leaf.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"leaf.js","sourceRoot":"","sources":["../../src/pageFlip/leaf.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import { Texture, Vector2, Color, Vector4, Vector3, MeshPhysicalMaterial, MeshStandardMaterial } from 'three';
|
|
2
2
|
import type { FolioConfig } from 'postext';
|
|
3
3
|
import type { PaperSpec } from '../paper.js';
|
|
4
|
+
import { type CutUniforms } from './through.js';
|
|
5
|
+
import { type FinishUniforms } from './finish.js';
|
|
4
6
|
/** What lies behind the leaves in the air (#484): the scene drawn without
|
|
5
7
|
* the translucent leaves (colour, mipmapped, and depth), shared by every
|
|
6
8
|
* page. `uBehindSize`: the screen in device px; `uBehindClip`: the
|
|
@@ -30,7 +32,7 @@ export declare const behindUniforms: {
|
|
|
30
32
|
value: number;
|
|
31
33
|
};
|
|
32
34
|
};
|
|
33
|
-
type PageUniforms = {
|
|
35
|
+
type PageUniforms = FinishUniforms & CutUniforms & {
|
|
34
36
|
uFront: {
|
|
35
37
|
value: Texture | null;
|
|
36
38
|
};
|
|
@@ -135,7 +137,7 @@ export type PageMaterial = MeshPhysicalMaterial & {
|
|
|
135
137
|
* gutter's occlusion (a vertex attribute, from the book's cross-section)
|
|
136
138
|
* and by lifted leaves nearby.
|
|
137
139
|
*/
|
|
138
|
-
export declare function pageMaterial(mirror: boolean, sign: number): PageMaterial;
|
|
140
|
+
export declare function pageMaterial(mirror: boolean, sign: number, cutMode?: number): PageMaterial;
|
|
139
141
|
/** The uniforms every page block's edge material shares: book units per
|
|
140
142
|
* mm, and how strongly the cut face is relieved (uncoated stock shows
|
|
141
143
|
* its fibres; a coated sheet is cut cleaner). */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"materials.d.ts","sourceRoot":"","sources":["../../src/pageFlip/materials.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,oBAAoB,EAAuD,oBAAoB,EAAkB,MAAM,OAAO,CAAC;AACnL,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAC3C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"materials.d.ts","sourceRoot":"","sources":["../../src/pageFlip/materials.ts"],"names":[],"mappings":"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"}
|