three-base 2.0.10 → 2.0.12
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/FPScontrol.d.ts +1 -0
- package/FPScontrol.js +3 -2
- package/FPScontrol.ts +3 -3
- package/ThreeBase.js +1 -1
- package/ThreeBase.ts +1 -1
- package/package.json +1 -1
- package/threeUtils.d.ts +1 -1
- package/threeUtils.js +2 -2
- package/threeUtils.ts +2 -2
package/FPScontrol.d.ts
CHANGED
package/FPScontrol.js
CHANGED
|
@@ -28,7 +28,8 @@ export default class FPScontrol extends EventDispatcher {
|
|
|
28
28
|
// 是否启用
|
|
29
29
|
enable = false;
|
|
30
30
|
GRAVITY = 30; // 重力
|
|
31
|
-
STEPS_PER_FRAME = 5; //
|
|
31
|
+
STEPS_PER_FRAME = 5; // 每帧碰撞计算的次数
|
|
32
|
+
speed = 1; // 速度
|
|
32
33
|
camera;
|
|
33
34
|
// 世界八叉树对象
|
|
34
35
|
worldOctree = new Octree();
|
|
@@ -91,7 +92,7 @@ export default class FPScontrol extends EventDispatcher {
|
|
|
91
92
|
};
|
|
92
93
|
// 玩家移动控制器
|
|
93
94
|
controls = (deltaTime) => {
|
|
94
|
-
const speedDelta = deltaTime * (this.playerOnFloor ? 25 : 8);
|
|
95
|
+
const speedDelta = deltaTime * (this.playerOnFloor ? 25 : 8) * this.speed;
|
|
95
96
|
if (this.keyStates['KeyW']) {
|
|
96
97
|
this.playerVelocity.add(this.getForwardVector().multiplyScalar(speedDelta));
|
|
97
98
|
}
|
package/FPScontrol.ts
CHANGED
|
@@ -39,8 +39,8 @@ export default class FPScontrol extends EventDispatcher {
|
|
|
39
39
|
enable = false;
|
|
40
40
|
|
|
41
41
|
GRAVITY = 30; // 重力
|
|
42
|
-
STEPS_PER_FRAME = 5; //
|
|
43
|
-
|
|
42
|
+
STEPS_PER_FRAME = 5; // 每帧碰撞计算的次数
|
|
43
|
+
speed = 1; // 速度
|
|
44
44
|
camera!: Camera;
|
|
45
45
|
|
|
46
46
|
// 世界八叉树对象
|
|
@@ -121,7 +121,7 @@ export default class FPScontrol extends EventDispatcher {
|
|
|
121
121
|
|
|
122
122
|
// 玩家移动控制器
|
|
123
123
|
controls = (deltaTime: number) => {
|
|
124
|
-
const speedDelta = deltaTime * (this.playerOnFloor ? 25 : 8);
|
|
124
|
+
const speedDelta = deltaTime * (this.playerOnFloor ? 25 : 8) * this.speed;
|
|
125
125
|
if (this.keyStates['KeyW']) {
|
|
126
126
|
this.playerVelocity.add(this.getForwardVector().multiplyScalar(speedDelta));
|
|
127
127
|
}
|
package/ThreeBase.js
CHANGED
|
@@ -240,7 +240,7 @@ export default class ThreeBase extends EventDispatcher {
|
|
|
240
240
|
// 渲染场景
|
|
241
241
|
render() {
|
|
242
242
|
// 控制器在移动时鼠标不能操作
|
|
243
|
-
this.controls.enabled = (this.controlsPosition.isDone() || this.controlsCenter.isDone());
|
|
243
|
+
// this.controls.enabled = (this.controlsPosition.isDone() || this.controlsCenter.isDone());
|
|
244
244
|
// canvas 没有在页面上面的话 就跳过渲染
|
|
245
245
|
if (!threeUtils.inDocument(this.renderer.domElement)) {
|
|
246
246
|
this.stopRender();
|
package/ThreeBase.ts
CHANGED
|
@@ -287,7 +287,7 @@ export default class ThreeBase extends EventDispatcher {
|
|
|
287
287
|
render() {
|
|
288
288
|
|
|
289
289
|
// 控制器在移动时鼠标不能操作
|
|
290
|
-
this.controls.enabled = (this.controlsPosition.isDone() || this.controlsCenter.isDone());
|
|
290
|
+
// this.controls.enabled = (this.controlsPosition.isDone() || this.controlsCenter.isDone());
|
|
291
291
|
|
|
292
292
|
// canvas 没有在页面上面的话 就跳过渲染
|
|
293
293
|
if (!threeUtils.inDocument(this.renderer.domElement)) {
|
package/package.json
CHANGED
package/threeUtils.d.ts
CHANGED
|
@@ -36,7 +36,7 @@ declare class ThreeUtils extends EventDispatcher {
|
|
|
36
36
|
centerObject3D(object3d: Object3D | BufferGeometry): void;
|
|
37
37
|
center(object3d: Object3D | BufferGeometry): void;
|
|
38
38
|
scaleTo(object3d: Object3D | BufferGeometry, size?: number, key?: Array<"x" | "y" | "z">): void;
|
|
39
|
-
exportGLB(input: Object3D): void;
|
|
39
|
+
exportGLB(input: Object3D, fileName?: string): void;
|
|
40
40
|
getVolume(geometry: BufferGeometry): number;
|
|
41
41
|
signedVolumeOfTriangle(p1: Vector3, p2: Vector3, p3: Vector3): number;
|
|
42
42
|
}
|
package/threeUtils.js
CHANGED
|
@@ -174,7 +174,7 @@ class ThreeUtils extends EventDispatcher {
|
|
|
174
174
|
}
|
|
175
175
|
}
|
|
176
176
|
// 导出 glb
|
|
177
|
-
exportGLB(input) {
|
|
177
|
+
exportGLB(input, fileName = "threeUtils.exportGLB") {
|
|
178
178
|
const gltfExporter = new GLTFExporter();
|
|
179
179
|
gltfExporter.parse(input, (result) => {
|
|
180
180
|
if (result instanceof ArrayBuffer) {
|
|
@@ -182,7 +182,7 @@ class ThreeUtils extends EventDispatcher {
|
|
|
182
182
|
link.style.display = 'none';
|
|
183
183
|
document.body.appendChild(link); // Firefox workaround, see #6594
|
|
184
184
|
link.href = URL.createObjectURL(new Blob([result], { type: 'application/octet-stream' }));
|
|
185
|
-
link.download =
|
|
185
|
+
link.download = `${fileName}.glb`;
|
|
186
186
|
link.click();
|
|
187
187
|
}
|
|
188
188
|
}, (error) => { }, {
|
package/threeUtils.ts
CHANGED
|
@@ -201,7 +201,7 @@ class ThreeUtils extends EventDispatcher {
|
|
|
201
201
|
}
|
|
202
202
|
|
|
203
203
|
// 导出 glb
|
|
204
|
-
exportGLB(input: Object3D) {
|
|
204
|
+
exportGLB(input: Object3D, fileName: string = "threeUtils.exportGLB") {
|
|
205
205
|
const gltfExporter = new GLTFExporter();
|
|
206
206
|
gltfExporter.parse(
|
|
207
207
|
input,
|
|
@@ -211,7 +211,7 @@ class ThreeUtils extends EventDispatcher {
|
|
|
211
211
|
link.style.display = 'none';
|
|
212
212
|
document.body.appendChild(link); // Firefox workaround, see #6594
|
|
213
213
|
link.href = URL.createObjectURL(new Blob([result], { type: 'application/octet-stream' }));
|
|
214
|
-
link.download =
|
|
214
|
+
link.download = `${fileName}.glb`;
|
|
215
215
|
link.click();
|
|
216
216
|
}
|
|
217
217
|
},
|