構成
No.1 やってみたいと思ったこと
ゲームとかで攻撃時が当たった瞬間だけ少しスローになってっていうのを見たり、最近だとデス・ストランディングを遊んでいて時雨が降って帽子?被るときにスローになったりだとか
そういうの見ててそういう処理みたいの作ってみたいなぁって思って作ってみた。
それで簡単ではあるけどこんな感じなのかなって思って出来上がったのがこれ。
別に今何か作っていたわけでもないのでDxLibで3Dのデバッグ的な感じのプロジェクト引っ張ってそこにスローみたいなのを入れてみた。
ヒット時とかに入れたかったらこうすりゃいいでしょっていうのはある程度考えてあったからとりあえずスローだけでも取り入れてみた。
No.2 やったこと
やったことも単純だし、少しゴリ押し感強いし、正解なんて知らないので独自の妥協案で組み込んだ。
箇条書きにすると
・全部のクラスがインクルードしているファイルに対して、float値の変数(以降:slowValue)を作成して、速度に関する変数に対してslowValueを乗算するようにした。
・BGMに対しては周波数を弄るようにした。ただし、速度と同じようにすると値の変動が激しくなってBGMが酷くなったので、周波数を1/2か3/5くらいまでが最小として調整するようにした。あとこれはどうなんだろうっていう気持ちだけど、BGMの周波数をゆっくり戻すようにすると「ぐわぁ~ん」ってなるから一気に戻すようにした。(例えば:44110→22050→44110)
これは無理やりだし、速度に関するものが増えるたびにslowValueを乗算することを忘れないといけないし、良くないと思ったりした。どうにかしたい。必要になったらもっとちゃんと考えてみる。