Constructor
new AmmoManager(scene, gravity, subStep)
Parameters:
Name | Type | Default | Description |
---|---|---|---|
scene |
THREE.Scene | Three.js のシーン。 | |
gravity |
THREE.Vector3 | 重力の方向。 | |
subStep |
number | 1 | 物理計算の分割数。1 ステップの経過時間をさらに分割して計算したい場合に利用する。 |
- Source:
Methods
addForce(threeObject, force)
物体を指定した方向に押す。
Parameters:
Name | Type | Description |
---|---|---|
threeObject |
THREE.Object3D | userData.rigidBody に Ammo.btRigidBody を持つ物体。 |
force |
THREE.Vector3 | 力の方向。 |
- Source:
addImpulse(threeObject, impulse)
物体を弾き飛ばす、ジャンプさせるなど瞬間的な力を加える。
Parameters:
Name | Type | Description |
---|---|---|
threeObject |
THREE.Object3D | userData.rigidBody に Ammo.btRigidBody を持つ物体。 |
impulse |
THREE.Vector3 | 力の方向。 |
- Source:
clear()
全ての物体をシーンと物理エンジンから削除する。
- Source:
has(threeObject)
物体が物理エンジンの管理下にあるかどうか。
Parameters:
Name | Type | Description |
---|---|---|
threeObject |
boolean | 検査対象。 |
- Source:
registerObject(threeObject)
物体をシーンと物理エンジンに登録する。CG も表示されるし、物理計算の影響も受けるようになる。
Parameters:
Name | Type | Description |
---|---|---|
threeObject |
THREE.Object3D | userData.rigidBody に Ammo.btRigidBody を持つ物体。 |
- Source:
remove(threeObject)
物理エンジンと 3D シーンから物体を削除する。
Parameters:
Name | Type | Description |
---|---|---|
threeObject |
THREE.Object3D |
- Source:
update(delta)
物理計算を 1 ステップ行う。
userData.movable が true かつ、 userData.linearVelocity もしくは userData.angularVelocity に速度を持つ物体は移動した上で物理エンジンの影響を受ける。
userData.movable が true かつ、 userData.linearVelocity もしくは userData.angularVelocity に速度を持つ物体は移動した上で物理エンジンの影響を受ける。
Parameters:
Name | Type | Description |
---|---|---|
delta |
number | 経過時間。 |
- Source: