@needle-tools/engine 2.65.0-pre → 2.65.1-pre
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/CHANGELOG.md +10 -0
- package/dist/needle-engine.js +9884 -9857
- package/dist/needle-engine.umd.cjs +211 -207
- package/lib/engine/engine_element.d.ts +2 -0
- package/lib/engine/engine_element.js +26 -4
- package/lib/engine/engine_element.js.map +1 -1
- package/lib/engine/engine_license.js +9 -5
- package/lib/engine/engine_license.js.map +1 -1
- package/lib/engine-components/ParticleSystem.d.ts +12 -8
- package/lib/engine-components/ParticleSystem.js +59 -30
- package/lib/engine-components/ParticleSystem.js.map +1 -1
- package/lib/engine-components/ParticleSystemModules.d.ts +1 -0
- package/lib/engine-components/ParticleSystemModules.js +12 -5
- package/lib/engine-components/ParticleSystemModules.js.map +1 -1
- package/lib/engine-components/Skybox.js +18 -5
- package/lib/engine-components/Skybox.js.map +1 -1
- package/package.json +1 -1
- package/src/engine/engine_element.ts +31 -5
- package/src/engine/engine_license.ts +9 -5
- package/src/engine-components/ParticleSystem.ts +68 -37
- package/src/engine-components/ParticleSystemModules.ts +12 -6
- package/src/engine-components/Skybox.ts +15 -5
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ParticleSystemModules.js","sourceRoot":"","sources":["../../../src/engine-components/ParticleSystemModules.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ParticleSystemModules.js","sourceRoot":"","sources":["../../../src/engine-components/ParticleSystemModules.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,6 +11,8 @@ import { EXRLoader } from "three/examples/jsm/loaders/EXRLoader";
|
|
|
11
11
|
import { EquirectangularRefractionMapping, sRGBEncoding, TextureLoader } from "three";
|
|
12
12
|
import { syncField } from "../engine/engine_networking_auto";
|
|
13
13
|
import { Camera } from "./Camera";
|
|
14
|
+
import { getParam, getPath } from "../engine/engine_utils";
|
|
15
|
+
const debug = getParam("debugskybox");
|
|
14
16
|
export class RemoteSkybox extends Behaviour {
|
|
15
17
|
url;
|
|
16
18
|
allowDrop = true;
|
|
@@ -37,9 +39,16 @@ export class RemoteSkybox extends Behaviour {
|
|
|
37
39
|
async setSkybox(url) {
|
|
38
40
|
if (!url)
|
|
39
41
|
return;
|
|
40
|
-
if (!url?.endsWith(".hdr") && !url.endsWith(".exr")) {
|
|
42
|
+
if (!url?.endsWith(".hdr") && !url.endsWith(".exr") && !url.endsWith(".jpg") && !url.endsWith(".png") && !url.endsWith(".jpeg")) {
|
|
41
43
|
console.warn("Potentially invalid skybox url", this.url, "on", this.name);
|
|
42
44
|
}
|
|
45
|
+
if (debug)
|
|
46
|
+
console.log("Remote skybox url?: " + url);
|
|
47
|
+
if (!url.startsWith("http") && !url.startsWith("www.") && !url.startsWith("data:")) {
|
|
48
|
+
url = getPath(this.sourceId, url);
|
|
49
|
+
if (debug)
|
|
50
|
+
console.log("Remote skybox resolved to " + url);
|
|
51
|
+
}
|
|
43
52
|
if (this._prevUrl === url && this._prevLoadedEnvironment) {
|
|
44
53
|
this.applySkybox();
|
|
45
54
|
return;
|
|
@@ -63,7 +72,8 @@ export class RemoteSkybox extends Behaviour {
|
|
|
63
72
|
if (!(this._loader instanceof TextureLoader))
|
|
64
73
|
this._loader = new TextureLoader();
|
|
65
74
|
}
|
|
66
|
-
|
|
75
|
+
if (debug)
|
|
76
|
+
console.log("Loading skybox: " + url);
|
|
67
77
|
const envMap = await this._loader.loadAsync(url);
|
|
68
78
|
if (!envMap)
|
|
69
79
|
return;
|
|
@@ -91,7 +101,8 @@ export class RemoteSkybox extends Behaviour {
|
|
|
91
101
|
this._prevBackground = this.context.scene.background;
|
|
92
102
|
if (this.context.scene.environment !== envMap)
|
|
93
103
|
this._prevEnvironment = this.context.scene.environment;
|
|
94
|
-
|
|
104
|
+
if (debug)
|
|
105
|
+
console.log("Set remote skybox", this.url);
|
|
95
106
|
if (this.environment)
|
|
96
107
|
this.context.scene.environment = envMap;
|
|
97
108
|
if (this.background && !Camera.backgroundShouldBeTransparent(this.context))
|
|
@@ -128,12 +139,14 @@ export class RemoteSkybox extends Behaviour {
|
|
|
128
139
|
for (const type of e.dataTransfer.types) {
|
|
129
140
|
if (type === "text/uri-list") {
|
|
130
141
|
const url = e.dataTransfer.getData(type);
|
|
131
|
-
|
|
142
|
+
if (debug)
|
|
143
|
+
console.log(type, url);
|
|
132
144
|
let name = new RegExp(/polyhaven.com\/asset_img\/.+?\/(?<name>.+)\.png/).exec(url)?.groups?.name;
|
|
133
145
|
if (!name) {
|
|
134
146
|
name = new RegExp(/polyhaven\.com\/a\/(?<name>.+)/).exec(url)?.groups?.name;
|
|
135
147
|
}
|
|
136
|
-
|
|
148
|
+
if (debug)
|
|
149
|
+
console.log(name);
|
|
137
150
|
if (name) {
|
|
138
151
|
const envurl = "https://dl.polyhaven.org/file/ph-assets/HDRIs/exr/1k/" + name + "_1k.exr";
|
|
139
152
|
this.setSkybox(envurl);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Skybox.js","sourceRoot":"","sources":["../../../src/engine-components/Skybox.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,0CAA0C,CAAC;AACxE,OAAO,EAAE,SAAS,EAAc,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,0CAA0C,CAAC;AACtE,OAAO,EAAE,SAAS,EAAE,MAAM,sCAAsC,CAAC;AACjE,OAAO,EAAE,gCAAgC,EAAE,YAAY,EAAW,aAAa,EAAE,MAAM,OAAO,CAAA;AAC9F,OAAO,EAAE,SAAS,EAAE,MAAM,kCAAkC,CAAC;AAC7D,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"Skybox.js","sourceRoot":"","sources":["../../../src/engine-components/Skybox.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,0CAA0C,CAAC;AACxE,OAAO,EAAE,SAAS,EAAc,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,0CAA0C,CAAC;AACtE,OAAO,EAAE,SAAS,EAAE,MAAM,sCAAsC,CAAC;AACjE,OAAO,EAAE,gCAAgC,EAAE,YAAY,EAAW,aAAa,EAAE,MAAM,OAAO,CAAA;AAC9F,OAAO,EAAE,SAAS,EAAE,MAAM,kCAAkC,CAAC;AAC7D,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAE3D,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,CAAC;AAEtC,MAAM,OAAO,YAAa,SAAQ,SAAS;IAIvC,GAAG,CAAU;IAGb,SAAS,GAAY,IAAI,CAAC;IAG1B,UAAU,GAAY,IAAI,CAAC;IAG3B,WAAW,GAAY,IAAI,CAAC;IAEpB,OAAO,CAA0C;IACjD,QAAQ,CAAU;IAClB,sBAAsB,CAAW;IACjC,gBAAgB,GAAmB,IAAI,CAAC;IACxC,eAAe,GAAQ,IAAI,CAAC;IAEpC,QAAQ;QACJ,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACzB,IAAI,CAAC,kBAAkB,EAAE,CAAC;IAC9B,CAAC;IAED,SAAS;QACL,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,KAAK,IAAI,CAAC,sBAAsB,EAAE;YAChE,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,GAAG,IAAI,CAAC,gBAAgB,CAAC;YACvD,IAAI,CAAC,MAAM,CAAC,6BAA6B,CAAC,IAAI,CAAC,OAAO,CAAC;gBACnD,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,GAAG,IAAI,CAAC,eAAe,CAAC;YACzD,IAAI,CAAC,sBAAsB,GAAG,SAAS,CAAC;SAC3C;QACD,IAAI,CAAC,oBAAoB,EAAE,CAAC;IAChC,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,GAA8B;QAC1C,IAAI,CAAC,GAAG;YAAE,OAAO;QACjB,IAAI,CAAC,GAAG,EAAE,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE;YAC7H,OAAO,CAAC,IAAI,CAAC,gCAAgC,EAAE,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;SAC7E;QAED,IAAG,KAAK;YAAE,OAAO,CAAC,GAAG,CAAC,sBAAsB,GAAG,GAAG,CAAC,CAAC;QAEpD,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE;YAChF,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;YAClC,IAAG,KAAK;gBAAE,OAAO,CAAC,GAAG,CAAC,4BAA4B,GAAG,GAAG,CAAC,CAAC;SAC7D;QAED,IAAI,IAAI,CAAC,QAAQ,KAAK,GAAG,IAAI,IAAI,CAAC,sBAAsB,EAAE;YACtD,IAAI,CAAC,WAAW,EAAE,CAAC;YACnB,OAAO;SACV;aACI;YACD,IAAI,CAAC,sBAAsB,EAAE,OAAO,EAAE,CAAC;YACvC,IAAI,CAAC,sBAAsB,GAAG,SAAS,CAAC;SAC3C;QACD,IAAI,CAAC,QAAQ,GAAG,GAAG,CAAC;QAGpB,MAAM,KAAK,GAAG,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QACnC,MAAM,KAAK,GAAG,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QACnC,IAAI,KAAK,EAAE;YACP,IAAI,CAAC,CAAC,IAAI,CAAC,OAAO,YAAY,SAAS,CAAC;gBACpC,IAAI,CAAC,OAAO,GAAG,IAAI,SAAS,EAAE,CAAC;SACtC;aACI,IAAI,KAAK,EAAE;YACZ,IAAI,CAAC,CAAC,IAAI,CAAC,OAAO,YAAY,UAAU,CAAC;gBACrC,IAAI,CAAC,OAAO,GAAG,IAAI,UAAU,EAAE,CAAC;SACvC;aACI;YACD,IAAI,CAAC,CAAC,IAAI,CAAC,OAAO,YAAY,aAAa,CAAC;gBACxC,IAAI,CAAC,OAAO,GAAG,IAAI,aAAa,EAAE,CAAC;SAC1C;QAED,IAAG,KAAK;YAAE,OAAO,CAAC,GAAG,CAAC,kBAAkB,GAAG,GAAG,CAAC,CAAC;QAChD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;QACjD,IAAI,CAAC,MAAM;YAAE,OAAO;QACpB,+BAA+B;QAC/B,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,OAAO;QAC1B,yBAAyB;QACzB,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;QACf,MAAM,SAAS,GAAG,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QACvC,MAAM,CAAC,IAAI,GAAG,GAAG,CAAC,SAAS,CAAC,SAAS,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAChE,IAAI,IAAI,CAAC,OAAO,YAAY,aAAa,EAAE;YACvC,MAAM,CAAC,QAAQ,GAAG,YAAY,CAAC;SAClC;QACD,IAAI,CAAC,sBAAsB,GAAG,MAAM,CAAC;QACrC,IAAI,CAAC,WAAW,EAAE,CAAC;IACvB,CAAC;IAEO,WAAW;QACf,MAAM,MAAM,GAAG,IAAI,CAAC,sBAAsB,CAAC;QAC3C,IAAI,CAAC,MAAM;YAAE,OAAO;QAEpB,MAAM,CAAC,OAAO,GAAG,gCAAgC,CAAC;QAClD,MAAM,CAAC,WAAW,GAAG,IAAI,CAAC;QAE1B,gBAAgB;QAChB,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,KAAK,MAAM;YACxC,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC;QACzD,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,KAAK,MAAM;YACzC,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC;QAE3D,IAAG,KAAK;YAAE,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;QACrD,IAAI,IAAI,CAAC,WAAW;YAChB,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,GAAG,MAAM,CAAC;QAC5C,IAAI,IAAI,CAAC,UAAU,IAAI,CAAC,MAAM,CAAC,6BAA6B,CAAC,IAAI,CAAC,OAAO,CAAC;YACtE,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,GAAG,MAAM,CAAC;QAC3C,IAAI,IAAI,CAAC,OAAO,CAAC,mBAAmB,EAAE,oBAAoB,KAAK,SAAS;YACpE,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,oBAAoB,GAAG,IAAI,CAAC,OAAO,CAAC,mBAAmB,CAAC,oBAAoB,CAAC;IACxG,CAAC;IAGO,aAAa,CAAO;IACpB,SAAS,CAAO;IAEhB,kBAAkB;QACtB,IAAI,IAAI,CAAC,aAAa;YAAE,OAAO;QAE/B,IAAI,CAAC,aAAa,GAAG,CAAC,CAAY,EAAE,EAAE;YAClC,IAAI,CAAC,IAAI,CAAC,SAAS;gBAAE,OAAO;YAC5B,IAAI,CAAC,CAAC,CAAC,YAAY;gBAAE,OAAO;YAC5B,KAAK,MAAM,IAAI,IAAI,CAAC,CAAC,YAAY,CAAC,KAAK,EAAE;gBACrC,kDAAkD;gBAClD,0CAA0C;gBAC1C,yCAAyC;gBACzC,6BAA6B;gBAC7B,IAAI,IAAI,KAAK,eAAe,EAAE;oBAC1B,CAAC,CAAC,cAAc,EAAE,CAAC;iBACtB;aACJ;QACL,CAAC,CAAC;QAEF,IAAI,CAAC,SAAS,GAAG,CAAC,CAAY,EAAE,EAAE;YAC9B,IAAI,CAAC,IAAI,CAAC,SAAS;gBAAE,OAAO;YAC5B,CAAC,CAAC,cAAc,EAAE,CAAC;YACnB,IAAI,CAAC,CAAC,CAAC,YAAY;gBAAE,OAAO;YAC5B,KAAK,MAAM,IAAI,IAAI,CAAC,CAAC,YAAY,CAAC,KAAK,EAAE;gBACrC,IAAI,IAAI,KAAK,eAAe,EAAE;oBAC1B,MAAM,GAAG,GAAG,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;oBACzC,IAAG,KAAK;wBAAE,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;oBACjC,IAAI,IAAI,GAAG,IAAI,MAAM,CAAC,iDAAiD,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC;oBACjG,IAAI,CAAC,IAAI,EAAE;wBACP,IAAI,GAAG,IAAI,MAAM,CAAC,gCAAgC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC;qBAC/E;oBACD,IAAG,KAAK;wBAAE,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;oBAC5B,IAAI,IAAI,EAAE;wBACN,MAAM,MAAM,GAAG,uDAAuD,GAAG,IAAI,GAAG,SAAS,CAAC;wBAC1F,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;qBAC1B;;wBACI,OAAO,CAAC,IAAI,CAAC,gDAAgD,EAAE,GAAG,CAAC,CAAC;iBAC5E;aACJ;QACL,CAAC,CAAC;QAEF,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,gBAAgB,CAAC,UAAU,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;QACzE,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,gBAAgB,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;IACrE,CAAC;IAEO,oBAAoB;QACxB,IAAI,CAAC,IAAI,CAAC,aAAa;YAAE,OAAO;QAChC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,mBAAmB,CAAC,UAAU,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;QAC5E,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,mBAAmB,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;IACxE,CAAC;CACJ;AAjKG;IAFC,SAAS,CAAC,WAAW,CAAC;IACtB,YAAY,EAAE;yCACF;AAGb;IADC,YAAY,EAAE;+CACW;AAG1B;IADC,YAAY,EAAE;gDACY;AAG3B;IADC,YAAY,EAAE;iDACa"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@needle-tools/engine",
|
|
3
|
-
"version": "2.65.
|
|
3
|
+
"version": "2.65.1-pre",
|
|
4
4
|
"description": "Needle Engine is a web-based runtime for 3D apps. It runs on your machine for development, and can be deployed anywhere. It is flexible, extensible, and collaboration and XR come naturally.",
|
|
5
5
|
"main": "dist/needle-engine.umd.cjs",
|
|
6
6
|
"module": "lib/needle-engine.js",
|
|
@@ -63,6 +63,7 @@ export class EngineElement extends HTMLElement implements INeedleEngineComponent
|
|
|
63
63
|
private _overlay_ar: AROverlayHandler;
|
|
64
64
|
private _loadingProgress01: number = 0;
|
|
65
65
|
private _loadingView?: ILoadingViewHandler;
|
|
66
|
+
private _previousSrc: string | null | string[] = null;
|
|
66
67
|
|
|
67
68
|
constructor() {
|
|
68
69
|
super();
|
|
@@ -77,7 +78,7 @@ export class EngineElement extends HTMLElement implements INeedleEngineComponent
|
|
|
77
78
|
}
|
|
78
79
|
|
|
79
80
|
this.onSetupDesktop();
|
|
80
|
-
const src = this.getAttribute("src");
|
|
81
|
+
const src = this.getAttribute("src") ?? globalThis["needle:codegen_files"];
|
|
81
82
|
if (src && src.length > 0) {
|
|
82
83
|
await this.onLoad(src, true);
|
|
83
84
|
}
|
|
@@ -141,7 +142,15 @@ export class EngineElement extends HTMLElement implements INeedleEngineComponent
|
|
|
141
142
|
}
|
|
142
143
|
}
|
|
143
144
|
|
|
144
|
-
private
|
|
145
|
+
private _isCurrentlySettingsSourceAttribute = false;
|
|
146
|
+
|
|
147
|
+
private async onLoad(src: string | null | string[], isStartup: boolean) {
|
|
148
|
+
if (this._isCurrentlySettingsSourceAttribute) {
|
|
149
|
+
return;
|
|
150
|
+
}
|
|
151
|
+
if (src === this._previousSrc) {
|
|
152
|
+
return;
|
|
153
|
+
}
|
|
145
154
|
if (!src || !src.length) {
|
|
146
155
|
console.error("Needle Engine: No source specified", src);
|
|
147
156
|
return;
|
|
@@ -150,6 +159,14 @@ export class EngineElement extends HTMLElement implements INeedleEngineComponent
|
|
|
150
159
|
console.error("Needle Engine: Context not initialized");
|
|
151
160
|
return;
|
|
152
161
|
}
|
|
162
|
+
|
|
163
|
+
this._previousSrc = src;
|
|
164
|
+
|
|
165
|
+
// Set the source attribute so codegen doesnt try to re-assign it again and we communicate to the outside which root files are being loaded
|
|
166
|
+
this._isCurrentlySettingsSourceAttribute = true;
|
|
167
|
+
this.setAttribute("src", src?.toString());
|
|
168
|
+
this._isCurrentlySettingsSourceAttribute = false;
|
|
169
|
+
|
|
153
170
|
const alias = this.getAttribute("alias");
|
|
154
171
|
this.classList.add("loading");
|
|
155
172
|
if (debug) console.log("Needle Engine: Begin loading", alias ?? "");
|
|
@@ -173,14 +190,23 @@ export class EngineElement extends HTMLElement implements INeedleEngineComponent
|
|
|
173
190
|
|
|
174
191
|
if (debug) console.log(src);
|
|
175
192
|
let filesToLoad: Array<string>;
|
|
176
|
-
|
|
193
|
+
// When using globalThis the src is an array already
|
|
194
|
+
if (Array.isArray(src)) {
|
|
195
|
+
filesToLoad = src;
|
|
196
|
+
}
|
|
197
|
+
// When assigned from codegen the src is a stringified array
|
|
198
|
+
else if (src.startsWith("[") && src.endsWith("]")) {
|
|
177
199
|
filesToLoad = JSON.parse(src);
|
|
178
200
|
}
|
|
201
|
+
// src.toString for an array produces a comma separated list
|
|
202
|
+
else if (src.includes(",")) {
|
|
203
|
+
filesToLoad = src.split(",");
|
|
204
|
+
}
|
|
179
205
|
else filesToLoad = [src];
|
|
180
206
|
|
|
181
207
|
let loadFunction: any = null;
|
|
182
208
|
|
|
183
|
-
if (
|
|
209
|
+
if (filesToLoad?.length > 0) {
|
|
184
210
|
loadFunction = async (ctx: Context) => {
|
|
185
211
|
let hash = 0;
|
|
186
212
|
if (ctx.hash) hash = Number.parseInt(ctx.hash) ?? 0;
|
|
@@ -223,7 +249,7 @@ export class EngineElement extends HTMLElement implements INeedleEngineComponent
|
|
|
223
249
|
};
|
|
224
250
|
}
|
|
225
251
|
if (!loadFunction) {
|
|
226
|
-
console.error("Needle Engine: No
|
|
252
|
+
console.error("Needle Engine: No files to load", src);
|
|
227
253
|
return;
|
|
228
254
|
}
|
|
229
255
|
const currentHash = this.getAttribute("hash");
|
|
@@ -86,14 +86,18 @@ function insertNonCommercialUseHint(ctx: IContext) {
|
|
|
86
86
|
async function logNonCommercialUse(_logo?: string) {
|
|
87
87
|
const logo = "data:image/webp;base64,UklGRrABAABXRUJQVlA4WAoAAAAQAAAAHwAAHwAAQUxQSKEAAAARN6CmbSM4WR7vdARON11EBDq3fLiNbVtVzpMCPlKAEzsx0Y/x+Ovuv4dn0EFE/ydAvz6YggXzgh5sVgXM/zOC/4sii7qgGvB5N7hmuQYwkvazWAu1JPW41FXSHq6pnaQWvqYH18Fc0j1hO/BFTtIeSBlJi5w6qIIO7IOrwhFsB2Yxukif0FTRLpXswHR8MxbslKe9VZsn/Ub5C7YFOpqSTABWUDgg6AAAAFAGAJ0BKiAAIAA+7VyoTqmkpCI3+qgBMB2JbACdMt69DwMIQBLhkTO6XwY00UEDK6cNIDnuNibPf0EgAP7Y1myuiQHLDsF/0h5unrGh6WAbv7aegg2ZMd3uRKfT/3SJztcaujYfTvMXspfCTmYcoO6a+vhC3ss4M8uM58t4siiu59I4aOl59e9Sr6xoxYlHf2v+NnBNpJYeJf8jABQAId/PXuBkLEFkiCucgSGEcfhvajql/j3reCGl0M5/9gQWy7ayNPs+wlvIxFnNfSlfuND4CZOCyxOHhRqOmHN4ULHo3tCSrUNvgAA=";
|
|
88
88
|
const style = `
|
|
89
|
-
font-size:18px;
|
|
90
|
-
background-size:
|
|
91
|
-
background-position: left
|
|
89
|
+
font-size: 18px;
|
|
90
|
+
background-size: 20px;
|
|
91
|
+
background-position: left top;
|
|
92
92
|
background-repeat:no-repeat;
|
|
93
|
-
background-image:url('${logo}')
|
|
93
|
+
background-image:url('${logo}');
|
|
94
|
+
background-max-size: 40px;
|
|
95
|
+
padding-left: 30px;
|
|
96
|
+
margin-bottom: 2px;
|
|
97
|
+
margin-bottom: 5px;
|
|
94
98
|
`;
|
|
95
99
|
let licenseText = "Needle Engine — non commercial version";
|
|
96
|
-
console.log("%c
|
|
100
|
+
console.log("%c" + licenseText, style)
|
|
97
101
|
}
|
|
98
102
|
|
|
99
103
|
function createLicenseElement() {
|
|
@@ -9,7 +9,7 @@ import { getParam } from "../engine/engine_utils";
|
|
|
9
9
|
import { serializable } from "../engine/engine_serialization";
|
|
10
10
|
import { RGBAColor } from "./js-extensions/RGBAColor";
|
|
11
11
|
import { AxesHelper, BufferGeometry, Color, Material, Matrix4, Mesh, MeshStandardMaterial, Object3D, OneMinusDstAlphaFactor, PlaneGeometry, Quaternion, Sprite, SpriteMaterial, Vector3, Vector4 } from "three";
|
|
12
|
-
import { getWorldPosition, getWorldQuaternion, getWorldScale } from "../engine/engine_three_utils";
|
|
12
|
+
import { getWorldPosition, getWorldQuaternion, getWorldScale, setWorldScale } from "../engine/engine_three_utils";
|
|
13
13
|
import { assign } from "../engine/engine_serialization_core";
|
|
14
14
|
import { BatchedParticleRenderer, Behavior, BillBoardSettings, BurstParameters, ColorGenerator, ConstantColor, ConstantValue, EmissionState, EmitSubParticleSystem, EmitterShape, FunctionColorGenerator, FunctionJSON, FunctionValueGenerator, IntervalValue, MeshSettings, Particle, ParticleEmitter, ParticleSystem as _ParticleSystem, ParticleSystemParameters, PointEmitter, RecordState, RenderMode, RotationGenerator, SizeOverLife, TrailBatch, TrailParticle, TrailSettings, ValueGenerator } from "three.quarks";
|
|
15
15
|
import { createFlatTexture } from "../engine/engine_shaders";
|
|
@@ -17,6 +17,7 @@ import { Mathf } from "../engine/engine_math";
|
|
|
17
17
|
import { Context } from "../engine/engine_setup";
|
|
18
18
|
import { ParticleSubEmitter } from "./ParticleSystemSubEmitter";
|
|
19
19
|
import { NEEDLE_progressive } from "../engine/extensions/NEEDLE_progressive";
|
|
20
|
+
import { Gizmos, isDevEnvironment } from "../engine/api";
|
|
20
21
|
|
|
21
22
|
const debug = getParam("debugparticles");
|
|
22
23
|
const suppressProgressiveLoading = getParam("noprogressive");
|
|
@@ -30,24 +31,6 @@ export enum SubEmitterType {
|
|
|
30
31
|
Manual = 4,
|
|
31
32
|
}
|
|
32
33
|
|
|
33
|
-
export class SubEmitterSystem {
|
|
34
|
-
|
|
35
|
-
particleSystem?: ParticleSystem;
|
|
36
|
-
|
|
37
|
-
emitProbability: number = 1;
|
|
38
|
-
properties?: number;
|
|
39
|
-
type?: SubEmitterType;
|
|
40
|
-
|
|
41
|
-
_deserialize(context: Context) {
|
|
42
|
-
const ps = this.particleSystem;
|
|
43
|
-
if (ps && !(ps instanceof ParticleSystem) && typeof ps["guid"] === "string") {
|
|
44
|
-
if (debug) console.log("DESERIALIZE SUBEMITTER", ps);
|
|
45
|
-
this.particleSystem = undefined;
|
|
46
|
-
this.particleSystem = GameObject.findByGuid(ps["guid"], context.scene) as ParticleSystem;
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
|
|
51
34
|
export class ParticleSystemRenderer extends Behaviour {
|
|
52
35
|
|
|
53
36
|
@serializable()
|
|
@@ -62,6 +45,22 @@ export class ParticleSystemRenderer extends Behaviour {
|
|
|
62
45
|
// @serializable(Mesh)
|
|
63
46
|
particleMesh?: Mesh | string;
|
|
64
47
|
|
|
48
|
+
@serializable()
|
|
49
|
+
maxParticleSize!: number;
|
|
50
|
+
|
|
51
|
+
@serializable()
|
|
52
|
+
minParticleSize!: number;
|
|
53
|
+
|
|
54
|
+
start() {
|
|
55
|
+
if (this.maxParticleSize !== .5 && this.minParticleSize !== 0) {
|
|
56
|
+
if (isDevEnvironment()) {
|
|
57
|
+
const msg = `ParticleSystem \"${this.name}\" has non-default min/max particle size. This may not render correctly. Please set min size to 0 and the max size to 0.5 and use the \"StartSize\" setting instead`;
|
|
58
|
+
console.warn(msg);
|
|
59
|
+
// showBalloonWarning(msg);
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
|
|
65
64
|
get transparent(): boolean {
|
|
66
65
|
const res = this.particleMaterial?.transparent ?? false;
|
|
67
66
|
// console.log(res, this.particleMaterial);
|
|
@@ -305,8 +304,13 @@ class SizeBehaviour extends ParticleSystemBaseBehaviour {
|
|
|
305
304
|
|
|
306
305
|
type: string = "NeedleSize";
|
|
307
306
|
|
|
307
|
+
private _minSize = 0;
|
|
308
|
+
private _maxSize = 1;
|
|
309
|
+
|
|
308
310
|
initialize(particle: Particle) {
|
|
309
311
|
particle[$sizeLerpFactor] = Math.random();
|
|
312
|
+
this._minSize = this.system.renderer.minParticleSize;
|
|
313
|
+
this._maxSize = this.system.renderer.maxParticleSize;
|
|
310
314
|
}
|
|
311
315
|
|
|
312
316
|
update(particle: Particle, _delta: number): void {
|
|
@@ -320,7 +324,8 @@ class SizeBehaviour extends ParticleSystemBaseBehaviour {
|
|
|
320
324
|
size *= this.system.sizeOverLifetime.evaluate(age01, undefined, particle[$sizeLerpFactor]).x;
|
|
321
325
|
const scaleFactor = this.system.worldScale.x / this.system.cameraScale;
|
|
322
326
|
particle.size = particle.startSize * size * scaleFactor;
|
|
323
|
-
|
|
327
|
+
// in Unity this is viewport size
|
|
328
|
+
particle.size = Mathf.clamp(particle.size, this._minSize, this._maxSize);
|
|
324
329
|
}
|
|
325
330
|
}
|
|
326
331
|
}
|
|
@@ -383,7 +388,9 @@ class VelocityBehaviour extends ParticleSystemBaseBehaviour {
|
|
|
383
388
|
private _gravityDirection = new Vector3();
|
|
384
389
|
|
|
385
390
|
initialize(particle: Particle): void {
|
|
386
|
-
const
|
|
391
|
+
const simulationSpeed = this.system.main.simulationSpeed;
|
|
392
|
+
|
|
393
|
+
const factor = 1 + this.scaleFactorDiff * simulationSpeed;
|
|
387
394
|
particle.startSpeed = this.system.main.startSpeed.evaluate(Math.random(), Math.random()) * factor;
|
|
388
395
|
particle.velocity.copy(this.system.shape.getDirection(particle.position)).multiplyScalar(particle.startSpeed);
|
|
389
396
|
if (this.system.inheritVelocity?.enabled) {
|
|
@@ -393,7 +400,7 @@ class VelocityBehaviour extends ParticleSystemBaseBehaviour {
|
|
|
393
400
|
else particle[$startVelocity].copy(particle.velocity);
|
|
394
401
|
|
|
395
402
|
const gravityFactor = this.system.main.gravityModifier.evaluate(Math.random(), Math.random()) / (9.81 * 2);
|
|
396
|
-
particle[$gravityFactor] = gravityFactor;
|
|
403
|
+
particle[$gravityFactor] = gravityFactor * simulationSpeed;
|
|
397
404
|
|
|
398
405
|
particle[$velocityLerpFactor] = Math.random();
|
|
399
406
|
|
|
@@ -411,18 +418,18 @@ class VelocityBehaviour extends ParticleSystemBaseBehaviour {
|
|
|
411
418
|
if (gravityFactor !== 0) {
|
|
412
419
|
// gravityFactor *= -1;
|
|
413
420
|
temp3.copy(this._gravityDirection).multiplyScalar(gravityFactor);
|
|
414
|
-
|
|
421
|
+
if(debug) Gizmos.DrawDirection(particle.position, temp3, 0x0000ff, 0, false, 10);
|
|
415
422
|
baseVelocity.add(temp3);
|
|
416
423
|
}
|
|
417
424
|
particle.velocity.copy(baseVelocity);
|
|
418
425
|
|
|
426
|
+
|
|
419
427
|
const t01 = particle.age / particle.life;
|
|
420
428
|
|
|
421
429
|
if (this.system.inheritVelocity?.enabled) {
|
|
422
430
|
this.system.inheritVelocity.applyCurrent(particle.velocity, t01, particle[$velocityLerpFactor]);
|
|
423
431
|
}
|
|
424
432
|
|
|
425
|
-
|
|
426
433
|
const noise = this.system.noise;
|
|
427
434
|
if (noise.enabled) {
|
|
428
435
|
noise.apply(0, particle.position, particle.velocity, delta, particle.age, particle.life);
|
|
@@ -772,22 +779,25 @@ export class ParticleSystem extends Behaviour implements IParticleSystem {
|
|
|
772
779
|
}
|
|
773
780
|
private _subEmitterSystems?: SubEmitterSystem[];
|
|
774
781
|
|
|
775
|
-
|
|
776
|
-
|
|
782
|
+
onAfterDeserialize(_){
|
|
777
783
|
if (this._subEmitterSystems && Array.isArray(this._subEmitterSystems)) {
|
|
778
784
|
for (const sub of this._subEmitterSystems) {
|
|
779
|
-
sub._deserialize(this.context);
|
|
785
|
+
sub._deserialize(this.context, this.gameObject);
|
|
780
786
|
}
|
|
781
787
|
}
|
|
788
|
+
}
|
|
789
|
+
|
|
790
|
+
awake(): void {
|
|
782
791
|
|
|
783
792
|
this._renderer = this.gameObject.getComponent(ParticleSystemRenderer) as ParticleSystemRenderer;
|
|
784
793
|
|
|
785
794
|
this._container = new Object3D();
|
|
786
795
|
this._container.matrixAutoUpdate = false;
|
|
787
|
-
if (this.main.simulationSpace == ParticleSystemSimulationSpace.Local) {
|
|
788
|
-
|
|
789
|
-
}
|
|
790
|
-
else
|
|
796
|
+
// if (this.main.simulationSpace == ParticleSystemSimulationSpace.Local) {
|
|
797
|
+
// this.gameObject.add(this._container);
|
|
798
|
+
// }
|
|
799
|
+
// else
|
|
800
|
+
{
|
|
791
801
|
this.context.scene.add(this._container);
|
|
792
802
|
}
|
|
793
803
|
// else this._container = this.context.scene;
|
|
@@ -875,21 +885,27 @@ export class ParticleSystem extends Behaviour implements IParticleSystem {
|
|
|
875
885
|
this._cameraScale = scale.x;
|
|
876
886
|
}
|
|
877
887
|
|
|
878
|
-
|
|
879
|
-
|
|
880
|
-
|
|
888
|
+
const isLocalSpace = !this.worldspace;
|
|
889
|
+
|
|
890
|
+
const source = this.gameObject;
|
|
881
891
|
getWorldQuaternion(source, this.__worldQuaternion)
|
|
882
892
|
this._worldQuaternionInverted.copy(this.__worldQuaternion).invert();
|
|
883
893
|
getWorldScale(this.gameObject, this._worldScale);
|
|
884
894
|
|
|
885
|
-
|
|
895
|
+
// Handle LOCALSPACE
|
|
896
|
+
if (isLocalSpace && this._container && this.gameObject?.parent) {
|
|
897
|
+
// TODO: there's probably a more efficient way to do this
|
|
886
898
|
const scale = getWorldScale(this.gameObject.parent);
|
|
887
899
|
scale.x = 1 / scale.x;
|
|
888
900
|
scale.y = 1 / scale.y;
|
|
889
901
|
scale.z = 1 / scale.z;
|
|
890
|
-
this._container.matrix.
|
|
891
|
-
this._container.matrix.
|
|
902
|
+
this._container.matrix.makeScale(scale.x, scale.y, scale.z);
|
|
903
|
+
this._container.matrix.makeRotationFromQuaternion(this.__worldQuaternion);
|
|
904
|
+
this._container.matrix.setPosition(this.worldPos);
|
|
905
|
+
this._container.matrix.scale(this.gameObject.scale);
|
|
892
906
|
}
|
|
907
|
+
|
|
908
|
+
|
|
893
909
|
this.emission.system = this;
|
|
894
910
|
this._interface.update();
|
|
895
911
|
this.shape.update(this, this.context, this.main.simulationSpace, this.gameObject);
|
|
@@ -918,3 +934,18 @@ export class ParticleSystem extends Behaviour implements IParticleSystem {
|
|
|
918
934
|
}
|
|
919
935
|
|
|
920
936
|
|
|
937
|
+
|
|
938
|
+
export class SubEmitterSystem {
|
|
939
|
+
|
|
940
|
+
particleSystem?: ParticleSystem;
|
|
941
|
+
emitProbability: number = 1;
|
|
942
|
+
properties?: number;
|
|
943
|
+
type?: SubEmitterType;
|
|
944
|
+
|
|
945
|
+
_deserialize(context: Context, _gameObject: GameObject) {
|
|
946
|
+
const ps = this.particleSystem;
|
|
947
|
+
if (ps && !(ps instanceof ParticleSystem) && typeof ps["guid"] === "string") {
|
|
948
|
+
this.particleSystem = GameObject.findByGuid(ps["guid"], context.scene) as ParticleSystem;
|
|
949
|
+
}
|
|
950
|
+
}
|
|
951
|
+
}
|