-
Notifications
You must be signed in to change notification settings - Fork 0
srcs__renderer__title_screen_cpp
Ishi_eenn edited this page May 19, 2026
·
2 revisions
起動時タイトル画面の回転ブロックと文字描画を構築/描画する。
-
Seg(struct, 行 22) -
Glyph(struct, 行 23)
-
findGlyph: 行 97-101 -
addFace: 行 104-116 -
TitleScreen::buildCube: 行 119-183 -
TitleScreen::appendSeg: 行 186-190 -
TitleScreen::textWidth: 行 192-201 -
TitleScreen::appendText: 行 203-219 -
TitleScreen::buildTextBuffers: 行 222-272 -
TitleScreen::init: 行 275-285 -
TitleScreen::render: 行 288-347 -
TitleScreen::destroy: 行 350-358
- 場所: 行 97-101
- シグネチャ:
static const Glyph* findGlyph(char c) - 内容: このファイルの責務に沿った補助処理を行う。
- 主な呼び出し:
findGlyph()
- 場所: 行 104-116
- シグネチャ:
static void addFace(std::vector<Vertex>& verts, std::vector<uint32_t>& idx, glm::vec3 p0, glm::vec3 p1, glm::vec3 p2, glm::vec3 p3, glm::vec3 n, float u0, float v0, float u1, float v1) - 内容: このファイルの責務に沿った補助処理を行う。
- 主な呼び出し:
size(),push_back()
- 場所: 行 119-183
- シグネチャ:
void TitleScreen::buildCube(const AtlasUV& uv) - 内容: 入力データから描画または処理に使う中間データを構築する。
- 主な呼び出し:
buildCube(),reserve(),order(),Y(),addFace(),V(),X(),Z(),size(),glGenVertexArrays()
手順:
- 計算結果を内部状態、配列、キュー、または対象オブジェクトへ反映する。
- OpenGL/GLFWのAPIを呼び、描画状態やGPUリソースを操作する。
- 場所: 行 186-190
- シグネチャ:
void TitleScreen::appendSeg(float* v, int& cnt, float x0, float y0, float x1, float y1) const - 内容: このファイルの責務に沿った補助処理を行う。
- 場所: 行 192-201
- シグネチャ:
float TitleScreen::textWidth(const char* text, float cw, float gap) const - 内容: このファイルの責務に沿った補助処理を行う。
- 主な呼び出し:
textWidth()
- 場所: 行 203-219
- シグネチャ:
void TitleScreen::appendText(float* v, int& cnt, const char* text, float start_x, float y, float cw, float ch, float gap) const - 内容: このファイルの責務に沿った補助処理を行う。
- 主な呼び出し:
findGlyph(),appendSeg()
- 場所: 行 222-272
- シグネチャ:
void TitleScreen::buildTextBuffers() - 内容: 入力データから描画または処理に使う中間データを構築する。
- 主な呼び出し:
buildTextBuffers(),textWidth(),appendText(),appendSeg(),glGenVertexArrays(),glGenBuffers(),glBindVertexArray(),glBindBuffer(),glBufferData(),glEnableVertexAttribArray()
手順:
- OpenGL/GLFWのAPIを呼び、描画状態やGPUリソースを操作する。
- 場所: 行 275-285
- シグネチャ:
bool TitleScreen::init(TextureAtlas& atlas, Shader& chunk_shader, Shader& hud_shader) - 内容: 必要な状態や外部リソースを初期化する。
- 主な呼び出し:
init(),glId(),srand(),time(),rand(),buildCube(),getUV(),buildTextBuffers()
- 場所: 行 288-347
- シグネチャ:
bool TitleScreen::render(float dt, GLFWwindow* window, int w, int h) - 内容: タイトル画面の回転ブロックと点滅テキストを描画し、開始入力があればtrueを返す。
- 主な呼び出し:
render(),glfwGetKey(),glClearColor(),glClear(),block(),lookAt(),vec3(),perspective(),radians(),model()
手順:
- 経過時間から回転角と点滅量を更新する。
- 3Dブロック表示用のビュー/射影/モデル行列を作る。
- チャンク用シェーダーで回転ブロックを描画する。
- HUD用シェーダーでタイトル文字と開始案内を描画する。
- Enter/Space/クリックなどの開始入力を検出して結果を返す。
- 場所: 行 350-358
- シグネチャ:
void TitleScreen::destroy() - 内容: 確保済みのリソースを解放し、再利用されない状態にする。
- 主な呼び出し:
destroy(),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