カメラの向いている対象にむけて球が飛ぶように修正したいのですが実際飛ぶ球が左にずれてしまいます。(3つ目の画像)
LineTraceByChannelからカメラ視線の到達点を取得し(1つ目の画像)、球のスポーン地点からカメラ視線の到達点に向けて球を飛ばすようにしているつもりなのですが(2つ目の画像)どのように修正すればよいでしょうか。
本コースではLineTraceByChannelを使ってないので正しいか分かりませんが恐らく回転の計算が間違えてるか、LineTraceByChannel関数はTick関数で実装する方が正しいですが、そうしてないことが原因かと思います。
実装の完成バージョンはFirstPersonリポジトリの4_FirstPerson_To_ThirdPersonブランチでご確認できます。よろしくお願いいたします。
お手本のTPもクロスヘアの左寄りに飛んでいるように見えます。真っすぐクロスヘアの位置に飛ばすにはやはりLineTraceByChannelを使用するのが適していますでしょうか。
tickに移して試してみましたが、弾道に変化はありませんでした。ちなみにTP_Cameraをさらに横にずらすと弾道のずれも同じように広がったため、TraceEndに向けて球を飛ばすという部分がうまくいっていないようです。
解決策があれば教えていただきたいです。
また、お手本の変数GunOffsetについて質問です。
この数値は何を意味していますでしょうか(試しに無効にしてもぱっと見挙動に変化がないように感じられました)
弾は実際に真っすぐに飛んでいますが、ThirdPersonに変更するとカメラ視点が移動するのでクロスヘアの左寄りに飛んでいるように見えると思います。
解決案としてはThirdPersonの場合はクロスヘアの位置を左下に移動するか、Rotation数値を直接入れて設定する方法で解決できると思います。
GunOffsetは弾の発射位置を調整するための変数です。数値を調整すると弾のSpawnPointが変わると思います。