SDL3とOpenGLを使用したC++ゲーム制作記録50

2025/05/07

・今日の作業内容

 三人称カメラの処理作成(完成)

 三人称用の追従オブジェクトの回転処理(完成)

 三人称用の移動処理作成(未完成)

・三人称カメラの処理作成(完成)

 まず昨日までのカメラの挙動でまずばねの要素を排除。あのタイプのカメラには

 不要と判断し削除。そしてカメラがX軸に回転した時におかしな部分に注目する

 原因が分かり修正。原因としてはカメラの位置、注目を決める"CreateLookAt"に

 問題があった。カメラのLookAtを決める時ワールド座標の上方向を取得し

 カメラの平行移動を行う部分で外積で求めた新しいカメラのupを使わず

 ワールド座標のupを使っていたことが原因だった。その部分を直すと

 ちゃんとカメラがオブジェクトの原点に注目するようになった。

・三人称用の追従オブジェクトの回転処理(完成)

 次にカメラの処理が正しく動いたら回転の処理も正しく動くようになった。

 しかしスケルトンメッシュの読み込みの問題(下記に記載)

 があり正しく回転しているかは分からないのでまた明日も作業を続けていく。

・三人称用の移動処理作成(未完成)

 最後に移動部分の処理も修正したけど回転が正しくないこともありまだ正しく

 動いていない。これも明日作業を行っていく。

・問題点

 今回の三人称用の追従オブジェクトの回転処理を作成している時に

 スケルトンメッシュのz方向の向きが逆に読み込まれていることに気が付いた。

 僕の設計上は+z方向がオブジェクトの正面、-zがオブジェクトの後ろと考えて

 いた。しかし今回それが逆ということが分かった。

 一応モデル読み込み時に左手座標系に調整する処理をしていたがそれでも

 このような問題が出たのでまた改めて確認していく。

以上

・明日の予定

 三人称用のオブジェクトの回転処理修正

 三人称用のオブジェクトの移動処理修正

 モデル読み込み時のxyzの読み込み方向を修正

・今日の成果物

youtu.be