ロックマンDASHの個人製作についての報告。
現在は当たり判定(コリジョン)の構築に難儀している。

フィールドにシャルクルスを出す以上、相手の攻撃は両腕のクローによる格闘戦。

格闘といえばモーションと連動した当たり判定であり、ゲームらしくやると
移動と回転を同時に行う円柱などをクロー攻撃だとして、これがプレイヤーの形状を示す
境界(こちらも移動する)と衝突する時間を数学的に算出する必要がある…。

…ぶっちゃけると私は数学が大の苦手だ。 そのくせ付き合いは長い。
コリジョンで困るようなら物理エンジンっぽい手段が取りやすいUnityなどを使って
開発すべきかもしれないが、まだゲームとしての全容を一度まとめるまで手を出したく
ないという妙な意地が働いている。

いつまでもこういう姿勢が通用するとは思わないが、とりあえずインファイトは
シンプルに球集合の衝突判定として解決していく予定だ。

ここからはシェーダの話。

今作は、ダンジョンマップを移動するゲームにすることになっているため
ダンジョンの壁面にでこぼこした表現を用いる必要を感じていた。
そうなると、擬似的に凹凸(おうとつ)があるように反射をシミュレートする技法を
使うことになる。

これを手軽に実現するためにはHD世代のGPUではもはや標準となって久しい
プログラマブルシェーダを活用していくことになる。
基本的な部分は書籍がいくらでも出回っているので、本の内容が理解できさえすれば
実装は比較的簡単だ。 9月の前半はもっぱらシェーダ周りの勉強をしていた。
bdcam 2013-09-26 01-09-04-901
このスクリーンショットはロックのモデルと壁にバンプマップが適用されている。
以前より画面が暗くなっているが、雰囲気はのちのち調整していく。
よく見れば質感が変わっているのがわかる…と思う。
(ゲームのCGに興味のない人にはわからなくても仕方ないです)

bdcam 2013-09-30 22-33-15-374
こちらはシャルクルス…なのだが、こちらの表現はどうやらうまく行っていない。
バンプ用テクスチャーの解像度が低いと十分な表現が行えないようだ。
シャルクルスのテクスチャーは今時考えられないほど小さい、64 x 64ピクセルの
画像なので見直しの必要を感じる。

bdcam 2013-09-30 22-35-14-829
右側のロックも失敗例。
しかし、シェーダの設定ミスからメタル表現を見つけたともいえる。
今回は使いそうにないが、いじっただけ見た目に変化が出る、という意味では
グラフィクスプログラミングはモチベーション維持に一役買っているのかもしれない。

bdcam 2013-09-30 22-32-16-225
最後の一枚。
全て同じ空間上のスクリーンショットなので見た目に新鮮さがないが
壁面、床面の凹凸感をうっすらと感じられるので載せておく。

今後も引き続きAIやコリジョンの見直し、カメラの地形埋まりをある程度改善して
モーションを含めたグラフィクス用素材を揃えていく予定だ。
ここまでやればそろそろゲームらしくなってくるはず……。

ここ数日で機能面で別の企みも思いついたのだけれど、まず決めた部分を
完成させないと本当に収集が付かなくなる。

いつまでも投げ出さずに続けていられるところが自分の長所であり、短所でもあると思う。
できないことの実現を見込んで取り掛かるのは本当に無謀だ。

本日はここまで。