UE4でVR空間にカノジョを錬金する Advent Calendar 2017 23日目の記事です。
12/1~25日までに一人で、UE4を用いてサ○○レッスンとかVR○○ジョっぽいゲームを作って仮想彼女を生み出すことにチャレンジします。
今回、吐くのに必要な回転値を求める計算式を書きます。
呼吸ロジック最後の記事です。
#回転値を求める計算式
21日目に書いてあるのと同様の処理を、吐く用変換して実装します。
ただ、吸うときの処理をそのまま入れるとアニメーションがおかしくなるため、回転値を求めた後、各ボーンのinhaleから引いた値を回転値としてセットします。
GetExhaleRoatatorという関数を作成し、上記に記載した処理を実装しています。
つづいて、吐くアニメーションに必要な回転値を実装します。
[各ボーンの吐くアニメーション最大回転値] * EffectRate * Sin((GetAudioTimeSecounds - StartTime)/(exhale*durationRate))
上記の計算式をBluePrintで書くと以下の通りになります。
胸、首、頭も同様の処理を挟みます。
これで息を吐くアニメーションが出来たと思います。
呼吸アニメーション実装完了です。
#次回
残り2日、何を実装しようかな……。
現在考え中です。