add recharge

This commit is contained in:
2026-11-10 19:54:00 +01:00
parent ea0eedc0fb
commit 772d4494e8
30 changed files with 1357 additions and 1073 deletions
+7 -8
View File
@@ -9,17 +9,15 @@ struct VertexPN {
};
UnitRenderer::UnitRenderer()
: m_program(nullptr), m_vertexCount(0), m_initialized(false), m_roadBuffersInitialized(false)
: m_program(nullptr), m_vertexCount(0), m_initialized(false),
m_roadVao(), m_roadVbo(), m_roadBuffersInitialized(false)
{
}
UnitRenderer::~UnitRenderer()
{
if (m_program) delete m_program;
if (m_roadBuffersInitialized) {
m_roadVao.destroy();
m_roadVbo.destroy();
}
m_vao.destroy();
}
void UnitRenderer::initialize()
@@ -56,7 +54,6 @@ void UnitRenderer::buildCylinderMesh()
float c2 = std::cos(a2), s2 = std::sin(a2);
// --- Side Quad (2 Triangles) ---
// Tri 1
vertices.push_back({c1, s1, 0.0f, c1, s1, 0.0f});
vertices.push_back({c2, s2, 0.0f, c2, s2, 0.0f});
vertices.push_back({c2, s2, 1.0f, c2, s2, 0.0f});
@@ -96,6 +93,8 @@ void UnitRenderer::buildCylinderMesh()
m_vbo.release();
}
void UnitRenderer::renderRoads(
const std::map<std::pair<int, int>, TileRoad> &roads,
const RoadConfigManager &roadConfigs,
@@ -368,7 +367,7 @@ void UnitRenderer::renderUnits(
const Player *player = players.getPlayer(unit->playerId);
QColor col = player ? player->primaryColor : QColor(200, 200, 200);
// Flash white/red if attacked
// Flash white/red if attacked or damaged
if (unit->attackFlashTimer > 0.0f) {
float f = unit->attackFlashTimer / 0.5f;
col = QColor(
@@ -428,4 +427,4 @@ QPointF UnitRenderer::projectToScreen(
float sy = (1.0f - (ndc.y() + 1.0f) * 0.5f) * viewportH;
return QPointF(sx, sy);
}
}