@p100-web/core-three 100.0.78 → 100.0.80
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/App.d.ts +1 -0
- package/dist/App.d.ts.map +1 -1
- package/dist/App.js +1 -0
- package/dist/App.js.map +1 -1
- package/dist/ThreeCanvas.d.ts +1 -1
- package/dist/ThreeCanvas.d.ts.map +1 -1
- package/dist/ThreeCanvas.js.map +1 -1
- package/dist/ThreeNodeRenderer.d.ts.map +1 -1
- package/dist/ThreeNodeRenderer.js +3 -4
- package/dist/ThreeNodeRenderer.js.map +1 -1
- package/dist/pcomponents/PAnimator.d.ts +6 -5
- package/dist/pcomponents/PAnimator.d.ts.map +1 -1
- package/dist/pcomponents/PAnimator.js +41 -28
- package/dist/pcomponents/PAnimator.js.map +1 -1
- package/dist/pcomponents/PBackground.js +1 -1
- package/dist/pcomponents/PBackground.js.map +1 -1
- package/dist/pcomponents/PCollider.d.ts +11 -4
- package/dist/pcomponents/PCollider.d.ts.map +1 -1
- package/dist/pcomponents/PCollider.js +40 -42
- package/dist/pcomponents/PCollider.js.map +1 -1
- package/dist/pcomponents/PCubeGeometry.js +1 -1
- package/dist/pcomponents/PCubeGeometry.js.map +1 -1
- package/dist/pcomponents/PLight.js +1 -1
- package/dist/pcomponents/PLight.js.map +1 -1
- package/dist/pcomponents/PLightDirectional.js +1 -1
- package/dist/pcomponents/PLightDirectional.js.map +1 -1
- package/dist/pcomponents/PModelGLTF.d.ts +14 -4
- package/dist/pcomponents/PModelGLTF.d.ts.map +1 -1
- package/dist/pcomponents/PModelGLTF.js +30 -8
- package/dist/pcomponents/PModelGLTF.js.map +1 -1
- package/dist/pcomponents/PModelNode.d.ts +15 -0
- package/dist/pcomponents/PModelNode.d.ts.map +1 -0
- package/dist/pcomponents/PModelNode.js +90 -0
- package/dist/pcomponents/PModelNode.js.map +1 -0
- package/dist/pcomponents/PPlaneGeometry.js +1 -1
- package/dist/pcomponents/PPlaneGeometry.js.map +1 -1
- package/dist/pcomponents/PProjectRoot.js +1 -1
- package/dist/pcomponents/PProjectRoot.js.map +1 -1
- package/dist/pcomponents/PSlider.d.ts +5 -3
- package/dist/pcomponents/PSlider.d.ts.map +1 -1
- package/dist/pcomponents/PSlider.js +5 -12
- package/dist/pcomponents/PSlider.js.map +1 -1
- package/dist/pcomponents/PSound.js +2 -2
- package/dist/pcomponents/PSound.js.map +1 -1
- package/dist/pcomponents/PSphereGeometry.js +1 -1
- package/dist/pcomponents/PSphereGeometry.js.map +1 -1
- package/dist/pcomponents/PSprite.js +1 -1
- package/dist/pcomponents/PSprite.js.map +1 -1
- package/dist/pcomponents/PText.js +1 -1
- package/dist/pcomponents/PText.js.map +1 -1
- package/dist/pcomponents.d.ts +1 -0
- package/dist/pcomponents.d.ts.map +1 -1
- package/dist/pcomponents.js +1 -0
- package/dist/pcomponents.js.map +1 -1
- package/dist/three/ColliderObject3D.d.ts +5 -5
- package/dist/three/ColliderObject3D.d.ts.map +1 -1
- package/dist/three/ColliderObject3D.js +25 -75
- package/dist/three/ColliderObject3D.js.map +1 -1
- package/package.json +2 -2
|
@@ -11,91 +11,41 @@ export default class ColliderObject3D extends Object3D {
|
|
|
11
11
|
this.boundingSphere = null;
|
|
12
12
|
this.raycastBox = true;
|
|
13
13
|
this.raycastSphere = true;
|
|
14
|
-
this.collider =
|
|
14
|
+
this.collider = null;
|
|
15
15
|
this.layers.mask = 2;
|
|
16
|
+
this.userData.helper = true;
|
|
17
|
+
this.collider = collider;
|
|
16
18
|
}
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
19
|
+
dispose() {
|
|
20
|
+
this.collider = null;
|
|
21
|
+
}
|
|
22
|
+
show(collider) {
|
|
23
|
+
this.layers.mask = collider.hidden ? 2 : 3;
|
|
21
24
|
}
|
|
22
25
|
hide() {
|
|
23
26
|
this.layers.mask = 0;
|
|
24
27
|
}
|
|
25
|
-
computeBounds() {
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
this.raycastSphere = this.collider.sphere;
|
|
29
|
-
}
|
|
28
|
+
computeBounds(collider) {
|
|
29
|
+
this.raycastBox = collider.box;
|
|
30
|
+
this.raycastSphere = collider.sphere;
|
|
30
31
|
this.boundingBox = null;
|
|
31
32
|
this.boundingSphere = null;
|
|
32
|
-
this.computeBoundingBox();
|
|
33
|
-
this.computeBoundingSphere();
|
|
34
|
-
}
|
|
35
|
-
computeBoundingBox() {
|
|
36
|
-
if (!this.collider)
|
|
37
|
-
return;
|
|
38
|
-
if (this.collider.autoSize) {
|
|
39
|
-
if (this.parent === null)
|
|
40
|
-
return;
|
|
41
|
-
const parent = this.parent;
|
|
42
|
-
if (parent !== null && parent.isMesh && parent.geometry) {
|
|
43
|
-
if (parent.geometry.boundingBox === null) {
|
|
44
|
-
parent.geometry.computeBoundingBox();
|
|
45
|
-
}
|
|
46
|
-
this.boundingBox = parent.geometry.boundingBox;
|
|
47
|
-
}
|
|
48
|
-
else {
|
|
49
|
-
const box = new Box3();
|
|
50
|
-
for (const child of parent.children) {
|
|
51
|
-
if (child === this)
|
|
52
|
-
continue;
|
|
53
|
-
child.traverse((c) => {
|
|
54
|
-
if (c.isMesh && c.geometry) {
|
|
55
|
-
if (c.geometry.boundingBox === null) {
|
|
56
|
-
c.geometry.computeBoundingBox();
|
|
57
|
-
}
|
|
58
|
-
box.union(c.geometry.boundingBox);
|
|
59
|
-
}
|
|
60
|
-
});
|
|
61
|
-
}
|
|
62
|
-
this.boundingBox = box;
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
else {
|
|
66
|
-
const size = this.collider.box_size;
|
|
67
|
-
const box = new Box3(new Vector3(size.x * -0.5, size.y * -0.5, size.z * -0.5), new Vector3(size.x * 0.5, size.y * 0.5, size.z * 0.5));
|
|
68
|
-
this.boundingBox = box;
|
|
69
|
-
}
|
|
33
|
+
this.computeBoundingBox(collider);
|
|
34
|
+
this.computeBoundingSphere(collider);
|
|
70
35
|
}
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
console.error("No bounding box");
|
|
79
|
-
sphere.radius = 1;
|
|
80
|
-
return;
|
|
81
|
-
}
|
|
82
|
-
this.boundingBox.getCenter(center);
|
|
83
|
-
const width = this.boundingBox.max.x - this.boundingBox.min.x;
|
|
84
|
-
const height = this.boundingBox.max.y - this.boundingBox.min.y;
|
|
85
|
-
const depth = this.boundingBox.max.z - this.boundingBox.min.z;
|
|
86
|
-
const radius = Math.max(width, height, depth) * 0.5;
|
|
87
|
-
sphere.center = center;
|
|
88
|
-
sphere.radius = radius;
|
|
89
|
-
this.boundingSphere = sphere;
|
|
90
|
-
}
|
|
91
|
-
else {
|
|
92
|
-
const sphere = new Sphere();
|
|
93
|
-
sphere.radius = this.collider.sphere_radius;
|
|
94
|
-
this.boundingSphere = sphere;
|
|
95
|
-
}
|
|
36
|
+
computeBoundingBox(collider) {
|
|
37
|
+
const halfSize = new Vector3(collider.box_size.x, collider.box_size.y, collider.box_size.z).multiplyScalar(0.5);
|
|
38
|
+
const center = new Vector3(collider.center.x, collider.center.y, collider.center.z);
|
|
39
|
+
const min = center.clone().sub(halfSize);
|
|
40
|
+
const max = center.clone().add(halfSize);
|
|
41
|
+
const bb = new Box3(min, max);
|
|
42
|
+
this.boundingBox = bb;
|
|
96
43
|
}
|
|
97
|
-
|
|
98
|
-
|
|
44
|
+
computeBoundingSphere(collider) {
|
|
45
|
+
const sphere = new Sphere();
|
|
46
|
+
sphere.center = new Vector3(collider.center.x, collider.center.y, collider.center.z);
|
|
47
|
+
sphere.radius = collider.sphere_radius;
|
|
48
|
+
this.boundingSphere = sphere;
|
|
99
49
|
}
|
|
100
50
|
raycast(raycaster, intersects) {
|
|
101
51
|
const matrixWorld = this.matrixWorld;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ColliderObject3D.js","sourceRoot":"","sources":["../../src/three/ColliderObject3D.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,IAAI,EACJ,OAAO,EACP,QAAQ,EACR,GAAG,EAEH,MAAM,EACN,OAAO,GACR,MAAM,OAAO,CAAC;AAEf,MAAM,IAAI,GAAG,IAAI,GAAG,EAAE,CAAC;AACvB,MAAM,OAAO,GAAG,IAAI,MAAM,EAAE,CAAC;AAC7B,MAAM,YAAY,GAAG,IAAI,OAAO,EAAE,CAAC;AACnC,MAAM,cAAc,GAAG,IAAI,OAAO,EAAE,CAAC;AACrC,MAAM,cAAc,GAAG,IAAI,OAAO,EAAE,CAAC;AAErC,MAAM,CAAC,OAAO,OAAO,gBACnB,SAAQ,QAAQ;IAWhB,YAAY,QAAmB;QAC7B,KAAK,EAAE,CAAC;QATV,gBAAW,GAAgB,IAAI,CAAC;QAChC,mBAAc,GAAkB,IAAI,CAAC;QAE7B,eAAU,GAAY,IAAI,CAAC;QAC3B,kBAAa,GAAY,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"ColliderObject3D.js","sourceRoot":"","sources":["../../src/three/ColliderObject3D.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@p100-web/core-three",
|
|
3
3
|
"private": false,
|
|
4
|
-
"version": "100.0.
|
|
4
|
+
"version": "100.0.80",
|
|
5
5
|
"author": "Peter Drugge",
|
|
6
6
|
"license": "ISC",
|
|
7
7
|
"description": "",
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
"typescript": "^5.4.2"
|
|
12
12
|
},
|
|
13
13
|
"peerDependencies": {
|
|
14
|
-
"@p100-web/core": "^100.0.
|
|
14
|
+
"@p100-web/core": "^100.0.80",
|
|
15
15
|
"three": "^0.179.1",
|
|
16
16
|
"troika-three-text": "^0.52.4",
|
|
17
17
|
"@tweenjs/tween.js": "^25.0.0"
|