Unityで3Dアクションゲームを作っている。
まだ詳細は未定だが、女の子が剣を振ってモンスターを倒すダンジョン探索ゲームにする予定だ。
現在、攻撃ボタンを押すと剣を振るところまでは実装できた。
しかし、ここから先が難しい。
いや、ここに至るまでも相当難しかったが、この先は更に難しい。
具体的に言うと、攻撃時の当たり判定とダメージ処理だ。
剣を振った時に、どのタイミングでどの範囲までが「攻撃が当たった範囲」だとみなすのか。
攻撃が当たった際に、どうやって対象にダメージ計算式を適用するか。
一応簡単なものなら作れたのだが、スマートな実装とは言い難かった。
ヤケクソな実装をすると、後々ゲームの規模が大きくなってきた際に無視できない負債になってしまう。
ひとつの目的に対して実装方法はいくつもあるが、この部分においてはUnityの仕様もあってどの方法もスマートとは言い難く、難航している。
これは、Unity技術者用Slackコミュニティの個人チャンネルに書いた阿鼻叫喚の一部だ。
今までの僕なら、萎えるか落ち込むかしてお蔵入りさせていたかもしれない。
が、今は切磋琢磨しあえる仲間がいて、僕のゲーム作りを応援してくれるパートナーがいる。
俄然、やる気が出てくるというものだ。
深夜テンションでやる気がMAXだが、こういう時になにかを作ってもろくなことにならないので、頑張って気を静めて寝ようと思う。
起きた時に意気消沈していないといいけど。