30日でゲーム制作チャレンジ:12日目
12日目にやったこと:
・ミニゲーム実装の続き
まず左右移動を修正し、パンケーキを食べる処理も追加した。そしてジャンプをふわふわした動きにしたかったので、思い切ってデフォルトの物理演算を切り、自前で動きを実装することにした。
公式を復習しながらコードかきかき・・・。(もしこれを読んでいる人の中にプログラマー志望の学生がいたら、数学や物理はなんだかんだ言って普通に使うので、授業中は絶対寝ちゃダメだぞと伝えたい。切実に。)
そして動かしてみる。
うん、普通の重力落下よりもふわふわした動きに出来た。
ただ滞空時間がちょっと長すぎるかな?ここも修正しなk・・・
いや、もっと修正すべき点がたった今見つかったな。
どうやら物理演算を切った結果、他の物体との衝突判定すら無視されるようになってしまったようだ。壁抜けぐらいならまだなんとかなるが、他キャラとの衝突すらなくなるのは寂しい。なので物理演算をオンにしたまま動きを制御するパターンに路線変更する必要がありそうだ。
余談:
今使っているC#のようなプログラミング言語には、デザインパターンと呼ばれる「守るべき鉄則」のようなものがある。昔の僕は頭が固かったので、常にそれに従っていたが、だんだん「これは小規模開発においては利点よりも欠点が上回るのではないか」と感じることが増えてきた。なので今はその思想に縛られず、自分が書きやすく読みやすいスタイルで自由に書くことにしている。
↑デザインパターンを丁寧に守ってた頃は、数行~数十行の処理がこんな感じで分散しまくっていた。これによる恩恵もなくはなかったけど、個人的には「面倒・読みにくい」としか感じられなかった。