-
Notifications
You must be signed in to change notification settings - Fork 0
srcs__renderer__minimap_cpp
Ishi_eenn edited this page May 19, 2026
·
2 revisions
Worldから周辺地形をサンプリングしてミニマップ画像を作り、HUD上に描画する。
-
Minimap::init: 行 23-65 -
Minimap::update: 行 68-165 -
Minimap::draw: 行 168-245 -
Minimap::destroy: 行 248-255
- 場所: 行 23-65
- シグネチャ:
bool Minimap::init() - 内容: 必要な状態や外部リソースを初期化する。
- 主な呼び出し:
init(),load(),glGenTextures(),glBindTexture(),memset(),glTexImage2D(),glTexParameteri(),glGenVertexArrays(),glGenBuffers(),glBindVertexArray()
- 場所: 行 68-165
- シグネチャ:
void Minimap::update(World& world, float px, float pz, float yaw_deg, float dt) - 内容: プレイヤー周辺の地表ブロックをサンプリングし、色付きピクセルとしてミニマップテクスチャを更新する。
- 主な呼び出し:
update(),abs(),pixel(),floor(),memset(),chunks(),find(),end(),get(),max()
手順:
- プレイヤー移動量や更新間隔から、再生成が必要か判定する。
- 表示範囲のチャンクを調べ、未ロード部分は灰色にする。
- 各列の一番上に見えるブロックを探して色に変換する。
- プレイヤー位置と向きマーカーを描き込む。
- ピクセル配列をOpenGLテクスチャへアップロードする。
- 場所: 行 168-245
- シグネチャ:
void Minimap::draw(Shader& hud_shader, int sw, int sh) - 内容: 更新済みミニマップテクスチャをHUD上に描画する。
- 主な呼び出し:
draw(),ndcX(),ndcY(),glDisable(),glBindBuffer(),glBufferSubData(),glBindVertexArray(),use(),setVec4(),glDrawArrays()
手順:
- 計算結果を内部状態、配列、キュー、または対象オブジェクトへ反映する。
- OpenGL/GLFWのAPIを呼び、描画状態やGPUリソースを操作する。
- 処理結果または成功/失敗を呼び出し元へ返す。
- 場所: 行 248-255
- シグネチャ:
void Minimap::destroy() - 内容: 確保済みのリソースを解放し、再利用されない状態にする。
- 主な呼び出し:
destroy(),glDeleteTextures(),glDeleteVertexArrays(),glDeleteBuffers()
ft_vox 仕様書
- Home
- 概要
- Core
- Player
- World
- Streaming
- Renderer
- srcs/renderer/frustum.cpp
- srcs/renderer/minimap.cpp
- srcs/renderer/renderer.cpp
- srcs/renderer/shader.cpp
- srcs/renderer/skybox.cpp
- srcs/renderer/texture_atlas.cpp
- srcs/renderer/title_screen.cpp
- srcs/renderer/frustum.hpp
- srcs/renderer/minimap.hpp
- srcs/renderer/renderer.hpp
- srcs/renderer/shader.hpp
- srcs/renderer/skybox.hpp
- srcs/renderer/texture_atlas.hpp
- srcs/renderer/title_screen.hpp
- Interfaces
- Shaders
- Build / Docs