
デモを見る(github.io)
ボールが衝突をしながら画面の中を跳ね回ります。この実装では3つ以上のボールが同時にぶつかっていると安定しない、速度が速すぎると衝突せずにすり抜ける、といった問題があります。
XScreenSaverのFluidBallsも同じ挙動をします。
var x, y
for (y = 0; y < canvas.Height; ++y) {
for (x = 0; x < canvas.Width; ++x) {
canvas.setPixel(x, y, brightnessToColor(x ^ y))
}
}
![]() |
黄色はドワーフ(D)、灰色は石(S)、黒は空のセル(_) |
![]() |
Burrow rightのOutcomeを以下に変更した場合 *D*** ***** **_O* ***** ***** |