Add organic S-curve meandering to tile road texture shader

This commit is contained in:
2026-11-09 21:18:44 +01:00
parent a8841f59d9
commit 4685451afe
3 changed files with 75 additions and 10 deletions
+2
View File
@@ -372,6 +372,7 @@ void Tile::paint(QMatrix4x4 p, QVector3D& cameraPosition,QVector3D& cameraUpDire
float rBorder = rCfg ? rCfg->borderWidth : 0.022f;
float rScale = rCfg ? rCfg->textureScale : 2.4f;
float rOpacity = rCfg ? rCfg->opacity : 0.90f;
float rMeander = GameManager::instance().roadConfigs().meanderAmplitude();
QColor col = rCfg ? rCfg->getColor() : QColor("#c49a62");
QColor bCol = rCfg ? rCfg->getBorderColor() : QColor("#6b4b23");
@@ -382,6 +383,7 @@ void Tile::paint(QMatrix4x4 p, QVector3D& cameraPosition,QVector3D& cameraUpDire
m_program->setUniformValue("roadBorderWidth", rBorder);
m_program->setUniformValue("roadTextureScale", rScale);
m_program->setUniformValue("roadOpacity", rOpacity);
m_program->setUniformValue("roadMeander", rMeander);
m_program->setUniformValue("roadColor", QVector3D(col.redF(), col.greenF(), col.blueF()));
m_program->setUniformValue("roadBorderColor", QVector3D(bCol.redF(), bCol.greenF(), bCol.blueF()));
} else {