Implement tile-targeted road route construction and OpenGL 3D layered road rendering

This commit is contained in:
bart
2026-11-08 22:45:12 +01:00
parent c47673575b
commit 745089df7c
6 changed files with 421 additions and 25 deletions
-17
View File
@@ -24,23 +24,6 @@ enum class ActionMode {
BuildRoad
};
struct TileRoad {
QString roadTypeId = "dirt"; // "dirt", "stone", "rail"
int tileX = 0;
int tileY = 0;
int playerId = 1;
unsigned char connectionMask = 0; // 6 bits: bit e (0..5) is 1 if connected to neighbor across edge e
QVector3D worldPos;
bool hasConnection(int edge) const {
return (connectionMask & (1 << (edge % 6))) != 0;
}
void setConnection(int edge, bool connected) {
if (connected) connectionMask |= (1 << (edge % 6));
else connectionMask &= ~(1 << (edge % 6));
}
};
struct TileImprovement {
QString improvementId; // "farm"
int tileX;