@needle-tools/engine 2.52.0-pre → 2.54.2-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 +36 -0
- package/dist/needle-engine.d.ts +3018 -2680
- package/dist/needle-engine.js +439 -439
- package/dist/needle-engine.js.map +4 -4
- package/dist/needle-engine.min.js +41 -41
- package/dist/needle-engine.min.js.map +4 -4
- package/dist/needle-engine.tsbuildinfo +1 -0
- package/lib/engine/codegen/register_types.d.ts +1 -0
- package/lib/engine/codegen/register_types.js +346 -0
- package/lib/engine/codegen/register_types.js.map +1 -0
- package/lib/engine/debug/debug.d.ts +1 -0
- package/lib/engine/debug/debug.js +4 -0
- package/lib/engine/debug/debug.js.map +1 -1
- package/lib/engine/debug/debug_console.js +2 -1
- package/lib/engine/debug/debug_console.js.map +1 -1
- package/lib/engine/debug/debug_overlay.js +3 -1
- package/lib/engine/debug/debug_overlay.js.map +1 -1
- package/lib/engine/engine_components.js +2 -2
- package/lib/engine/engine_components.js.map +1 -1
- package/lib/engine/engine_default_parameters.d.ts +2 -2
- package/lib/engine/engine_element.js +4 -2
- package/lib/engine/engine_element.js.map +1 -1
- package/lib/engine/engine_element_loading.d.ts +1 -0
- package/lib/engine/engine_element_loading.js +17 -6
- package/lib/engine/engine_element_loading.js.map +1 -1
- package/lib/engine/engine_element_overlay.js +4 -2
- package/lib/engine/engine_element_overlay.js.map +1 -1
- package/lib/engine/engine_fileloader.d.ts +3 -0
- package/lib/engine/engine_fileloader.js +8 -0
- package/lib/engine/engine_fileloader.js.map +1 -0
- package/lib/engine/engine_generic_utils.d.ts +1 -0
- package/lib/engine/engine_generic_utils.js +14 -0
- package/lib/engine/engine_generic_utils.js.map +1 -0
- package/lib/engine/engine_input.js +4 -0
- package/lib/engine/engine_input.js.map +1 -1
- package/lib/engine/engine_networking_instantiate.d.ts +1 -1
- package/lib/engine/engine_networking_instantiate.js +3 -0
- package/lib/engine/engine_networking_instantiate.js.map +1 -1
- package/lib/engine/engine_networking_websocket.d.ts +1 -0
- package/lib/engine/engine_networking_websocket.js +1 -1
- package/lib/engine/engine_networking_websocket.js.map +1 -1
- package/lib/engine/engine_serialization_builtin_serializer.d.ts +6 -0
- package/lib/engine/engine_serialization_builtin_serializer.js +35 -7
- package/lib/engine/engine_serialization_builtin_serializer.js.map +1 -1
- package/lib/engine/engine_serialization_core.d.ts +1 -0
- package/lib/engine/engine_serialization_core.js +6 -0
- package/lib/engine/engine_serialization_core.js.map +1 -1
- package/lib/engine/engine_setup.js +2 -2
- package/lib/engine/engine_setup.js.map +1 -1
- package/lib/engine/engine_texture.d.ts +3 -0
- package/lib/engine/engine_texture.js +4 -0
- package/lib/engine/engine_texture.js.map +1 -0
- package/lib/engine/engine_utils.d.ts +1 -1
- package/lib/engine/engine_utils.js +3 -0
- package/lib/engine/engine_utils.js.map +1 -1
- package/lib/engine/extensions/NEEDLE_components.d.ts +1 -1
- package/lib/engine/extensions/NEEDLE_progressive.d.ts +40 -0
- package/lib/engine/extensions/NEEDLE_progressive.js +322 -0
- package/lib/engine/extensions/NEEDLE_progressive.js.map +1 -0
- package/lib/engine/extensions/extensions.js +2 -2
- package/lib/engine/extensions/extensions.js.map +1 -1
- package/lib/engine-components/Camera.js +17 -2
- package/lib/engine-components/Camera.js.map +1 -1
- package/lib/engine-components/GroundProjection.d.ts +2 -1
- package/lib/engine-components/GroundProjection.js +19 -12
- package/lib/engine-components/GroundProjection.js.map +1 -1
- package/lib/engine-components/Light.js +1 -0
- package/lib/engine-components/Light.js.map +1 -1
- package/lib/engine-components/OrbitControls.js +6 -2
- package/lib/engine-components/OrbitControls.js.map +1 -1
- package/lib/engine-components/ParticleSystemModules.d.ts +1 -1
- package/lib/engine-components/ParticleSystemModules.js +48 -44
- package/lib/engine-components/ParticleSystemModules.js.map +1 -1
- package/lib/engine-components/ReflectionProbe.d.ts +1 -1
- package/lib/engine-components/Renderer.d.ts +1 -1
- package/lib/engine-components/Renderer.js +4 -9
- package/lib/engine-components/Renderer.js.map +1 -1
- package/lib/engine-components/Voip.js +13 -4
- package/lib/engine-components/Voip.js.map +1 -1
- package/lib/engine-components/Volume.js +8 -1
- package/lib/engine-components/Volume.js.map +1 -1
- package/lib/engine-components/WebXR.d.ts +2 -2
- package/lib/engine-components/WebXRAvatar.d.ts +1 -1
- package/lib/engine-components/codegen/components.d.ts +99 -95
- package/lib/engine-components/codegen/components.js +99 -95
- package/lib/engine-components/codegen/components.js.map +1 -1
- package/lib/engine-components/export/{GltfExport.d.ts → gltf/GltfExport.d.ts} +2 -2
- package/lib/engine-components/export/{GltfExport.js → gltf/GltfExport.js} +7 -7
- package/lib/engine-components/export/gltf/GltfExport.js.map +1 -0
- package/lib/engine-components/export/usdz/Extension.d.ts +9 -0
- package/lib/engine-components/export/usdz/Extension.js +2 -0
- package/lib/engine-components/export/usdz/Extension.js.map +1 -0
- package/lib/engine-components/export/usdz/USDZExporter.d.ts +26 -0
- package/lib/engine-components/export/usdz/USDZExporter.js +209 -0
- package/lib/engine-components/export/usdz/USDZExporter.js.map +1 -0
- package/lib/engine-components/export/usdz/extensions/Animation.d.ts +44 -0
- package/lib/engine-components/export/usdz/extensions/Animation.js +264 -0
- package/lib/engine-components/export/usdz/extensions/Animation.js.map +1 -0
- package/lib/engine-components/export/usdz/types.d.ts +34 -0
- package/lib/engine-components/export/usdz/types.js +2 -0
- package/lib/engine-components/export/usdz/types.js.map +1 -0
- package/lib/engine-components/export/usdz/utils/animationutils.d.ts +3 -0
- package/lib/engine-components/export/usdz/utils/animationutils.js +46 -0
- package/lib/engine-components/export/usdz/utils/animationutils.js.map +1 -0
- package/lib/engine-components/export/usdz/utils/quicklook.d.ts +2 -0
- package/lib/engine-components/export/usdz/utils/quicklook.js +36 -0
- package/lib/engine-components/export/usdz/utils/quicklook.js.map +1 -0
- package/lib/engine-components/export/usdz/utils/timeutils.d.ts +1 -0
- package/lib/engine-components/export/usdz/utils/timeutils.js +15 -0
- package/lib/engine-components/export/usdz/utils/timeutils.js.map +1 -0
- package/lib/engine-components/ui/Button.js +30 -0
- package/lib/engine-components/ui/Button.js.map +1 -1
- package/lib/engine-components/ui/Graphic.d.ts +2 -0
- package/lib/engine-components/ui/Graphic.js +15 -0
- package/lib/engine-components/ui/Graphic.js.map +1 -1
- package/lib/engine-components/ui/InputField.d.ts +2 -0
- package/lib/engine-components/ui/InputField.js +23 -1
- package/lib/engine-components/ui/InputField.js.map +1 -1
- package/lib/engine-components/ui/Utils.d.ts +4 -1
- package/lib/engine-components/ui/Utils.js +15 -12
- package/lib/engine-components/ui/Utils.js.map +1 -1
- package/lib/engine-components-experimental/Presentation.d.ts +6 -0
- package/lib/engine-components-experimental/Presentation.js +11 -0
- package/lib/engine-components-experimental/Presentation.js.map +1 -0
- package/lib/engine-components-experimental/annotation/LineDrawer.d.ts +18 -0
- package/lib/engine-components-experimental/annotation/LineDrawer.js +175 -0
- package/lib/engine-components-experimental/annotation/LineDrawer.js.map +1 -0
- package/lib/engine-components-experimental/annotation/LinesManager.d.ts +54 -0
- package/lib/engine-components-experimental/annotation/LinesManager.js +155 -0
- package/lib/engine-components-experimental/annotation/LinesManager.js.map +1 -0
- package/lib/engine-components-experimental/networking/PlayerSync.d.ts +26 -0
- package/lib/engine-components-experimental/networking/PlayerSync.js +121 -0
- package/lib/engine-components-experimental/networking/PlayerSync.js.map +1 -0
- package/lib/engine-schemes/vec2.d.ts +10 -0
- package/lib/engine-schemes/vec2.js +26 -0
- package/lib/engine-schemes/vec2.js.map +1 -0
- package/lib/include/three/ARButton.d.ts +3 -0
- package/lib/include/three/ARButton.js +158 -0
- package/lib/include/three/ARButton.js.map +1 -0
- package/lib/include/three/EXT_mesh_gpu_instancing_exporter.d.ts +6 -0
- package/lib/include/three/EXT_mesh_gpu_instancing_exporter.js +46 -0
- package/lib/include/three/EXT_mesh_gpu_instancing_exporter.js.map +1 -0
- package/lib/include/three/VRButton.d.ts +5 -0
- package/lib/include/three/VRButton.js +122 -0
- package/lib/include/three/VRButton.js.map +1 -0
- package/lib/tsconfig.tsbuildinfo +1 -0
- package/package.json +2 -2
- package/src/engine/codegen/register_types.js +212 -204
- package/src/engine/debug/debug.ts +5 -0
- package/src/engine/debug/debug_console.ts +3 -2
- package/src/engine/debug/debug_overlay.ts +3 -1
- package/src/engine/engine_components.ts +2 -2
- package/src/engine/engine_element.ts +4 -2
- package/src/engine/engine_element_loading.ts +13 -6
- package/src/engine/engine_element_overlay.ts +4 -2
- package/src/engine/engine_input.ts +4 -0
- package/src/engine/engine_networking_instantiate.ts +4 -1
- package/src/engine/engine_networking_websocket.ts +3 -1
- package/src/engine/engine_serialization_builtin_serializer.ts +39 -8
- package/src/engine/engine_serialization_core.ts +7 -1
- package/src/engine/engine_setup.ts +2 -2
- package/src/engine/engine_texture.ts +6 -0
- package/src/engine/engine_utils.ts +3 -1
- package/src/engine/extensions/NEEDLE_progressive.ts +357 -0
- package/src/engine/extensions/extensions.ts +2 -2
- package/src/engine-components/Camera.ts +17 -3
- package/src/engine-components/GroundProjection.ts +18 -12
- package/src/engine-components/Light.ts +3 -1
- package/src/engine-components/OrbitControls.ts +7 -3
- package/src/engine-components/ParticleSystemModules.ts +50 -47
- package/src/engine-components/Renderer.ts +6 -10
- package/src/engine-components/Voip.ts +14 -4
- package/src/engine-components/Volume.ts +8 -1
- package/src/engine-components/WebXR.ts +2 -2
- package/src/engine-components/codegen/components.ts +99 -95
- package/src/engine-components/export/{GltfExport.ts → gltf/GltfExport.ts} +7 -7
- package/src/engine-components/export/usdz/Extension.ts +12 -0
- package/src/engine-components/export/usdz/USDZExporter.ts +233 -0
- package/src/engine-components/export/usdz/extensions/Animation.ts +306 -0
- package/src/engine-components/export/usdz/types.ts +39 -0
- package/src/engine-components/export/usdz/utils/animationutils.ts +60 -0
- package/src/engine-components/export/usdz/utils/quicklook.ts +43 -0
- package/src/engine-components/export/usdz/utils/timeutils.ts +20 -0
- package/src/engine-components/ui/Button.ts +8 -8
- package/src/engine-components/ui/Graphic.ts +15 -1
- package/src/engine-components/ui/InputField.ts +25 -2
- package/src/engine-components/ui/Utils.ts +17 -14
- package/src/engine-components-experimental/annotation/LineDrawer.ts +10 -7
- package/src/engine-components-experimental/annotation/LinesManager.ts +6 -6
- package/src/engine-components-experimental/networking/PlayerSync.ts +1 -1
- package/lib/engine/engine_caching.d.ts +0 -0
- package/lib/engine/engine_caching.js +0 -2
- package/lib/engine/engine_caching.js.map +0 -1
- package/lib/engine/extensions/NEEDLE_deferred_texture.d.ts +0 -18
- package/lib/engine/extensions/NEEDLE_deferred_texture.js +0 -194
- package/lib/engine/extensions/NEEDLE_deferred_texture.js.map +0 -1
- package/lib/engine/tests/simulate_avatars.d.ts +0 -0
- package/lib/engine/tests/simulate_avatars.js +0 -3
- package/lib/engine/tests/simulate_avatars.js.map +0 -1
- package/lib/engine-components/NavMesh.d.ts +0 -0
- package/lib/engine-components/NavMesh.js +0 -101
- package/lib/engine-components/NavMesh.js.map +0 -1
- package/lib/engine-components/ParticleSystemBehaviours.d.ts +0 -0
- package/lib/engine-components/ParticleSystemBehaviours.js +0 -2
- package/lib/engine-components/ParticleSystemBehaviours.js.map +0 -1
- package/lib/engine-components/SpringJoint.d.ts +0 -0
- package/lib/engine-components/SpringJoint.js +0 -43
- package/lib/engine-components/SpringJoint.js.map +0 -1
- package/lib/engine-components/export/GltfExport.js.map +0 -1
- package/lib/engine-components/ui/CanvasScaler.d.ts +0 -0
- package/lib/engine-components/ui/CanvasScaler.js +0 -17
- package/lib/engine-components/ui/CanvasScaler.js.map +0 -1
- package/src/engine/dist/engine_three_utils.js +0 -279
- package/src/engine/engine_caching.ts +0 -0
- package/src/engine/extensions/NEEDLE_deferred_texture.ts +0 -217
- package/src/engine/tests/simulate_avatars.ts +0 -2
- package/src/engine-components/NavMesh.ts +0 -117
- package/src/engine-components/ParticleSystemBehaviours.ts +0 -0
- package/src/engine-components/SpringJoint.ts +0 -45
- package/src/engine-components/ui/CanvasScaler.ts +0 -21
|
@@ -14,7 +14,7 @@ import { ControllerEvents, WebXRController } from "../../engine-components/WebXR
|
|
|
14
14
|
class LineState {
|
|
15
15
|
isDrawing: boolean;
|
|
16
16
|
lastHit: Vector3;
|
|
17
|
-
currentHandle: LineHandle;
|
|
17
|
+
currentHandle: LineHandle | null;
|
|
18
18
|
maxDistance: number;
|
|
19
19
|
prevDistance: number;
|
|
20
20
|
lastParent: THREE.Object3D | null;
|
|
@@ -31,7 +31,7 @@ class LineState {
|
|
|
31
31
|
|
|
32
32
|
export class LinesDrawer extends Behaviour {
|
|
33
33
|
|
|
34
|
-
lines
|
|
34
|
+
lines!: LinesManager;
|
|
35
35
|
colliders?: THREE.Object3D[];
|
|
36
36
|
alignToSurface: boolean = true;
|
|
37
37
|
addToPaintedObject: boolean = true;
|
|
@@ -40,7 +40,7 @@ export class LinesDrawer extends Behaviour {
|
|
|
40
40
|
|
|
41
41
|
start() {
|
|
42
42
|
if (!this.lines) {
|
|
43
|
-
this.lines = GameObject.getComponent(this.gameObject, LinesManager)
|
|
43
|
+
this.lines = GameObject.getComponent(this.gameObject, LinesManager)!;
|
|
44
44
|
if (!this.lines)
|
|
45
45
|
this.lines = GameObject.addNewComponent(this.gameObject, LinesManager);
|
|
46
46
|
}
|
|
@@ -72,9 +72,11 @@ export class LinesDrawer extends Behaviour {
|
|
|
72
72
|
if (this.orbit && this._states["mouse"]) {
|
|
73
73
|
if (this.orbit) this.orbit.enabled = !this._states["mouse"].isDrawing;
|
|
74
74
|
}
|
|
75
|
+
if (!this.context.mainCamera) return;
|
|
75
76
|
|
|
76
77
|
const multi = this.context.input.getPointerPressedCount() > 1;
|
|
77
78
|
const sp = this.context.input.getPointerPositionRC(0);
|
|
79
|
+
if (!sp) return;
|
|
78
80
|
LinesDrawer._raycaster.setFromCamera(sp, this.context.mainCamera);
|
|
79
81
|
const ray = LinesDrawer._raycaster.ray;
|
|
80
82
|
this.updateLine("mouse", ray,
|
|
@@ -110,14 +112,15 @@ export class LinesDrawer extends Behaviour {
|
|
|
110
112
|
state.maxDistance = hit.distance;
|
|
111
113
|
}
|
|
112
114
|
pt = hit.point;
|
|
113
|
-
|
|
115
|
+
if (hit.face)
|
|
116
|
+
pt.add(hit.face.normal.multiplyScalar(0.01));
|
|
114
117
|
state.prevDistance = hit.distance;
|
|
115
118
|
}
|
|
116
119
|
else if (state.maxDistance > 0) {
|
|
117
120
|
let dist = state.maxDistance;
|
|
118
121
|
// if we start drawing in thin air:
|
|
119
122
|
if (!state.currentHandle && state.lastHit) {
|
|
120
|
-
const wp = getWorldPosition(this.context.mainCamera);
|
|
123
|
+
const wp = getWorldPosition(this.context.mainCamera!);
|
|
121
124
|
dist = state.lastHit.distanceTo(wp);
|
|
122
125
|
}
|
|
123
126
|
pt = ray.origin.add(ray.direction.multiplyScalar(state.maxDistance));
|
|
@@ -165,8 +168,8 @@ export class LinesDrawer extends Behaviour {
|
|
|
165
168
|
this._raycastOptions.ray = ray;
|
|
166
169
|
const hits = this.context.physics.raycast(this._raycastOptions);
|
|
167
170
|
if (hits.length > 0) {
|
|
168
|
-
for(const hit of hits) {
|
|
169
|
-
if(!GameObject.isActiveInHierarchy(hit.object)) {
|
|
171
|
+
for (const hit of hits) {
|
|
172
|
+
if (!GameObject.isActiveInHierarchy(hit.object)) {
|
|
170
173
|
continue;
|
|
171
174
|
}
|
|
172
175
|
return hit;
|
|
@@ -120,7 +120,7 @@ export class LinesManager extends Behaviour {
|
|
|
120
120
|
|
|
121
121
|
public endLine(handle: LineHandle, send: boolean = true): LineInstanceHandler | undefined {
|
|
122
122
|
const line = this.inFlight[handle.id];
|
|
123
|
-
if (!line) return;
|
|
123
|
+
if (!line) return undefined;
|
|
124
124
|
this.finished.push(line);
|
|
125
125
|
delete this.inFlight[handle.id];
|
|
126
126
|
|
|
@@ -173,16 +173,16 @@ export class LinesManager extends Behaviour {
|
|
|
173
173
|
});
|
|
174
174
|
}
|
|
175
175
|
|
|
176
|
-
private onEnsureLine(lineId: number, parentGuid: string): LineInstanceHandler {
|
|
176
|
+
private onEnsureLine(lineId: number, parentGuid: string): LineInstanceHandler | null {
|
|
177
177
|
if (this.inFlight[lineId]) return this.inFlight[lineId];
|
|
178
178
|
let obj = GameObject.findByGuid(parentGuid, this.context.scene);
|
|
179
179
|
if (!obj) {
|
|
180
|
-
return;
|
|
180
|
+
return null;
|
|
181
181
|
}
|
|
182
182
|
this.internalStartLine(obj as THREE.Object3D, lineId, false);
|
|
183
183
|
return this.inFlight[lineId];
|
|
184
184
|
}
|
|
185
|
-
private internalStartLine(parent: THREE.Object3D, id: number, send: boolean = true, options?: LineOptions): LineHandle {
|
|
185
|
+
private internalStartLine(parent: THREE.Object3D | null | undefined, id: number, send: boolean = true, options?: LineOptions): LineHandle {
|
|
186
186
|
const line = new LineInstanceHandler(parent ?? this.context.scene, options);
|
|
187
187
|
line.id = id;
|
|
188
188
|
this.inFlight[id] = line;
|
|
@@ -197,14 +197,14 @@ export class LinesManager extends Behaviour {
|
|
|
197
197
|
}
|
|
198
198
|
|
|
199
199
|
private sendLineStart(instance: LineInstanceHandler) {
|
|
200
|
-
const parent = instance.mesh
|
|
200
|
+
const parent = instance.mesh!.parent;
|
|
201
201
|
this.context.connection.send("line-start", { id: instance.id, parentGuid: parent ? parent["guid"] : undefined })
|
|
202
202
|
}
|
|
203
203
|
|
|
204
204
|
private sendLineUpdate(instance: LineInstanceHandler, finished: boolean, startIndex?: number, points?: Array<any>) {
|
|
205
205
|
if (instance) {
|
|
206
206
|
const model: LineModel = {
|
|
207
|
-
parentGuid: instance.mesh
|
|
207
|
+
parentGuid: instance.mesh!.parent!["guid"],
|
|
208
208
|
guid: instance.id,
|
|
209
209
|
points: points ? [...points] : instance.points,
|
|
210
210
|
width: instance.material!.lineWidth,
|
|
@@ -47,7 +47,7 @@ export class PlayerSync extends Behaviour {
|
|
|
47
47
|
}
|
|
48
48
|
|
|
49
49
|
private watchTabVisible() {
|
|
50
|
-
window.addEventListener("visibilitychange",
|
|
50
|
+
window.addEventListener("visibilitychange", _ => {
|
|
51
51
|
if (document.visibilityState === "visible") {
|
|
52
52
|
for (let i = PlayerState.all.length - 1; i >= 0; i--) {
|
|
53
53
|
const pl = PlayerState.all[i];
|
|
File without changes
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"engine_caching.js","sourceRoot":"","sources":["../../../engine/engine_caching.ts"],"names":[],"mappings":""}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { Material } from "three";
|
|
2
|
-
import { GLTF, GLTFLoaderPlugin, GLTFParser } from "three/examples/jsm/loaders/GLTFLoader";
|
|
3
|
-
import { SourceIdentifier } from "../engine_types";
|
|
4
|
-
import { Context } from "../engine_setup";
|
|
5
|
-
export declare const EXTENSION_NAME = "NEEDLE_deferred_texture";
|
|
6
|
-
export declare class NEEDLE_deferred_texture implements GLTFLoaderPlugin {
|
|
7
|
-
static assignTextureLOD(context: Context, source: SourceIdentifier | undefined, material: Material, level?: number): void;
|
|
8
|
-
get name(): string;
|
|
9
|
-
private parser;
|
|
10
|
-
private sourceId;
|
|
11
|
-
private context;
|
|
12
|
-
constructor(parser: GLTFParser, sourceId: SourceIdentifier, context: Context);
|
|
13
|
-
private _loading;
|
|
14
|
-
afterRoot(gltf: GLTF): null;
|
|
15
|
-
private static cache;
|
|
16
|
-
private static resolved;
|
|
17
|
-
private static getOrLoadTexture;
|
|
18
|
-
}
|
|
@@ -1,194 +0,0 @@
|
|
|
1
|
-
import { TextureLoader } from "three";
|
|
2
|
-
import { GLTFLoader } from "three/examples/jsm/loaders/GLTFLoader";
|
|
3
|
-
import { addDracoAndKTX2Loaders } from "../engine_loaders";
|
|
4
|
-
import { getParam, getPath } from "../engine_utils";
|
|
5
|
-
export const EXTENSION_NAME = "NEEDLE_deferred_texture";
|
|
6
|
-
const debug = getParam("debugprogressive");
|
|
7
|
-
const debug_toggle_maps = new Map();
|
|
8
|
-
let show_lod0 = false;
|
|
9
|
-
if (debug) {
|
|
10
|
-
window.addEventListener("keyup", evt => {
|
|
11
|
-
if (evt.key === "p") {
|
|
12
|
-
debug_toggle_maps.forEach((map, material) => {
|
|
13
|
-
Object.entries(map).forEach(([key, value]) => {
|
|
14
|
-
if (show_lod0) {
|
|
15
|
-
material[key] = value.lod0;
|
|
16
|
-
}
|
|
17
|
-
else {
|
|
18
|
-
material[key] = value.original;
|
|
19
|
-
}
|
|
20
|
-
material.needsUpdate = true;
|
|
21
|
-
});
|
|
22
|
-
});
|
|
23
|
-
show_lod0 = !show_lod0;
|
|
24
|
-
}
|
|
25
|
-
});
|
|
26
|
-
}
|
|
27
|
-
export class NEEDLE_deferred_texture {
|
|
28
|
-
static assignTextureLOD(context, source, material, level = 0) {
|
|
29
|
-
if (!material)
|
|
30
|
-
return;
|
|
31
|
-
for (let slot of Object.keys(material)) {
|
|
32
|
-
const val = material[slot];
|
|
33
|
-
if (val?.isTexture === true) {
|
|
34
|
-
if (debug)
|
|
35
|
-
console.log("-----------\n", "FIND", material.name, slot, val?.name, val?.userData, val, material);
|
|
36
|
-
NEEDLE_deferred_texture.getOrLoadTexture(context, source, material, slot, val, level).then(t => {
|
|
37
|
-
if (t?.isTexture === true) {
|
|
38
|
-
if (debug)
|
|
39
|
-
console.log("Assign LOD", material.name, slot, t.name, t["guid"], material, "Prev:", val, "Now:", t, "\n--------------");
|
|
40
|
-
material[slot] = t;
|
|
41
|
-
t.needsUpdate = true;
|
|
42
|
-
material.needsUpdate = true;
|
|
43
|
-
if (debug) {
|
|
44
|
-
let debug_map = debug_toggle_maps.get(material);
|
|
45
|
-
if (!debug_map) {
|
|
46
|
-
debug_map = {};
|
|
47
|
-
debug_toggle_maps.set(material, debug_map);
|
|
48
|
-
}
|
|
49
|
-
let entry = debug_map[slot];
|
|
50
|
-
if (!entry) {
|
|
51
|
-
entry = debug_map[slot] = { original: val, lod0: t };
|
|
52
|
-
}
|
|
53
|
-
entry.lod0 = t;
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
});
|
|
57
|
-
}
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
get name() {
|
|
61
|
-
return EXTENSION_NAME;
|
|
62
|
-
}
|
|
63
|
-
parser;
|
|
64
|
-
sourceId;
|
|
65
|
-
context;
|
|
66
|
-
constructor(parser, sourceId, context) {
|
|
67
|
-
this.parser = parser;
|
|
68
|
-
this.sourceId = sourceId;
|
|
69
|
-
this.context = context;
|
|
70
|
-
}
|
|
71
|
-
_loading = [];
|
|
72
|
-
// beforeRoot(): null {
|
|
73
|
-
// console.log("BEFORE ROOT", this.parser);
|
|
74
|
-
// return null;
|
|
75
|
-
// }
|
|
76
|
-
// loadTexture(index: number): Promise<Texture> | null {
|
|
77
|
-
// console.log(index, this._loading);
|
|
78
|
-
// if (this._loading.includes(index)) return null;
|
|
79
|
-
// const textureInfo = this.parser.json.textures[index];
|
|
80
|
-
// if (debug)
|
|
81
|
-
// console.log(index, textureInfo);
|
|
82
|
-
// return null;
|
|
83
|
-
// }
|
|
84
|
-
afterRoot(gltf) {
|
|
85
|
-
if (debug)
|
|
86
|
-
console.log("AFTER", this.sourceId, gltf);
|
|
87
|
-
this.parser.json.textures?.forEach((textureInfo, index) => {
|
|
88
|
-
if (textureInfo?.extensions) {
|
|
89
|
-
const ext = textureInfo?.extensions[EXTENSION_NAME];
|
|
90
|
-
if (ext) {
|
|
91
|
-
const prom = this.parser.getDependency("texture", index);
|
|
92
|
-
this._loading.splice(this._loading.indexOf(index), 1);
|
|
93
|
-
prom.then(t => {
|
|
94
|
-
if (debug)
|
|
95
|
-
console.log("register texture", t.name, t.uuid, ext);
|
|
96
|
-
t.userData.deferred = ext;
|
|
97
|
-
NEEDLE_deferred_texture.cache.set(t.uuid, ext);
|
|
98
|
-
});
|
|
99
|
-
}
|
|
100
|
-
}
|
|
101
|
-
});
|
|
102
|
-
return null;
|
|
103
|
-
}
|
|
104
|
-
static cache = new Map();
|
|
105
|
-
static resolved = {};
|
|
106
|
-
static async getOrLoadTexture(context, source, material, slot, current, _level) {
|
|
107
|
-
const key = current.uuid;
|
|
108
|
-
const ext = NEEDLE_deferred_texture.cache.get(key); // || current.userData.deferred;
|
|
109
|
-
if (ext) {
|
|
110
|
-
if (debug)
|
|
111
|
-
console.log(key, ext.uri, ext.guid);
|
|
112
|
-
const uri = getPath(source, ext.uri);
|
|
113
|
-
if (uri.endsWith(".glb") || uri.endsWith(".gltf")) {
|
|
114
|
-
if (!ext.guid) {
|
|
115
|
-
console.warn("missing pointer for glb/gltf texture", ext);
|
|
116
|
-
return null;
|
|
117
|
-
}
|
|
118
|
-
const resolveKey = uri + "_" + ext.guid;
|
|
119
|
-
if (this.resolved[resolveKey]) {
|
|
120
|
-
if (debug)
|
|
121
|
-
console.log("Texture has already been loaded: " + resolveKey, material.name, slot, current.name);
|
|
122
|
-
return this.resolved[resolveKey];
|
|
123
|
-
}
|
|
124
|
-
const loader = new GLTFLoader();
|
|
125
|
-
addDracoAndKTX2Loaders(loader, context);
|
|
126
|
-
if (debug)
|
|
127
|
-
console.log("Load " + uri, material.name, slot, ext.guid);
|
|
128
|
-
const gltf = await loader.loadAsync(uri);
|
|
129
|
-
const parser = gltf.parser;
|
|
130
|
-
if (debug)
|
|
131
|
-
console.log("Loading finished " + uri, material.name, slot, ext.guid);
|
|
132
|
-
let index = -1;
|
|
133
|
-
let found = false;
|
|
134
|
-
for (const tex of gltf.parser.json.textures) {
|
|
135
|
-
index++;
|
|
136
|
-
if (tex?.extensions) {
|
|
137
|
-
const other = tex?.extensions[EXTENSION_NAME];
|
|
138
|
-
if (other?.guid) {
|
|
139
|
-
if (other.guid === ext.guid) {
|
|
140
|
-
found = true;
|
|
141
|
-
break;
|
|
142
|
-
// if (debug)
|
|
143
|
-
// console.log(material.name, slot, "change \"" + current.name + "\" → \"" + tex.name + "\"", uri, index, tex, material);
|
|
144
|
-
// this.resolved[resolveKey] = tex as Texture;
|
|
145
|
-
// return tex;
|
|
146
|
-
}
|
|
147
|
-
}
|
|
148
|
-
}
|
|
149
|
-
}
|
|
150
|
-
if (!found)
|
|
151
|
-
return null;
|
|
152
|
-
// const index = Number.parseInt(ext.pointer.substring("textures/".length));
|
|
153
|
-
const tex = await parser.getDependency("texture", index);
|
|
154
|
-
tex.encoding = current.encoding;
|
|
155
|
-
if (tex) {
|
|
156
|
-
tex.guid = ext.guid;
|
|
157
|
-
}
|
|
158
|
-
this.resolved[resolveKey] = tex;
|
|
159
|
-
if (debug)
|
|
160
|
-
console.log(material.name, slot, "change \"" + current.name + "\" → \"" + tex.name + "\"", uri, index, tex, material, resolveKey);
|
|
161
|
-
return tex;
|
|
162
|
-
}
|
|
163
|
-
else {
|
|
164
|
-
if (debug)
|
|
165
|
-
console.log("Load texture from uri: " + uri);
|
|
166
|
-
const loader = new TextureLoader();
|
|
167
|
-
const loaded = await loader.loadAsync(uri);
|
|
168
|
-
if (loaded && debug) {
|
|
169
|
-
console.log(ext, loaded);
|
|
170
|
-
}
|
|
171
|
-
else
|
|
172
|
-
console.warn("failed loading", uri);
|
|
173
|
-
return loaded;
|
|
174
|
-
}
|
|
175
|
-
// loader.then((h: Texture) => {
|
|
176
|
-
// // console.log(t, h);
|
|
177
|
-
// // t.image = h.image;
|
|
178
|
-
// // // this.context.renderer.copyTextureToTexture(new Vector2(0, 0), h, t);
|
|
179
|
-
// // // console.log(h);
|
|
180
|
-
// // // t.source = h.source;
|
|
181
|
-
// // // t.version++;
|
|
182
|
-
// // t.width = h.width;
|
|
183
|
-
// // t.height = h.height;
|
|
184
|
-
// // t.needsUpdate = true;
|
|
185
|
-
// });
|
|
186
|
-
}
|
|
187
|
-
else {
|
|
188
|
-
if (debug)
|
|
189
|
-
console.warn("unknown uuid", current.name, current.uuid, current);
|
|
190
|
-
}
|
|
191
|
-
return null;
|
|
192
|
-
}
|
|
193
|
-
}
|
|
194
|
-
//# sourceMappingURL=NEEDLE_deferred_texture.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"NEEDLE_deferred_texture.js","sourceRoot":"","sources":["../../../../engine/extensions/NEEDLE_deferred_texture.ts"],"names":[],"mappings":"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"}
|
|
File without changes
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"simulate_avatars.js","sourceRoot":"","sources":["../../../../engine/tests/simulate_avatars.ts"],"names":[],"mappings":";AACA,OAAO"}
|
|
File without changes
|
|
@@ -1,101 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
// import { Behaviour, GameObject } from "./Component";
|
|
3
|
-
// /*
|
|
4
|
-
// import { Pathfinding, PathfindingHelper } from 'three-pathfinding';
|
|
5
|
-
// import * as THREE from 'three';
|
|
6
|
-
// import { mergeBufferGeometries } from 'three/examples/jsm/utils/BufferGeometryUtils'
|
|
7
|
-
// */
|
|
8
|
-
// export class NavMesh extends Behaviour {
|
|
9
|
-
// /*
|
|
10
|
-
// public meshes: THREE.Object3D[] = [];
|
|
11
|
-
// private pathfinding: Pathfinding | null = null;
|
|
12
|
-
// private zones: string[] = [];
|
|
13
|
-
// onEnable(): void {
|
|
14
|
-
// this.pathfinding = new Pathfinding();
|
|
15
|
-
// const ZONE = 'zone';
|
|
16
|
-
// const geometries : THREE.BufferGeometry[] = [];
|
|
17
|
-
// if (this.meshes && this.meshes.length > 0) {
|
|
18
|
-
// for (let i = 0; i < this.meshes.length; i++) {
|
|
19
|
-
// const obj = this.meshes[i] as THREE.Mesh;
|
|
20
|
-
// if (!obj) continue;
|
|
21
|
-
// const geo = obj.geometry;
|
|
22
|
-
// if (!geo) continue;
|
|
23
|
-
// const copy : THREE.BufferGeometry = {...geo};
|
|
24
|
-
// // const copy = geo;
|
|
25
|
-
// const attributesCopy = {...copy.attributes};
|
|
26
|
-
// copy.attributes = attributesCopy;
|
|
27
|
-
// if(attributesCopy.uv2) delete attributesCopy.uv2;
|
|
28
|
-
// // copy.applyMatrix4(obj.matrixWorld);
|
|
29
|
-
// geometries.push(copy);
|
|
30
|
-
// // obj.updateMatrixWorld();
|
|
31
|
-
// // singleGeometry.merge(geo);
|
|
32
|
-
// // console.log(singleGeometry, geo);
|
|
33
|
-
// }
|
|
34
|
-
// }
|
|
35
|
-
// const mesh = mergeBufferGeometries(geometries);
|
|
36
|
-
// const zone = Pathfinding.createZone(mesh);
|
|
37
|
-
// const name = ZONE;
|
|
38
|
-
// this.zones.push(name);
|
|
39
|
-
// this.pathfinding.setZoneData(name, zone);
|
|
40
|
-
// // const target = new THREE.Vector3(2, 0, 2);
|
|
41
|
-
// // const groupID = this.pathfinding.getGroup(ZONE, target);
|
|
42
|
-
// // const path = this.pathfinding.findPath(this.worldPosition, target, ZONE, groupID);
|
|
43
|
-
// // console.log(path, this.pathfinding);
|
|
44
|
-
// }
|
|
45
|
-
// public tryFindPath(from: THREE.Vector3, to: THREE.Vector3): THREE.Vector3[] | null {
|
|
46
|
-
// const zone = this.zones[0];
|
|
47
|
-
// const groupId = this.pathfinding.getGroup(zone, to);
|
|
48
|
-
// const path = this.pathfinding.findPath(from, to, zone, groupId);
|
|
49
|
-
// return path;
|
|
50
|
-
// }
|
|
51
|
-
// */
|
|
52
|
-
// }
|
|
53
|
-
// // import { input } from "../engine/engine_input";
|
|
54
|
-
// import { Physics, RaycastOptions } from "../engine/engine_physics"
|
|
55
|
-
// // import { time } from "../engine/engine_time";
|
|
56
|
-
// // import { scene } from "../engine/engine_setup";
|
|
57
|
-
// import {SyncedTransform} from "./SyncedTransform";
|
|
58
|
-
// export class NavMeshAgent extends Behaviour {
|
|
59
|
-
// /*
|
|
60
|
-
// public navMesh: NavMesh | null = null;
|
|
61
|
-
// private currentPath: THREE.Vector3[] | null = null;
|
|
62
|
-
// private helper : PathfindingHelper | null = null;
|
|
63
|
-
// onEnable(): void {
|
|
64
|
-
// this.helper = new PathfindingHelper();
|
|
65
|
-
// scene.add(this.helper);
|
|
66
|
-
// }
|
|
67
|
-
// update(): void {
|
|
68
|
-
// if (input.mouseClick) {
|
|
69
|
-
// if (this.navMesh) {
|
|
70
|
-
// const from = this.worldPosition;
|
|
71
|
-
// const opts = new RaycastOptions();
|
|
72
|
-
// opts.setMask(RaycastOptions.AllLayers);
|
|
73
|
-
// const hits = Physics.raycast(opts);
|
|
74
|
-
// if (hits.length > 0) {
|
|
75
|
-
// const to = hits[0].point;
|
|
76
|
-
// this.helper.setPlayerPosition(from);
|
|
77
|
-
// this.helper.setTargetPosition(to);
|
|
78
|
-
// this.currentPath = this.navMesh.tryFindPath(from, to);
|
|
79
|
-
// this.helper.setPath(this.currentPath);
|
|
80
|
-
// // console.log(...this.currentPath);
|
|
81
|
-
// const sync = GameObject.getComponent(this.gameObject, SyncedTransform);
|
|
82
|
-
// if(sync) sync.requestOwnership();
|
|
83
|
-
// }
|
|
84
|
-
// }
|
|
85
|
-
// }
|
|
86
|
-
// if (this.currentPath && this.currentPath.length > 0) {
|
|
87
|
-
// const wp = this.worldPosition;
|
|
88
|
-
// const target = this.currentPath[0];
|
|
89
|
-
// this.worldPosition = wp.lerp(target, time.deltaTime*2);
|
|
90
|
-
// this.gameObject.lookAt(target);
|
|
91
|
-
// // const vec = target.clone().sub(wp);
|
|
92
|
-
// // const wr = this.worldQuaternion;
|
|
93
|
-
// // wr.slerp(rot, time.deltaTime*5);
|
|
94
|
-
// // this.worldQuaternion = wr;
|
|
95
|
-
// if (wp.distanceTo(this.currentPath[0]) < 0.1)
|
|
96
|
-
// this.currentPath.shift();
|
|
97
|
-
// }
|
|
98
|
-
// }
|
|
99
|
-
// */
|
|
100
|
-
// }
|
|
101
|
-
//# sourceMappingURL=NavMesh.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"NavMesh.js","sourceRoot":"","sources":["../../../engine-components/NavMesh.ts"],"names":[],"mappings":";AACA,uDAAuD;AACvD,KAAK;AACL,sEAAsE;AACtE,kCAAkC;AAClC,uFAAuF;AACvF,KAAK;AACL,2CAA2C;AAC3C,KAAK;AACL,4CAA4C;AAE5C,sDAAsD;AACtD,oCAAoC;AAEpC,yBAAyB;AAEzB,gDAAgD;AAChD,+BAA+B;AAC/B,0DAA0D;AAC1D,uDAAuD;AACvD,6DAA6D;AAC7D,4DAA4D;AAC5D,sCAAsC;AACtC,4CAA4C;AAC5C,sCAAsC;AACtC,gEAAgE;AAChE,uCAAuC;AACvC,+DAA+D;AAC/D,oDAAoD;AACpD,oEAAoE;AACpE,yDAAyD;AACzD,yCAAyC;AACzC,8CAA8C;AAC9C,gDAAgD;AAChD,uDAAuD;AACvD,gBAAgB;AAChB,YAAY;AACZ,0DAA0D;AAC1D,qDAAqD;AACrD,6BAA6B;AAC7B,iCAAiC;AACjC,oDAAoD;AAEpD,wDAAwD;AACxD,sEAAsE;AACtE,gGAAgG;AAChG,kDAAkD;AAClD,QAAQ;AAER,2FAA2F;AAC3F,sCAAsC;AACtC,+DAA+D;AAC/D,2EAA2E;AAC3E,uBAAuB;AACvB,QAAQ;AACR,SAAS;AACT,IAAI;AAEJ,qDAAqD;AACrD,qEAAqE;AACrE,mDAAmD;AACnD,qDAAqD;AACrD,qDAAqD;AAErD,gDAAgD;AAChD,SAAS;AACT,6CAA6C;AAE7C,0DAA0D;AAC1D,wDAAwD;AAExD,yBAAyB;AACzB,iDAAiD;AACjD,kCAAkC;AAClC,QAAQ;AAER,uBAAuB;AACvB,kCAAkC;AAClC,kCAAkC;AAClC,mDAAmD;AACnD,qDAAqD;AACrD,0DAA0D;AAC1D,sDAAsD;AACtD,yCAAyC;AACzC,gDAAgD;AAChD,2DAA2D;AAC3D,yDAAyD;AACzD,6EAA6E;AAC7E,6DAA6D;AAC7D,2DAA2D;AAE3D,8FAA8F;AAC9F,wDAAwD;AACxD,oBAAoB;AACpB,gBAAgB;AAChB,YAAY;AAEZ,iEAAiE;AAEjE,6CAA6C;AAC7C,kDAAkD;AAClD,sEAAsE;AAEtE,8CAA8C;AAC9C,qDAAqD;AACrD,kDAAkD;AAClD,kDAAkD;AAClD,4CAA4C;AAE5C,4DAA4D;AAC5D,4CAA4C;AAG5C,YAAY;AACZ,QAAQ;AACR,SAAS;AACT,IAAI"}
|
|
File without changes
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ParticleSystemBehaviours.js","sourceRoot":"","sources":["../../../engine-components/ParticleSystemBehaviours.ts"],"names":[],"mappings":""}
|
|
File without changes
|
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
// import { Behaviour, GameObject } from "./Component";
|
|
3
|
-
// import { Rigidbody } from "./RigidBody";
|
|
4
|
-
// import * as CANNON from 'cannon-es'
|
|
5
|
-
// import { Vector3 } from "three";
|
|
6
|
-
// export class SpringJoint extends Behaviour {
|
|
7
|
-
// anchor: Vector3 | null = null;
|
|
8
|
-
// connectedBody: Rigidbody | null = null;
|
|
9
|
-
// connectedAnchor: Vector3 | null = null;
|
|
10
|
-
// spring: number = 10;
|
|
11
|
-
// damper: number = .2;
|
|
12
|
-
// private rb : Rigidbody | null = null;
|
|
13
|
-
// awake(): void {
|
|
14
|
-
// this.rb = GameObject.getComponent(this.gameObject, Rigidbody);
|
|
15
|
-
// if(!this.connectedBody || !this.connectedBody.body || !this.rb || !this.rb.body) return;
|
|
16
|
-
// this.connectedBody.body.mass = Math.min(this.rb.body.mass*.99, this.connectedBody.body.mass);
|
|
17
|
-
// const spring = new CANNON.Spring(this.rb.body, this.connectedBody.body, {
|
|
18
|
-
// // localAnchorA: new CANNON.Vec3(-1, 1, 0),
|
|
19
|
-
// // localAnchorB: new CANNON.Vec3(0, 0, 0),
|
|
20
|
-
// // restLength: -.1,
|
|
21
|
-
// // stiffness: 10,
|
|
22
|
-
// // damping: .2,
|
|
23
|
-
// restLength: 0.01,
|
|
24
|
-
// stiffness: this.spring*.5,
|
|
25
|
-
// damping: this.damper,
|
|
26
|
-
// // localAnchorA: new CANNON.Vec3(this.anchor.x, this.anchor.y, this.anchor.z),
|
|
27
|
-
// // localAnchorB: new CANNON.Vec3(
|
|
28
|
-
// // this.connectedAnchor.x,
|
|
29
|
-
// // this.connectedAnchor.y,
|
|
30
|
-
// // this.connectedAnchor.z
|
|
31
|
-
// // ),
|
|
32
|
-
// });
|
|
33
|
-
// this.context.physics.addPostStepListener(_ => {
|
|
34
|
-
// // const wp = this.connectedBody.worldPosition;
|
|
35
|
-
// // console.log(wp.y, this.connectedBody.body.position.y, this.rb.body.position.y);
|
|
36
|
-
// spring.applyForce();
|
|
37
|
-
// });
|
|
38
|
-
// }
|
|
39
|
-
// update(): void {
|
|
40
|
-
// // console.log(this.worldPosition.y)
|
|
41
|
-
// }
|
|
42
|
-
// }
|
|
43
|
-
//# sourceMappingURL=SpringJoint.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"SpringJoint.js","sourceRoot":"","sources":["../../../engine-components/SpringJoint.ts"],"names":[],"mappings":";AAAA,uDAAuD;AACvD,2CAA2C;AAC3C,sCAAsC;AACtC,mCAAmC;AAEnC,+CAA+C;AAC/C,qCAAqC;AACrC,8CAA8C;AAC9C,8CAA8C;AAC9C,2BAA2B;AAC3B,2BAA2B;AAE3B,6CAA6C;AAE7C,sBAAsB;AACtB,yEAAyE;AACzE,mGAAmG;AACnG,wGAAwG;AACxG,oFAAoF;AACpF,0DAA0D;AAC1D,yDAAyD;AACzD,kCAAkC;AAClC,gCAAgC;AAChC,8BAA8B;AAC9B,gCAAgC;AAChC,yCAAyC;AACzC,oCAAoC;AACpC,6FAA6F;AAC7F,gDAAgD;AAChD,6CAA6C;AAC7C,6CAA6C;AAC7C,4CAA4C;AAC5C,oBAAoB;AACpB,cAAc;AACd,0DAA0D;AAC1D,8DAA8D;AAC9D,iGAAiG;AACjG,mCAAmC;AACnC,cAAc;AACd,QAAQ;AAER,uBAAuB;AACvB,+CAA+C;AAC/C,QAAQ;AACR,IAAI"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"GltfExport.js","sourceRoot":"","sources":["../../../../engine-components/export/GltfExport.ts"],"names":[],"mappings":"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"}
|
|
File without changes
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
// import { serializable } from "../../engine/engine_serialization";
|
|
3
|
-
// import { Behaviour } from "../Component";
|
|
4
|
-
// export class CanvasScaler extends Behaviour {
|
|
5
|
-
// private _dynamicPixelsPerUnit: number = 1;
|
|
6
|
-
// @serializable()
|
|
7
|
-
// get dynamicPixelsPerUnit(): number {
|
|
8
|
-
// return this._dynamicPixelsPerUnit;
|
|
9
|
-
// }
|
|
10
|
-
// private set dynamicPixelsPerUnit(val: number) {
|
|
11
|
-
// this._dynamicPixelsPerUnit = val;
|
|
12
|
-
// }
|
|
13
|
-
// awake() {
|
|
14
|
-
// console.log(this);
|
|
15
|
-
// }
|
|
16
|
-
// }
|
|
17
|
-
//# sourceMappingURL=CanvasScaler.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"CanvasScaler.js","sourceRoot":"","sources":["../../../../engine-components/ui/CanvasScaler.ts"],"names":[],"mappings":";AAAA,oEAAoE;AACpE,4CAA4C;AAG5C,gDAAgD;AAEhD,iDAAiD;AAEjD,sBAAsB;AACtB,2CAA2C;AAC3C,6CAA6C;AAC7C,QAAQ;AAER,sDAAsD;AACtD,4CAA4C;AAC5C,QAAQ;AAER,gBAAgB;AAChB,6BAA6B;AAC7B,QAAQ;AACR,IAAI"}
|