🌵

プロシージャル生成(自動生成) とは

2022/09/02に公開

一言で説明

プロシージャル生成とは、アルゴリズムによって自動的に生み出す技術を指します。

説明

ゲームに登場する多くのものは、人の手で作られれた様々なデータがあります。またそれらは人の手で配置されます。例えば木や草、洞窟といった自然物、家や城といった人工物もそうですし、キャラクターの動き (モーション)も、人の手で丁寧に作られています。

しかし、昨今では膨大なステージの数、めちゃくちゃ広いマップ、あるいは様々な条件下でキャラクターを動かさなくてはならなくなりました。…人の手で作れますが、すべてをカバーするには相応の人員、あるいは時間が必要です。

そういった問題を解決するために、天才的なプログラマーはアルゴリズムによる解決案を生み出しました。その技術は「プロシージャル生成」あるいは「自動生成」と呼ばれます。

「プロシージャル生成」自体は、ゲーム分野おいて様々なところで使われています。例えば以下のものがあります。

  • 不思議のダンジョンシリーズのような「ローグライクゲーム」と呼ばれるゲームにある、ダンジョンの自動生成
  • Minecraftのような「サンドボックスゲーム」にある、マップの自動生成
  • 歩行時に障害物を避けたり、段差を上がったりするモーションの自動生成

「プロシージャル生成」のアルゴリズム

2D迷路の生成
  • 棒倒し法
  • 穴掘り法
  • 壁延ばし法
2Dダンジョンの生成
  • Racanhack
  • Maze
フラクタル / 規則性があるノイズ
  • Value Noise (バリューノイズ)
  • Perlin noise (パーリンノイズ)
  • 中点変位法
植物の生成
  • L-system
植物を植える
  • ハルトン・シークエンス
アニメーション
  • スケルトン・ドリブン・アニメーション

参考

GitHubで編集を提案

Discussion