@p100-web/core-three 100.2.14 → 100.2.15
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/App.d.ts.map +1 -1
- package/dist/App.js +4 -2
- package/dist/App.js.map +1 -1
- package/dist/pcomponents/PMaskedMaterial.js +51 -51
- package/package.json +33 -33
package/dist/App.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"App.d.ts","sourceRoot":"","sources":["../src/App.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,iBAAiB,EACjB,KAAK,EACL,WAAW,
|
|
1
|
+
{"version":3,"file":"App.d.ts","sourceRoot":"","sources":["../src/App.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,iBAAiB,EACjB,KAAK,EACL,WAAW,EAUZ,MAAM,gBAAgB,CAAC;AACxB,OAAO,WAAW,MAAM,eAAe,CAAC;AAKxC,KAAK,aAAa,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;AAE9D,YAAY,EAAE,aAAa,EAAE,CAAC;AAE9B,MAAM,CAAC,OAAO,OAAO,GAAI,YAAW,iBAAiB;IACnD,MAAM,EAAE,iBAAiB,CAAC;IAC1B,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAK;IACrB,OAAO,EAAE,WAAW,GAAG,IAAI,CAAC;IAC5B,OAAO,EAAE,WAAW,GAAG,IAAI,CAAQ;IACnC,OAAO,CAAC,UAAU,CAAkB;IAEpC,OAAO,CAAC,SAAS,CAAS;gBAGxB,MAAM,EAAE,iBAAiB,EACzB,GAAG,EAAE,MAAM,EACX,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE,MAAM;IAWZ,IAAI;IAiGV;;;OAGG;IACH,OAAO;IA8BP,OAAO,CAAC,WAAW,CAMjB;IAEF,mBAAmB,CAAC,QAAQ,EAAE,aAAa;IAI3C,gBAAgB,CAAC,QAAQ,EAAE,aAAa;IAIxC,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;IAe3C,eAAe;IASf,OAAO,CAAC,cAAc,CAIpB;IAMF,aAAa,IAAI,IAAI;IAErB,aAAa,CAAC,MAAM,EAAE,OAAO;IAC7B,YAAY,CAAC,MAAM,EAAE,OAAO;IAE5B,YAAY;IAEZ,KAAK,GAAI,OAAO,GAAG,UAEjB;IAEF,OAAO,aAAY;IAEnB,YAAY,aAIV;IAEF,WAAW,aAIT;IAEF,eAAe;IAIf,WAAW,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI;IAE/B,aAAa,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI;IAEjC,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG;IAIhC,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG;IAI9B,YAAY;CACb"}
|
package/dist/App.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Platform, GameContext, Settings_Threejs, PLink, } from "@p100-web/core";
|
|
1
|
+
import { Platform, GameContext, Settings_Threejs, PLink, PValueLink, } from "@p100-web/core";
|
|
2
2
|
import ThreeEngine from "./ThreeEngine";
|
|
3
3
|
import ComponentFactory from "./ComponentFactory";
|
|
4
4
|
export default class App {
|
|
@@ -89,6 +89,8 @@ export default class App {
|
|
|
89
89
|
json.fileUsages.map((i) => this.context.registerFileUsage(i));
|
|
90
90
|
// Init links
|
|
91
91
|
const links = json.links.map((dbLink) => new PLink(dbLink));
|
|
92
|
+
// Init value links
|
|
93
|
+
const valueLinks = json.valueLinks.map((dbLink) => new PValueLink(dbLink));
|
|
92
94
|
// Set layer mask
|
|
93
95
|
this.context.setLayers(settings.mask, false);
|
|
94
96
|
const dbNodes = json.nodes;
|
|
@@ -104,7 +106,7 @@ export default class App {
|
|
|
104
106
|
const dbSceneNodes = dbNodes.filter((n) => n.scene === dbSceneRoot.scene);
|
|
105
107
|
this.context.createRootNode(dbSceneRoot, dbSceneNodes);
|
|
106
108
|
});
|
|
107
|
-
this.context.linkPorts(links, false);
|
|
109
|
+
this.context.linkPorts(links, valueLinks, false);
|
|
108
110
|
this.context.setRoot(root);
|
|
109
111
|
this.context.enable();
|
|
110
112
|
// Set camera controls
|
package/dist/App.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"App.js","sourceRoot":"","sources":["../src/App.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,QAAQ,EAGR,WAAW,EACX,gBAAgB,EAOhB,KAAK,
|
|
1
|
+
{"version":3,"file":"App.js","sourceRoot":"","sources":["../src/App.ts"],"names":[],"mappings":"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"}
|
|
@@ -139,60 +139,60 @@ function createChromaKeyMaterial(args) {
|
|
|
139
139
|
keySoftness: { value: 0.001 }, // squared threshold
|
|
140
140
|
stereoMultiplier: { value: 1 }, // squared threshold
|
|
141
141
|
},
|
|
142
|
-
vertexShader: `
|
|
143
|
-
varying vec2 vUv;
|
|
144
|
-
void main() {
|
|
145
|
-
vUv = uv;
|
|
146
|
-
gl_Position = projectionMatrix * modelViewMatrix * vec4(position, 1.0);
|
|
147
|
-
}
|
|
142
|
+
vertexShader: `
|
|
143
|
+
varying vec2 vUv;
|
|
144
|
+
void main() {
|
|
145
|
+
vUv = uv;
|
|
146
|
+
gl_Position = projectionMatrix * modelViewMatrix * vec4(position, 1.0);
|
|
147
|
+
}
|
|
148
148
|
`,
|
|
149
149
|
fragmentShader: args.transparent
|
|
150
|
-
? `
|
|
151
|
-
uniform sampler2D map;
|
|
152
|
-
uniform vec3 keyColor;
|
|
153
|
-
uniform float keyThreshold;
|
|
154
|
-
uniform float keySoftness;
|
|
155
|
-
uniform float stereoMultiplier;
|
|
156
|
-
varying vec2 vUv;
|
|
157
|
-
|
|
158
|
-
void main() {
|
|
159
|
-
vec2 uv = vUv;
|
|
160
|
-
uv.y *= stereoMultiplier;
|
|
161
|
-
vec4 col = texture2D(map, uv);
|
|
162
|
-
|
|
163
|
-
// squared distance to key color
|
|
164
|
-
vec3 diff = col.rgb - keyColor;
|
|
165
|
-
float distSq = dot(diff, diff);
|
|
166
|
-
|
|
167
|
-
// Smooth alpha:
|
|
168
|
-
// distSq <= keyThreshold → fully transparent
|
|
169
|
-
// distSq >= keyThreshold+softness → fully opaque
|
|
170
|
-
float alpha = smoothstep(keyThreshold, keyThreshold + keySoftness, distSq);
|
|
171
|
-
|
|
172
|
-
// multiply original texture alpha as well
|
|
173
|
-
gl_FragColor = vec4(col.rgb, col.a * alpha);
|
|
174
|
-
}
|
|
150
|
+
? `
|
|
151
|
+
uniform sampler2D map;
|
|
152
|
+
uniform vec3 keyColor;
|
|
153
|
+
uniform float keyThreshold;
|
|
154
|
+
uniform float keySoftness;
|
|
155
|
+
uniform float stereoMultiplier;
|
|
156
|
+
varying vec2 vUv;
|
|
157
|
+
|
|
158
|
+
void main() {
|
|
159
|
+
vec2 uv = vUv;
|
|
160
|
+
uv.y *= stereoMultiplier;
|
|
161
|
+
vec4 col = texture2D(map, uv);
|
|
162
|
+
|
|
163
|
+
// squared distance to key color
|
|
164
|
+
vec3 diff = col.rgb - keyColor;
|
|
165
|
+
float distSq = dot(diff, diff);
|
|
166
|
+
|
|
167
|
+
// Smooth alpha:
|
|
168
|
+
// distSq <= keyThreshold → fully transparent
|
|
169
|
+
// distSq >= keyThreshold+softness → fully opaque
|
|
170
|
+
float alpha = smoothstep(keyThreshold, keyThreshold + keySoftness, distSq);
|
|
171
|
+
|
|
172
|
+
// multiply original texture alpha as well
|
|
173
|
+
gl_FragColor = vec4(col.rgb, col.a * alpha);
|
|
174
|
+
}
|
|
175
175
|
`
|
|
176
|
-
: `
|
|
177
|
-
uniform sampler2D map;
|
|
178
|
-
uniform vec3 keyColor;
|
|
179
|
-
uniform float keyThreshold;
|
|
180
|
-
uniform float stereoMultiplier;
|
|
181
|
-
varying vec2 vUv;
|
|
182
|
-
|
|
183
|
-
void main() {
|
|
184
|
-
vec2 uv = vUv;
|
|
185
|
-
uv.y *= stereoMultiplier;
|
|
186
|
-
vec4 col = texture2D(map, uv);
|
|
187
|
-
|
|
188
|
-
// squared distance to key color
|
|
189
|
-
vec3 diff = col.rgb - keyColor;
|
|
190
|
-
float distSq = dot(diff, diff);
|
|
191
|
-
|
|
192
|
-
// branch-free alpha mask
|
|
193
|
-
if (distSq < keyThreshold) discard;
|
|
194
|
-
gl_FragColor = vec4(col.rgb, 1);
|
|
195
|
-
}
|
|
176
|
+
: `
|
|
177
|
+
uniform sampler2D map;
|
|
178
|
+
uniform vec3 keyColor;
|
|
179
|
+
uniform float keyThreshold;
|
|
180
|
+
uniform float stereoMultiplier;
|
|
181
|
+
varying vec2 vUv;
|
|
182
|
+
|
|
183
|
+
void main() {
|
|
184
|
+
vec2 uv = vUv;
|
|
185
|
+
uv.y *= stereoMultiplier;
|
|
186
|
+
vec4 col = texture2D(map, uv);
|
|
187
|
+
|
|
188
|
+
// squared distance to key color
|
|
189
|
+
vec3 diff = col.rgb - keyColor;
|
|
190
|
+
float distSq = dot(diff, diff);
|
|
191
|
+
|
|
192
|
+
// branch-free alpha mask
|
|
193
|
+
if (distSq < keyThreshold) discard;
|
|
194
|
+
gl_FragColor = vec4(col.rgb, 1);
|
|
195
|
+
}
|
|
196
196
|
`,
|
|
197
197
|
//
|
|
198
198
|
});
|
package/package.json
CHANGED
|
@@ -1,33 +1,33 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "@p100-web/core-three",
|
|
3
|
-
"private": false,
|
|
4
|
-
"version": "100.2.
|
|
5
|
-
"author": "Peter Drugge",
|
|
6
|
-
"license": "ISC",
|
|
7
|
-
"description": "",
|
|
8
|
-
"devDependencies": {
|
|
9
|
-
"eslint": "^8.57.0",
|
|
10
|
-
"@types/three": "^0.179.0",
|
|
11
|
-
"typescript": "^5.4.2"
|
|
12
|
-
},
|
|
13
|
-
"peerDependencies": {
|
|
14
|
-
"@p100-web/core": "^100.2.
|
|
15
|
-
"three": "^0.179.1",
|
|
16
|
-
"troika-three-text": "^0.52.4",
|
|
17
|
-
"@tweenjs/tween.js": "^25.0.0"
|
|
18
|
-
},
|
|
19
|
-
"files": ["dist"],
|
|
20
|
-
"dependencies": {
|
|
21
|
-
"detect-gpu": "^5.0.70"
|
|
22
|
-
},
|
|
23
|
-
"scripts": {
|
|
24
|
-
"clean": "rimraf dist",
|
|
25
|
-
"build": "tsc -p tsconfig.json"
|
|
26
|
-
},
|
|
27
|
-
"exports": {
|
|
28
|
-
".": {
|
|
29
|
-
"import": "./dist/index.js",
|
|
30
|
-
"types": "./dist/index.d.ts"
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"name": "@p100-web/core-three",
|
|
3
|
+
"private": false,
|
|
4
|
+
"version": "100.2.15",
|
|
5
|
+
"author": "Peter Drugge",
|
|
6
|
+
"license": "ISC",
|
|
7
|
+
"description": "",
|
|
8
|
+
"devDependencies": {
|
|
9
|
+
"eslint": "^8.57.0",
|
|
10
|
+
"@types/three": "^0.179.0",
|
|
11
|
+
"typescript": "^5.4.2"
|
|
12
|
+
},
|
|
13
|
+
"peerDependencies": {
|
|
14
|
+
"@p100-web/core": "^100.2.15",
|
|
15
|
+
"three": "^0.179.1",
|
|
16
|
+
"troika-three-text": "^0.52.4",
|
|
17
|
+
"@tweenjs/tween.js": "^25.0.0"
|
|
18
|
+
},
|
|
19
|
+
"files": ["dist"],
|
|
20
|
+
"dependencies": {
|
|
21
|
+
"detect-gpu": "^5.0.70"
|
|
22
|
+
},
|
|
23
|
+
"scripts": {
|
|
24
|
+
"clean": "rimraf dist",
|
|
25
|
+
"build": "tsc -p tsconfig.json"
|
|
26
|
+
},
|
|
27
|
+
"exports": {
|
|
28
|
+
".": {
|
|
29
|
+
"import": "./dist/index.js",
|
|
30
|
+
"types": "./dist/index.d.ts"
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
}
|