category icon
2021-01-11
JavaScript - Cannon.js

Cannon.js のオブジェクトが停止したことを検知する (Sleep状態検知)

Cannon.js
0.6.2
profile
hikaru
Software Developer / DIY'er
ts
// world内でのスリープ状態を有効
world.allowSleep = true;

// 物理演算オブジェクトをセットアップ
const sphereBody = new CANNON.Body({ mass: 1 });
sphereBody.allowSleep = true;     // このオブジェクトのスリープを有効
sphereBody.sleepSpeedLimit = 0.5; // スリープ状態にする速度閾値を指定する
sphereBody.sleepTimeLimit = 1;    // sleepy状態からsleep状態に移行するまでの秒数

// sleepy状態へ移行した際のイベントハンドラ
sphereBody.addEventListener("sleepy", function () {
    console.log("The sphere is feeling sleepy...");
});

// sleep状態へ移行した際のイベントハンドラ
sphereBody.addEventListener("sleep", function () {
    console.log("The sphere fell asleep!");
});

参考リンク