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

2025/06/23

・今日の作業内容

 的の位置をUIのレーダーに描画

 FPSとTPSでUIを修正

 UnityのGetComponentに似た機能追加

・的の位置をUIのレーダーに描画

 まずUI部分の修正を行うために的のUIを数だけ描画するようにした。

 処理の変更内容としては今までBaseScene内にゲームのキャンバス情報があり

 そこから的にUIを描画するためのコンポーネントを追加する流れで描画を行っていた

 ただそれだとキャンバスがシーンすべてで固定されてしまい、使い勝手悪いため

 シーン内のすべてのオブジェクトからTargetComponentを持つオブジェクトを探して

 自動で情報の追加、削除を行うシステムを作成した。型としてはActorで作成した。

 これでキャンバスでもどこでもこのシステムを実行するとシーン内のオブジェクト

 からTargetComponentのオブジェクト情報を見つけることが出来るようになった。

 実際にTargetComponentを見つける処理は下記の画像の関数を使った。

 エラーは出ているけど実行は出来ているので問題なし(多分)

 後はその情報を使ってUIも的の数だけ生成し的のが数が減ったら

 削除する形で処理を作成した。

 ちなみに削除の判定はプレイヤーからの距離が20m(1unit = 1m)以上だったら

 削除するようにした。

 削除するか非表示にするかはまた今後変更していく。

FPSとTPSでUIを修正

 上記の変更を行って全体的にUIの整理や修正を行った。主に整理の方が大きい。

・UnityのGetComponentに似た機能追加

 最後に一連の流れでUnityのGetComponentに似た関数を追加した。

 下記の画像がその関数でテンプレートを使って指定したコンポーネントを取得

 して参照を返す形で取っておりまんまUnityと同じ形で作成した。

以上

・明日の予定

 UIの追加

・今日の成果物

youtu.be