X-Git-Url: http://git.localhorst.tv/?a=blobdiff_plain;f=src%2Fhud.cpp;h=c43d7849fb3083acb73d44dc52ef4e2265e61483;hb=30d36f3d545617faef76f90c4121d6ed118ba272;hp=7f127f4cb64bb1d90a31061d0b1f2700077aebd0;hpb=41e0223ec090142bf03066f4f5fc1f5005095072;p=blank.git diff --git a/src/hud.cpp b/src/hud.cpp index 7f127f4..c43d784 100644 --- a/src/hud.cpp +++ b/src/hud.cpp @@ -10,6 +10,7 @@ namespace blank { HUD::HUD() : block() +, block_buf() , block_transform(1.0f) , block_visible(false) , crosshair() @@ -18,7 +19,7 @@ HUD::HUD() , far(-100.0f) , projection(glm::ortho(0.0f, 1.0f, 1.0f, 0.0f, near, far)) , view(glm::translate(glm::mat4(1.0f), glm::vec3(-0.5f, -0.5f, 0))) { - block_transform = glm::translate(block_transform, glm::vec3(35.0f, 80.0f, 0.0f)); + block_transform = glm::translate(block_transform, glm::vec3(50.0f, 50.0f, 0.0f)); block_transform = glm::scale(block_transform, glm::vec3(50.0f)); block_transform = glm::rotate(block_transform, 3.5f, glm::vec3(1.0f, 0.0f, 0.0f)); block_transform = glm::rotate(block_transform, 0.85f, glm::vec3(0.0f, 1.0f, 0.0f)); @@ -27,6 +28,9 @@ HUD::HUD() { -10.0f, 0.0f, 0.0f }, { 10.0f, 0.0f, 0.0f }, { 0.0f, -10.0f, 0.0f }, { 0.0f, 10.0f, 0.0f }, }); + crosshair.indices = std::vector({ + 0, 1, 2, 3 + }); crosshair.colors.resize(4, { 10.0f, 10.0f, 10.0f }); crosshair.Invalidate(); } @@ -43,8 +47,9 @@ void HUD::Viewport(float x, float y, float width, float height) { void HUD::Display(const BlockType &type) { - block.Clear(); - type.FillModel({ 0.0f, 0.0f, 0.0f }, block); + block_buf.Clear(); + type.FillModel(block_buf); + block.Update(block_buf); block_visible = type.visible; }