Przeglądaj źródła

count sleeping

master
rodzic
commit
d71e4ef553
2 zmienionych plików z 18 dodań i 6 usunięć
  1. +17
    -5
      01.js
  2. +1
    -1
      index.html

+ 17
- 5
01.js Wyświetl plik

@@ -36,25 +36,37 @@ addObjects();
gameLoop();

function setupMatter() {
engine = Matter.Engine.create();
engine = Matter.Engine.create({ enableSleeping: true });
}

function addObjects() {
boxes.push(
new Box(engine.world, 250, 20, 40, 40),
new Box(engine.world, 300, 350, 40, 40),
new Box(engine.world, 320, 70, 40, 40),
new Box(engine.world, 0, 400, 800, 60, { isStatic: true })
new Box(engine.world, 250, 20, 40, 40, { restitution: 0.8 }),
new Box(engine.world, 300, 350, 40, 40, { restitution: 0.8 }),
new Box(engine.world, 320, 70, 40, 40, { restitution: 0.8 }),
new Box(engine.world, 0, 400, 1200, 60, { isStatic: true }),
new Box(engine.world, 260, 50, 40, 40),
new Box(engine.world, 330, 300, 40, 40),
new Box(engine.world, 350, 170, 40, 40),
new Box(engine.world, 160, 150, 40, 40),
new Box(engine.world, 190, 300, 40, 40),
new Box(engine.world, 250, 270, 40, 40),
);
}

function gameLoop() {
// update the physics world
Matter.Engine.update(engine, 1000 / 60);
var sleepingCount = 0;
// update the DOM world
for (let b of boxes) {
b.update();
if (b.physicsBox.isSleeping)
{
sleepingCount += 1;
}
}
console.debug("sleeping count:", sleepingCount);
requestAnimationFrame(() => this.gameLoop());
}


+ 1
- 1
index.html Wyświetl plik

@@ -22,7 +22,7 @@ box {
box-sizing: border-box;
position: absolute;
display: block;
background-color: rgba(45, 188, 232, 0.687);
background-color: red;
transform-origin: 20px 20px;
}



Ładowanie…
Anuluj
Zapisz