
ゲーム開発進捗#063
本日の進捗動画(4/27 19:00公開)。
https://youtube.com/shorts/miXuSZQYoYg?feature=share
作っているゲームについてはこちら。
https://youtube.com/playlist?list=PL82HZqwyGYrT2355I0I_YWM886-tz8OBI&si=WQ6F-KDFiZ67MJ2K

壁オブジェクトを実装
車や弾などの進行を阻みます。
テスト走行場を壁でぐるっと囲み、
プレイヤーが領域外に出ないようにする予定です。
一見、簡単に作れそうに見えますが
中々思うようにいきませんでした。

試行錯誤1
当初はOnTriggerEnter2D関数に
衝突後の運動の処理を書いていました。
しかし処理の順番が分からなくなって
エラーが発生しても原因の特定が困難になる
心配がありました。
なのでOnTriggerEnter2D関数は
検知した衝突を配列に入れるのみに限定し、
実際の衝突後の運動は
毎フレーム一括で処理するプログラムで
行うようにしました。

試行錯誤2
また当初は衝突した位置に応じて
車を回転させる予定でしたが、
計算がめちゃくちゃややこしいことになりました。
高校時代、物理は好きだったのですが
力のモーメント周りは飛ばされていたため
回転うんぬんはさっぱりな状態です。
一度は勉強することも考えましたが
既に本作の開発を初めて、それなりに時間が経っており
ゲームの完成が少々危うくなる不安がありました。
そのため一旦は押された方向に動くシンプルな設計にし、
裏で少しずつ勉強をして、変えられそうなら
変える方向にしました。

結果
以上のような様々な仕様変更を行い、
壁オブジェクトが完成しました。
……まだ側面から当たった時の
挙動がおかしいですがね。
コメント
コメント ( 0 )
トラックバックは利用できません。
この記事へのコメントはありません。