・本日の開発日記。
ようやく3週間ぐらい続けていた背景~カメラワーク用の基地のモデリングが終わり、
本格的にプログラム開始。
イージング関数なるものがあるらしくて、まきゃさんに色々教えて貰って、
カメラワークに組み込んでいたりした。
レイディアントシルバーガンみたいに、ステージに傾斜を掛けた
— そらのちゃん💫 (@Oo_sorano_oO) 2023年5月9日
もっと派手に傾斜した方がいいかなと思ったけど、
ステージの壁が見えてしまって辺になってしまったのでここまでにしてしまった…
4面冒頭はもうこれでいいかな(あと埃とか追加するけど…) pic.twitter.com/3V7vPfAwDq
イージング関数のヘッダー化はこちら
qiita.com こちらのサイトのグラフと関数名が一致している。
Easing.hの先頭に
#include <cmath>
#include <limits>
#include <algorithm>
を追加しないとコンパイルエラー出るかもしれない。
こんな感じで使える。
セットしたい変数 = es.イージング関数<型名>(経過時間, 最大時間(慣例的に1っぽい), 目的地, 現在地);
例)
Easing es;
camera_py = es.OutSine<double>(Flag.event_easing_time_y, 1, 360, -2500);
結構便利で、敵キャラの動きとかにも応用できそうなんで、
ボスの減速処理とかも置き換えていく予定。
そういえばこのカメラワーク対する話、当時なるさんが
「カメラワークは自然な動き方をさせるために計算式作っている」
みたいなことを15年ぐらい前にさらっと言っていたことを思い出した…。
こんなに経ってから重要性を理解するとはなんて理解力なんだ。
あと背景の書き込みが足りていないように思えてきたので、
作っている4面背景全部にちょこちょこ書き足していた。
LEDの蛍光灯を参考にテクスチャのディティールを弄り始めている…
— そらのちゃん💫 (@Oo_sorano_oO) 2023年5月9日
キリの良いところでやめないと永遠に終わらなさそうだけど、もう少しだけ弄りたい pic.twitter.com/sIhCUDbuXX
※映ってないところも書き足してる
4面作業は一旦ここまでにして、そろそろキャラ絵と、
4面以降の敵やボスのモデリングを行う予定。
しかし背景モデリングに3週間以上かかったのに、
プログラムは2日で終わってしまうとは…