Entries

【開発】自動生成ダンジョンの仕様とか

とりあえず実行ファイルの更新から

(実行ファイルは常に最新のものが落ちるので、記事の内容と違うかもしれません)

前回からの変更点
・ユニティちゃんを削除し、FPS視点で操作できるように変更
・足音追加
・叩く音追加

操作方法
・WASDで移動
・スペースでジャンプ
・マウス右ドラッグで視点移動
・クリックでオブジェクトに応じたSE再生

これだけじゃなくて音響も洞窟を歩いているようにしたんだけど、
WebGLが機能をサポートしていないみたいで変わっていない。
う~ん、残念……。
 
本題の自動生成周りの仕様については、オーソドックスなマス移動を基準にアルゴリズムを
組もうと思ったんだけど、素材のサイズ調整がうまくいかなくて諦めた。

というのも、編集はフリーで使えるブレンダーを使ってるんだけど、データを読み込んで吐き出すだけで
座標がずれちゃうし、修正を加えたら法線がおかしくなるしで、かなり厳しい。
何とか一つ修正したんだけど、他のオブジェクトも同様に手を加えるのは時間がかかりすぎてしまう。
なんというか、ユニティの勉強以前にブレンダーの勉強をしないといけない状態で、
とても現実的とは言えない。

そんなわけで、素材のモデルデータを一切修正せずに自動生成する仕様を考えた。

・ある程度3Dマップを手動で構築したテンプレートマップ(部屋)を複数用意する。
・テンプレートマップ同士の繋がりは、扉で遮る。
・扉は最大でも4方向ごとに一つずつしか存在しない。
・扉を触ると通路をすっ飛ばして隣の部屋に移動する。

つまり、小さなダンジョンを一つの部屋とし、その部屋をつなげることで
一つの巨大なダンジョンを作る感じになる。

20180501_001.png

この黒い■が一つの小さなダンジョンで、扉を通じて隣のダンジョンに移動する感じ。
ミニマップには各部屋の繋がりと、トラップやイベントの個数だけ表示し、部屋の構造は書かない。

テンプレートマップを用意する時点で完全な自動生成とは言えないんだけど、
後でいくらでもパターンを増やせるし、何よりクオリティを高くすることが出来る。
後、表示も減らせるから軽くて済む。

他にも細かい部分はいろいろ考えてるんだけど、今の時点で伝わってないと思うので省略w

とりあえず、この方向で実装してみよう……。
 

このエントリーをはてなブックマークに追加 ツイート ラインで送る
Pocketに保存
関連記事

コメント

コメントの投稿

コメントの投稿
管理者にだけ表示を許可する

トラックバック

トラックバック URL
http://nekosuji.com/tb.php/175-741aab07
この記事にトラックバックする(FC2ブログユーザー)

Appendix

プロフィール

 ねこすじ

 Author:ねこすじ
 ねこ一筋 めこすじ です。

アクセスカウンター

 
 (閲覧者数)

Appendix

検索フォーム

 

ブログ項目選択

 
 
 

最新記事

【開発】セーブロード実装 (07/19)

【開発】エンカウント演出実装 (07/11)

【開発】バトルシーンのレイアウトと隊列変更実装 (07/05)

【開発】ダンジョン選択周りの仕様 (06/28)

【ゲーム雑記】昔作ったThe Forestの動画…その後 (06/20)

最新トラックバック