Categories: サイトツール

三次元ライフゲームwebシミュレーション-空間内でのライフゲームを観察!

ライフゲームを三次元空間に配置し、そのシミュレーションをブラウザ上で実行し、セルの変化が観察できるサイトツールです。

上の埋め込み内でも使えますが、うまく動かない・大きなページで使いたいというときは、元の三次元ライフゲームシミュレーションページへ(新しいタブで開きます)。


\当サイトではリンク広告を利用しています。/

🌱 ライフゲームとは

ライフゲーム(Game of Life)は、イギリスの数学者ジョン・コンウェイ(John Conway)が考案したセル・オートマトン(Cellular Automaton)の一種です。

このゲームでは、各セルが「生」または「死」の状態を持ち、周囲のセルの状態に応じて次の世代での生死が決まります。

平面上でのライフゲームでは、以下のようなルールが一般的です:

  • 生きているセルは、隣接セルが2〜3個生きていれば生存。
  • 死んでいるセルは、隣接セルがちょうど3個生きていれば誕生。

シンプルなルールながら、自己組織的なパターンや複雑な動きを生み出す点で、人工生命の研究やプログラミング教育でも人気があります。


🔷 三次元ライフゲームとは

本ツールは、ライフゲームのルールを三次元空間(x, y, z)に拡張したものです。
つまり、平面の代わりに立方体のグリッド(5×5×5)上で、セルの生死が進化します。

三次元化によって、セルは26方向(上下・左右・前後+斜め方向)に隣接するセルを持ちます。
このシミュレーションでは、次のルールを採用しています:

  • 生きているセルは「5〜6個の隣接セル」が生きていれば生存。
  • 死んでいるセルは「ちょうど5個の隣接セル」が生きていれば誕生。

このルールにより、2次元とは異なる動きや構造が現れ、より立体的な進化の様子を観察できます。


🧭 ツールの使い方

ボタンを押していくだけでライフゲームの観察ができます。

  1. UI構成
    画面左にはセル操作用のUI、右には3D空間でのボクセル表示があります。
    - 各階層(Z軸方向)のセルをクリックして「生(ON)」または「死(OFF)」を設定可能。
    - セルの色は階層ごとに異なり、Z方向の深さを視覚的に把握できます。
  2. 操作ボタン
    - 「ランダム」:グリッドをランダムに初期化します。
    - 「スタート / 停止」:シミュレーションを開始または停止します。
    - 「リセット」:全セルを死に戻します。
  3. 3D操作
    - マウスのドラッグで回転、ホイールで拡大縮小が可能です(orbitControl()による操作)。
    - 立方体枠の中に、生きたセルがボクセルとして表示されます。
  4. シミュレーション進行
    スタート中は一定フレームごとに自動で世代が進み、「世代数」がUIに表示されます。
    全てのセルが死滅すると自動で停止します。

🧩 まとめ

  • ライフゲームは、セルの生死がルールで進化する数学的シミュレーション。
  • 本ツールはその三次元版で、p5.jsによって3Dボクセルとして可視化。
  • 階層ごとのUIで初期配置を編集し、「ランダム」「スタート/停止」「リセット」操作が可能。
  • 教育・研究・アート用途にも応用できる、ブラウザ実行型の立体ライフゲーム。

3Dライフゲーム・シミュレーターは、立体的な生命進化のロジックを直感的に観察できる教育的・視覚的ツールです。
JavaScript(p5.js)とHTMLだけで動作するため、環境構築も不要で、誰でも気軽に試せます。

haccle