@needle-tools/engine 2.38.0-pre → 2.38.0-pre.2
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/needle-engine.d.ts +38 -6
- package/dist/needle-engine.js +351 -351
- package/dist/needle-engine.js.map +4 -4
- package/dist/needle-engine.min.js +19 -19
- package/dist/needle-engine.min.js.map +4 -4
- package/lib/engine/engine_physics.d.ts +9 -0
- package/lib/engine/engine_physics.js +34 -14
- package/lib/engine/engine_physics.js.map +1 -1
- package/lib/engine/engine_setup.d.ts +5 -5
- package/lib/engine/engine_setup.js +20 -20
- package/lib/engine/engine_setup.js.map +1 -1
- package/lib/engine/engine_types.d.ts +2 -0
- package/lib/engine/engine_types.js.map +1 -1
- package/lib/engine-components/Camera.d.ts +1 -0
- package/lib/engine-components/Camera.js +7 -1
- package/lib/engine-components/Camera.js.map +1 -1
- package/lib/engine-components/CharacterController.d.ts +3 -0
- package/lib/engine-components/CharacterController.js +13 -1
- package/lib/engine-components/CharacterController.js.map +1 -1
- package/lib/engine-components/Collider.d.ts +0 -1
- package/lib/engine-components/Collider.js +0 -3
- package/lib/engine-components/Collider.js.map +1 -1
- package/lib/engine-components/Joints.d.ts +15 -0
- package/lib/engine-components/Joints.js +42 -0
- package/lib/engine-components/Joints.js.map +1 -0
- package/lib/engine-components/OrbitControls.js +1 -1
- package/lib/engine-components/OrbitControls.js.map +1 -1
- package/lib/engine-components/codegen/components.d.ts +1 -0
- package/lib/engine-components/codegen/components.js +1 -0
- package/lib/engine-components/codegen/components.js.map +1 -1
- package/package.json +2 -2
- package/src/engine/codegen/register_types.js +4 -0
- package/src/engine/engine_physics.ts +44 -17
- package/src/engine/engine_setup.ts +27 -28
- package/src/engine/engine_types.ts +2 -0
- package/src/engine-components/Camera.ts +6 -1
- package/src/engine-components/CharacterController.ts +15 -1
- package/src/engine-components/Collider.ts +0 -4
- package/src/engine-components/Joints.ts +40 -0
- package/src/engine-components/OrbitControls.ts +1 -1
- package/src/engine-components/codegen/components.ts +1 -0
- package/src/include/console/ConsoleReroute.js +79 -0
- package/src/include/draco/draco_decoder.js +48 -0
- package/src/include/draco/draco_decoder.wasm +0 -0
- package/src/include/ktx2/basis_transcoder.js +21 -0
- package/src/include/ktx2/basis_transcoder.wasm +0 -0
- package/src/include/three/ARButton.js +208 -0
- package/src/include/three/DragControls.js +232 -0
- package/src/include/three/EXT_mesh_gpu_instancing_exporter.js +67 -0
- package/src/include/three/VRButton.js +196 -0
- package/src/include/three-mesh-ui-assets/backspace.png +0 -0
- package/src/include/three-mesh-ui-assets/enter.png +0 -0
- package/src/include/three-mesh-ui-assets/shift.png +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Collider.js","sourceRoot":"","sources":["../../../engine-components/Collider.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,0CAA0C,CAAC;AACzE,OAAO,EAAS,IAAI,EAAY,OAAO,EAAE,MAAM,OAAO,CAAA;AAKtD,MAAM,OAAO,QAAS,SAAQ,SAAS;IAEnC,IAAI,UAAU;QACV,OAAO,IAAI,CAAC;IAChB,CAAC;IAGD,iBAAiB,GAAqB,IAAI,CAAC;IAE3C,SAAS,GAAY,KAAK,CAAC;IAG3B,KAAK;QACD,KAAK,CAAC,KAAK,EAAE,CAAC;QACd,IAAI,CAAC,IAAI,CAAC,iBAAiB;YACvB,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,UAAU,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAC;IACjF,CAAC;IAED,KAAK;QACD,IAAI,CAAC,IAAI,CAAC,iBAAiB;YACvB,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,UAAU,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAC;IACjF,CAAC;IAED,QAAQ;QACJ,oDAAoD;QACpD,IAAI,CAAC,IAAI,CAAC,iBAAiB;YACvB,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,UAAU,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAC;IACjF,CAAC;IAED,SAAS;QACL,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IAC1C,CAAC;CAEJ;AA1BG;IADC,aAAa,CAAC,SAAS,CAAC;mDACkB;AAE3C;IADC,aAAa,EAAE;2CACW;AA2B/B,MAAM,OAAO,cAAe,SAAQ,QAAQ;IAGxC,MAAM,GAAW,EAAE,CAAC;IAEpB,MAAM,GAAY,IAAI,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAEvC,QAAQ;QACJ,KAAK,CAAC,QAAQ,EAAE,CAAC;QACjB,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IAC3E,CAAC;CACJ;AARG;IADC,aAAa,EAAE;8CACI;AAEpB;IADC,aAAa,CAAC,OAAO,CAAC;8CACgB;AAQ3C,MAAM,OAAO,WAAY,SAAQ,QAAQ;IAGrC,IAAI,GAAY,IAAI,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAErC,MAAM,GAAY,IAAI,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAEvC,QAAQ;QACJ,KAAK,CAAC,QAAQ,EAAE,CAAC;QACjB,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;IACtE,CAAC;CACJ;AARG;IADC,aAAa,CAAC,OAAO,CAAC;yCACc;AAErC;IADC,aAAa,CAAC,OAAO,CAAC;2CACgB;AAS3C,MAAM,OAAO,YAAa,SAAQ,QAAQ;IAGtC,UAAU,CAAQ;IAElB,MAAM,GAAY,KAAK,CAAC;IAExB,
|
|
1
|
+
{"version":3,"file":"Collider.js","sourceRoot":"","sources":["../../../engine-components/Collider.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { Vector3 } from "three";
|
|
2
|
+
import { Behaviour } from "./Component";
|
|
3
|
+
import { Rigidbody } from "./RigidBody";
|
|
4
|
+
export declare abstract class Joint extends Behaviour {
|
|
5
|
+
connectedBody?: Rigidbody;
|
|
6
|
+
get rigidBody(): Rigidbody | null;
|
|
7
|
+
private _rigidBody;
|
|
8
|
+
connectedAnchor?: Vector3;
|
|
9
|
+
onEnable(): void;
|
|
10
|
+
private create;
|
|
11
|
+
protected abstract createJoint(self: Rigidbody, other: Rigidbody): any;
|
|
12
|
+
}
|
|
13
|
+
export declare class FixedJoint extends Joint {
|
|
14
|
+
protected createJoint(self: Rigidbody, other: Rigidbody): void;
|
|
15
|
+
}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
import { Vector3 } from "three";
|
|
8
|
+
import { serializeable } from "../engine/engine_serialization";
|
|
9
|
+
import { Behaviour } from "./Component";
|
|
10
|
+
import { Rigidbody } from "./RigidBody";
|
|
11
|
+
export class Joint extends Behaviour {
|
|
12
|
+
connectedBody;
|
|
13
|
+
get rigidBody() {
|
|
14
|
+
return this._rigidBody;
|
|
15
|
+
}
|
|
16
|
+
_rigidBody = null;
|
|
17
|
+
connectedAnchor;
|
|
18
|
+
onEnable() {
|
|
19
|
+
if (!this._rigidBody)
|
|
20
|
+
this._rigidBody = this.gameObject.getComponent(Rigidbody);
|
|
21
|
+
if (this.rigidBody && this.connectedBody)
|
|
22
|
+
this.startCoroutine(this.create());
|
|
23
|
+
}
|
|
24
|
+
*create() {
|
|
25
|
+
yield;
|
|
26
|
+
if (this.rigidBody && this.connectedBody)
|
|
27
|
+
this.createJoint(this.rigidBody, this.connectedBody);
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
__decorate([
|
|
31
|
+
serializeable(Rigidbody)
|
|
32
|
+
], Joint.prototype, "connectedBody", void 0);
|
|
33
|
+
__decorate([
|
|
34
|
+
serializeable(Vector3)
|
|
35
|
+
], Joint.prototype, "connectedAnchor", void 0);
|
|
36
|
+
export class FixedJoint extends Joint {
|
|
37
|
+
createJoint(self, other) {
|
|
38
|
+
if (this.connectedAnchor)
|
|
39
|
+
this.context.physics.addFixedJoint(self, other, this.connectedAnchor);
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
//# sourceMappingURL=Joints.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Joints.js","sourceRoot":"","sources":["../../../engine-components/Joints.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAChC,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAC/D,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,MAAM,OAAgB,KAAM,SAAQ,SAAS;IAEzC,aAAa,CAAa;IAE1B,IAAI,SAAS;QACT,OAAO,IAAI,CAAC,UAAU,CAAC;IAC3B,CAAC;IACO,UAAU,GAAqB,IAAI,CAAC;IAI5C,eAAe,CAAW;IAE1B,QAAQ;QACJ,IAAI,CAAC,IAAI,CAAC,UAAU;YAAE,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;QAChF,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,aAAa;YACpC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;IAC3C,CAAC;IAEO,CAAC,MAAM;QACX,KAAK,CAAC;QACN,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,aAAa;YACpC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;IAC7D,CAAC;CAGJ;AAxBG;IADC,aAAa,CAAC,SAAS,CAAC;4CACC;AAS1B;IADC,aAAa,CAAC,OAAO,CAAC;8CACG;AAiB9B,MAAM,OAAO,UAAW,SAAQ,KAAK;IAEvB,WAAW,CAAC,IAAe,EAAE,KAAgB;QACnD,IAAI,IAAI,CAAC,eAAe;YACpB,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;IAC9E,CAAC;CACJ"}
|
|
@@ -188,7 +188,7 @@ export class OrbitControls extends Behaviour {
|
|
|
188
188
|
}
|
|
189
189
|
if (this.lookAtConstraint?.locked)
|
|
190
190
|
this.setFromTargetPosition(0, this.lookAtConstraint01);
|
|
191
|
-
if (this._controls) {
|
|
191
|
+
if (this._controls && !this.context.isInXR) {
|
|
192
192
|
if (this.debugLog)
|
|
193
193
|
this._controls.domElement = this.context.renderer.domElement;
|
|
194
194
|
this._controls.enabled = true;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OrbitControls.js","sourceRoot":"","sources":["../../../engine-components/OrbitControls.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"OrbitControls.js","sourceRoot":"","sources":["../../../engine-components/OrbitControls.ts"],"names":[],"mappings":"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"}
|
|
@@ -38,6 +38,7 @@ export { GridHelper } from "../GridHelper";
|
|
|
38
38
|
export { GroundProjectedEnv } from "../GroundProjection";
|
|
39
39
|
export { Interactable } from "../Interactable";
|
|
40
40
|
export { UsageMarker } from "../Interactable";
|
|
41
|
+
export { FixedJoint } from "../Joints";
|
|
41
42
|
export { Light } from "../Light";
|
|
42
43
|
export { LODModel } from "../LODGroup";
|
|
43
44
|
export { LODGroup } from "../LODGroup";
|
|
@@ -39,6 +39,7 @@ export { GridHelper } from "../GridHelper";
|
|
|
39
39
|
export { GroundProjectedEnv } from "../GroundProjection";
|
|
40
40
|
export { Interactable } from "../Interactable";
|
|
41
41
|
export { UsageMarker } from "../Interactable";
|
|
42
|
+
export { FixedJoint } from "../Joints";
|
|
42
43
|
export { Light } from "../Light";
|
|
43
44
|
export { LODModel } from "../LODGroup";
|
|
44
45
|
export { LODGroup } from "../LODGroup";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components.js","sourceRoot":"","sources":["../../../../engine-components/codegen/components.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"components.js","sourceRoot":"","sources":["../../../../engine-components/codegen/components.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@needle-tools/engine",
|
|
3
|
-
"version": "2.38.0-pre",
|
|
3
|
+
"version": "2.38.0-pre.2",
|
|
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.js",
|
|
6
|
-
"module": "
|
|
6
|
+
"module": "src/needle-engine.ts",
|
|
7
7
|
"type": "module",
|
|
8
8
|
"repository": {
|
|
9
9
|
"type": "git",
|
|
@@ -116,6 +116,9 @@ Interactable[$BuiltInTypeFlag] = true;
|
|
|
116
116
|
import { UsageMarker } from "../../engine-components/Interactable.ts";
|
|
117
117
|
UsageMarker[$BuiltInTypeFlag] = true;
|
|
118
118
|
|
|
119
|
+
import { FixedJoint } from "../../engine-components/Joints.ts";
|
|
120
|
+
FixedJoint[$BuiltInTypeFlag] = true;
|
|
121
|
+
|
|
119
122
|
import { Light } from "../../engine-components/Light.ts";
|
|
120
123
|
Light[$BuiltInTypeFlag] = true;
|
|
121
124
|
|
|
@@ -480,6 +483,7 @@ TypeStore.add("GridHelper", GridHelper);
|
|
|
480
483
|
TypeStore.add("GroundProjectedEnv", GroundProjectedEnv);
|
|
481
484
|
TypeStore.add("Interactable", Interactable);
|
|
482
485
|
TypeStore.add("UsageMarker", UsageMarker);
|
|
486
|
+
TypeStore.add("FixedJoint", FixedJoint);
|
|
483
487
|
TypeStore.add("Light", Light);
|
|
484
488
|
TypeStore.add("LODModel", LODModel);
|
|
485
489
|
TypeStore.add("LODGroup", LODGroup);
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { BasicDepthPacking, Box3, BufferAttribute, BufferGeometry, Camera, Intersection, Layers, LineBasicMaterial, LineSegments, Matrix4, Mesh, NormalAnimationBlendMode, Object3D, Quaternion, Ray, Raycaster, Sphere, Vector2, Vector3 } from 'three'
|
|
1
|
+
import { BasicDepthPacking, Box3, BufferAttribute, BufferGeometry, Camera, Intersection, Layers, LineBasicMaterial, LineSegments, Matrix4, Mesh, NormalAnimationBlendMode, NumberKeyframeTrack, Object3D, Quaternion, Ray, Raycaster, Sphere, Vector2, Vector3 } from 'three'
|
|
2
2
|
import { Context } from './engine_setup';
|
|
3
3
|
import { getParam } from "./engine_utils"
|
|
4
4
|
import { getWorldPosition, getWorldQuaternion, getWorldScale, setWorldPositionXYZ, setWorldQuaternionXYZW } from "./engine_three_utils"
|
|
@@ -7,12 +7,13 @@ import {
|
|
|
7
7
|
ICollider,
|
|
8
8
|
IRigidbody,
|
|
9
9
|
Collision,
|
|
10
|
-
ContactPoint
|
|
10
|
+
ContactPoint,
|
|
11
|
+
Vec3
|
|
11
12
|
} from './engine_types';
|
|
12
13
|
import { InstancingUtil } from './engine_instancing';
|
|
13
14
|
import { foreachComponent } from './engine_gameobject';
|
|
14
15
|
|
|
15
|
-
import RAPIER, { ActiveEvents, Collider, ColliderDesc, EventQueue, RigidBody, RigidBodyType, World } from '@dimforge/rapier3d-compat';
|
|
16
|
+
import RAPIER, { ActiveEvents, Collider, ColliderDesc, EventQueue, JointData, RigidBody, RigidBodyType, World } from '@dimforge/rapier3d-compat';
|
|
16
17
|
import { CollisionDetectionMode } from '../engine/engine_physics.types';
|
|
17
18
|
export type Rapier = typeof RAPIER;
|
|
18
19
|
|
|
@@ -223,13 +224,10 @@ export class Physics {
|
|
|
223
224
|
private collisionHandler?: PhysicsCollisionHandler;
|
|
224
225
|
|
|
225
226
|
|
|
226
|
-
// private rigidbodies: Array<IRigidbody | null> = [];
|
|
227
227
|
private objects: IComponent[] = [];
|
|
228
228
|
private bodies: PhysicsBody[] = [];
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
// private rigidbodyLookup: Map<IRigidbody, IComponent[]> = new Map<IRigidbody, IComponent[]>();
|
|
232
|
-
// private objectLookup: Map<Object3D, IRigidbody> = new Map<Object3D, IRigidbody>();
|
|
229
|
+
|
|
230
|
+
private _meshCache: Map<string, Float32Array> = new Map<string, Float32Array>();
|
|
233
231
|
|
|
234
232
|
|
|
235
233
|
constructor(context: Context) {
|
|
@@ -250,6 +248,10 @@ export class Physics {
|
|
|
250
248
|
this.world = new World(gravity);
|
|
251
249
|
}
|
|
252
250
|
|
|
251
|
+
clearCaches() {
|
|
252
|
+
this._meshCache.clear();
|
|
253
|
+
}
|
|
254
|
+
|
|
253
255
|
addBoxCollider(collider: ICollider, center: Vector3, size: Vector3) {
|
|
254
256
|
const obj = collider.gameObject;
|
|
255
257
|
const scale = getWorldScale(obj, this._tempPosition).multiply(size);
|
|
@@ -268,7 +270,7 @@ export class Physics {
|
|
|
268
270
|
addCapsuleCollider(collider: ICollider, center: Vector3, height: number, radius: number) {
|
|
269
271
|
const obj = collider.gameObject;
|
|
270
272
|
const scale = getWorldScale(obj, this._tempPosition);
|
|
271
|
-
if(debugPhysics) console.log("capsule scale", scale, height, radius);
|
|
273
|
+
if (debugPhysics) console.log("capsule scale", scale, height, radius);
|
|
272
274
|
const desc = ColliderDesc.capsule(height * .5 * scale.y - radius, radius * scale.x);
|
|
273
275
|
this.createCollider(collider, desc, center);
|
|
274
276
|
}
|
|
@@ -288,15 +290,22 @@ export class Physics {
|
|
|
288
290
|
// scaling seems not supported yet https://github.com/dimforge/rapier/issues/243
|
|
289
291
|
const scale = getWorldScale(mesh, this._tempPosition)
|
|
290
292
|
if (Math.abs(scale.x - 1) > 0.0001 || Math.abs(scale.y - 1) > 0.0001 || Math.abs(scale.z - 1) > 0.0001) {
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
293
|
+
const key = geo.uuid + "_" + scale.x + "_" + scale.y + "_" + scale.z + "_" + convex;
|
|
294
|
+
if (this._meshCache.has(key)) {
|
|
295
|
+
positions = this._meshCache.get(key)!;
|
|
296
|
+
}
|
|
297
|
+
else {
|
|
298
|
+
console.warn("Your model is using scaled mesh colliders which is not optimal for performance", mesh.name, Object.assign({}, scale), mesh);
|
|
299
|
+
// showBalloonWarning("Your model is using scaled mesh colliders which is not optimal for performance: " + mesh.name + ", consider using unscaled objects");
|
|
300
|
+
const scaledPositions = new Float32Array(positions.length);
|
|
301
|
+
for (let i = 0; i < positions.length; i += 3) {
|
|
302
|
+
scaledPositions[i] = positions[i] * scale.x;
|
|
303
|
+
scaledPositions[i + 1] = positions[i + 1] * scale.y;
|
|
304
|
+
scaledPositions[i + 2] = positions[i + 2] * scale.z;
|
|
305
|
+
}
|
|
306
|
+
positions = scaledPositions;
|
|
307
|
+
this._meshCache.set(key, scaledPositions);
|
|
298
308
|
}
|
|
299
|
-
positions = scaledPositions;
|
|
300
309
|
}
|
|
301
310
|
|
|
302
311
|
const desc = convex ? ColliderDesc.convexMesh(positions) : ColliderDesc.trimesh(positions, indices);
|
|
@@ -649,6 +658,24 @@ export class Physics {
|
|
|
649
658
|
return mat;
|
|
650
659
|
}
|
|
651
660
|
|
|
661
|
+
private static centerConnectionPos = { x: 0, y: 0, z: 0 };
|
|
662
|
+
private static centerConnectionRot = { x: 0, y: 0, z: 0, w: 1 };
|
|
663
|
+
|
|
664
|
+
addFixedJoint(body1: IRigidbody, body2: IRigidbody, rel: { x: number, y: number, z: number }) {
|
|
665
|
+
if (!this.world) {
|
|
666
|
+
console.error("Physics world not initialized");
|
|
667
|
+
return;
|
|
668
|
+
}
|
|
669
|
+
const b1 = body1[$bodyKey] as RigidBody;
|
|
670
|
+
const b2 = body2[$bodyKey] as RigidBody;
|
|
671
|
+
const rot = body1.worldQuaternion.multiply(body2.worldQuaternion.invert());
|
|
672
|
+
const params = JointData.fixed(
|
|
673
|
+
Physics.centerConnectionPos, Physics.centerConnectionRot,
|
|
674
|
+
rel, rot
|
|
675
|
+
);
|
|
676
|
+
const joint = this.world.createImpulseJoint(params, b1, b2, true);
|
|
677
|
+
console.log("ADD JOINT", joint)
|
|
678
|
+
}
|
|
652
679
|
|
|
653
680
|
}
|
|
654
681
|
|
|
@@ -24,8 +24,8 @@ import { Application } from './engine_application';
|
|
|
24
24
|
import { LightDataRegistry, ILightDataRegistry } from './engine_lightdata';
|
|
25
25
|
import { PlayerViewManager } from './engine_playerview';
|
|
26
26
|
|
|
27
|
-
import { ICamera
|
|
28
|
-
import { destroy } from './engine_gameobject';
|
|
27
|
+
import { ICamera, IComponent, ILight } from "./engine_types"
|
|
28
|
+
import { destroy, foreachComponent } from './engine_gameobject';
|
|
29
29
|
|
|
30
30
|
|
|
31
31
|
const debug = utils.getParam("debugSetup");
|
|
@@ -157,14 +157,14 @@ export class Context {
|
|
|
157
157
|
|
|
158
158
|
get mainCamera(): THREE.Camera | null {
|
|
159
159
|
if (this.mainCameraComponent) {
|
|
160
|
-
const cam = this.mainCameraComponent as
|
|
160
|
+
const cam = this.mainCameraComponent as ICamera;
|
|
161
161
|
if (!cam.cam)
|
|
162
162
|
cam.buildCamera();
|
|
163
163
|
return cam.cam;
|
|
164
164
|
}
|
|
165
165
|
return null;
|
|
166
166
|
}
|
|
167
|
-
mainCameraComponent:
|
|
167
|
+
mainCameraComponent: ICamera | undefined;
|
|
168
168
|
|
|
169
169
|
post_setup_callbacks: Function[] = [];
|
|
170
170
|
pre_update_callbacks: Function[] = [];
|
|
@@ -185,7 +185,7 @@ export class Context {
|
|
|
185
185
|
* @deprecated AssetDataBase is deprecated
|
|
186
186
|
*/
|
|
187
187
|
assets: AssetDatabase;
|
|
188
|
-
mainLight:
|
|
188
|
+
mainLight: ILight | null = null;
|
|
189
189
|
rendererData: RendererData;
|
|
190
190
|
addressables: Addressables;
|
|
191
191
|
lightmaps: ILightDataRegistry;
|
|
@@ -323,9 +323,9 @@ export class Context {
|
|
|
323
323
|
}
|
|
324
324
|
}
|
|
325
325
|
|
|
326
|
-
private _cameraStack:
|
|
326
|
+
private _cameraStack: ICamera[] = [];
|
|
327
327
|
|
|
328
|
-
setCurrentCamera(cam:
|
|
328
|
+
setCurrentCamera(cam: ICamera) {
|
|
329
329
|
if (!cam) return;
|
|
330
330
|
if (!cam.cam) cam.buildCamera(); // < to build camera
|
|
331
331
|
if (!cam.cam) {
|
|
@@ -339,10 +339,10 @@ export class Context {
|
|
|
339
339
|
const camera = cam.cam as THREE.PerspectiveCamera;
|
|
340
340
|
if (camera.isPerspectiveCamera)
|
|
341
341
|
this.updateAspect(camera);
|
|
342
|
-
(this.mainCameraComponent as
|
|
342
|
+
(this.mainCameraComponent as ICamera)?.applyClearFlagsIfIsActiveCamera();
|
|
343
343
|
}
|
|
344
344
|
|
|
345
|
-
removeCamera(cam?:
|
|
345
|
+
removeCamera(cam?: ICamera | null) {
|
|
346
346
|
if (!cam) return;
|
|
347
347
|
const index = this._cameraStack.indexOf(cam);
|
|
348
348
|
if (index >= 0) this._cameraStack.splice(index, 1);
|
|
@@ -468,25 +468,24 @@ export class Context {
|
|
|
468
468
|
}
|
|
469
469
|
|
|
470
470
|
if (!this.mainCamera) {
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
|
|
475
|
-
|
|
476
|
-
|
|
477
|
-
|
|
478
|
-
|
|
479
|
-
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
|
|
485
|
-
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
|
|
489
|
-
// }
|
|
471
|
+
Context._current = this;
|
|
472
|
+
let camera: ICamera | null = null;
|
|
473
|
+
foreachComponent(this.scene, comp => {
|
|
474
|
+
const cam = comp as ICamera;
|
|
475
|
+
if (cam?.isCamera) {
|
|
476
|
+
if (cam.tag === "MainCamera") {
|
|
477
|
+
camera = cam;
|
|
478
|
+
return true;
|
|
479
|
+
}
|
|
480
|
+
else camera = cam;
|
|
481
|
+
}
|
|
482
|
+
return undefined;
|
|
483
|
+
});
|
|
484
|
+
if (camera) {
|
|
485
|
+
this.setCurrentCamera(camera);
|
|
486
|
+
}
|
|
487
|
+
else
|
|
488
|
+
console.error("MISSING camera", this);
|
|
490
489
|
}
|
|
491
490
|
|
|
492
491
|
Context._current = this;
|
|
@@ -40,6 +40,7 @@ export interface IComponent {
|
|
|
40
40
|
get name(): string;
|
|
41
41
|
get layer(): number;
|
|
42
42
|
get destroyed(): boolean;
|
|
43
|
+
get tag() : string;
|
|
43
44
|
|
|
44
45
|
context: any;
|
|
45
46
|
|
|
@@ -83,6 +84,7 @@ export interface IComponent {
|
|
|
83
84
|
|
|
84
85
|
|
|
85
86
|
export declare interface ICamera extends IComponent {
|
|
87
|
+
get isCamera() : boolean;
|
|
86
88
|
applyClearFlagsIfIsActiveCamera(): unknown;
|
|
87
89
|
buildCamera();
|
|
88
90
|
get cam(): Camera;
|
|
@@ -19,6 +19,9 @@ const debug = getParam("debugcam");
|
|
|
19
19
|
|
|
20
20
|
export class Camera extends Behaviour implements ICamera {
|
|
21
21
|
|
|
22
|
+
get isCamera() {
|
|
23
|
+
return true;
|
|
24
|
+
}
|
|
22
25
|
|
|
23
26
|
get aspect(): number {
|
|
24
27
|
if (this._cam instanceof PerspectiveCamera) return this._cam.aspect;
|
|
@@ -91,6 +94,8 @@ export class Camera extends Behaviour implements ICamera {
|
|
|
91
94
|
this._backgroundColor = val.clone();
|
|
92
95
|
}
|
|
93
96
|
else this._backgroundColor.copy(val);
|
|
97
|
+
// set background color to solid if provided color doesnt have any alpha channel
|
|
98
|
+
if(val.alpha === undefined) this._backgroundColor.alpha = 1;
|
|
94
99
|
this.applyClearFlagsIfIsActiveCamera();
|
|
95
100
|
}
|
|
96
101
|
|
|
@@ -122,7 +127,7 @@ export class Camera extends Behaviour implements ICamera {
|
|
|
122
127
|
onEnable(): void {
|
|
123
128
|
if (debug) console.log(this);
|
|
124
129
|
this.buildCamera();
|
|
125
|
-
if (this.tag == "MainCamera") {
|
|
130
|
+
if (this.tag == "MainCamera" || !this.context.mainCameraComponent) {
|
|
126
131
|
this.context.setCurrentCamera(this);
|
|
127
132
|
}
|
|
128
133
|
this.applyClearFlagsIfIsActiveCamera();
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Ray, Vector3 } from "three";
|
|
1
|
+
import { Quaternion, Ray, Vector3 } from "three";
|
|
2
2
|
import { Mathf } from "../engine/engine_math";
|
|
3
3
|
import { serializeable } from "../engine/engine_serialization";
|
|
4
4
|
import { Collision } from "../engine/engine_types";
|
|
@@ -89,11 +89,18 @@ export class CharacterControllerInput extends Behaviour {
|
|
|
89
89
|
@serializeable(Animator)
|
|
90
90
|
animator?: Animator;
|
|
91
91
|
|
|
92
|
+
lookForward: boolean = true;
|
|
93
|
+
|
|
92
94
|
private _currentSpeed: Vector3 = new Vector3(0, 0, 0);
|
|
93
95
|
private _currentAngularSpeed: Vector3 = new Vector3(0, 0, 0);
|
|
94
96
|
|
|
95
97
|
private _temp: Vector3 = new Vector3(0, 0, 0);
|
|
96
98
|
private _jumpCount: number = 0;
|
|
99
|
+
private _currentRotation!: Quaternion;
|
|
100
|
+
|
|
101
|
+
awake(){
|
|
102
|
+
this._currentRotation = new Quaternion();
|
|
103
|
+
}
|
|
97
104
|
|
|
98
105
|
update() {
|
|
99
106
|
|
|
@@ -124,6 +131,13 @@ export class CharacterControllerInput extends Behaviour {
|
|
|
124
131
|
|
|
125
132
|
const rotation = rotateLeft ? 1 : 0 + rotateRight ? -1 : 0;
|
|
126
133
|
this._currentAngularSpeed.y += Mathf.toRadians(rotation * this.rotationSpeed) * this.context.time.deltaTime;
|
|
134
|
+
if (this.lookForward && Math.abs(this._currentAngularSpeed.y) < .01) {
|
|
135
|
+
const forwardVector = this.context.mainCameraComponent!.forward;
|
|
136
|
+
forwardVector.y = 0;
|
|
137
|
+
forwardVector.normalize();
|
|
138
|
+
this._currentRotation.setFromUnitVectors(new Vector3(0, 0, 1), forwardVector);
|
|
139
|
+
this.gameObject.quaternion.slerp(this._currentRotation, this.context.time.deltaTime * 10);
|
|
140
|
+
}
|
|
127
141
|
this.gameObject.rotateY(this._currentAngularSpeed.y);
|
|
128
142
|
|
|
129
143
|
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { Vector3 } from "three";
|
|
2
|
+
import { serializeable } from "../engine/engine_serialization";
|
|
3
|
+
import { Behaviour } from "./Component";
|
|
4
|
+
import { Rigidbody } from "./RigidBody";
|
|
5
|
+
|
|
6
|
+
export abstract class Joint extends Behaviour {
|
|
7
|
+
@serializeable(Rigidbody)
|
|
8
|
+
connectedBody?: Rigidbody;
|
|
9
|
+
|
|
10
|
+
get rigidBody(): Rigidbody | null {
|
|
11
|
+
return this._rigidBody;
|
|
12
|
+
}
|
|
13
|
+
private _rigidBody: Rigidbody | null = null;
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
@serializeable(Vector3)
|
|
17
|
+
connectedAnchor?: Vector3;
|
|
18
|
+
|
|
19
|
+
onEnable() {
|
|
20
|
+
if (!this._rigidBody) this._rigidBody = this.gameObject.getComponent(Rigidbody);
|
|
21
|
+
if (this.rigidBody && this.connectedBody)
|
|
22
|
+
this.startCoroutine(this.create());
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
private *create() {
|
|
26
|
+
yield;
|
|
27
|
+
if (this.rigidBody && this.connectedBody)
|
|
28
|
+
this.createJoint(this.rigidBody, this.connectedBody);
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
protected abstract createJoint(self: Rigidbody, other: Rigidbody);
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
export class FixedJoint extends Joint {
|
|
35
|
+
|
|
36
|
+
protected createJoint(self: Rigidbody, other: Rigidbody) {
|
|
37
|
+
if (this.connectedAnchor)
|
|
38
|
+
this.context.physics.addFixedJoint(self, other, this.connectedAnchor);
|
|
39
|
+
}
|
|
40
|
+
}
|
|
@@ -213,7 +213,7 @@ export class OrbitControls extends Behaviour {
|
|
|
213
213
|
if (this.lookAtConstraint?.locked) this.setFromTargetPosition(0, this.lookAtConstraint01);
|
|
214
214
|
|
|
215
215
|
|
|
216
|
-
if (this._controls) {
|
|
216
|
+
if (this._controls && !this.context.isInXR) {
|
|
217
217
|
if (this.debugLog)
|
|
218
218
|
this._controls.domElement = this.context.renderer.domElement;
|
|
219
219
|
this._controls.enabled = true;
|
|
@@ -38,6 +38,7 @@ export { GridHelper } from "../GridHelper";
|
|
|
38
38
|
export { GroundProjectedEnv } from "../GroundProjection";
|
|
39
39
|
export { Interactable } from "../Interactable";
|
|
40
40
|
export { UsageMarker } from "../Interactable";
|
|
41
|
+
export { FixedJoint } from "../Joints";
|
|
41
42
|
export { Light } from "../Light";
|
|
42
43
|
export { LODModel } from "../LODGroup";
|
|
43
44
|
export { LODGroup } from "../LODGroup";
|