summaryrefslogtreecommitdiff
path: root/game/network
diff options
context:
space:
mode:
authorDan Goodliffe <dan@randomdan.homeip.net>2026-03-11 20:45:05 +0000
committerDan Goodliffe <dan@randomdan.homeip.net>2026-03-11 20:45:05 +0000
commitc403a71564def731f4d3b80d6ff63f08aa3c7ea3 (patch)
treee4302316295639da9a2d10181c498986c8806754 /game/network
parentAdd missing typename exporting base::value_type from InstanceVertices (diff)
downloadilt-c403a71564def731f4d3b80d6ff63f08aa3c7ea3.tar.bz2
ilt-c403a71564def731f4d3b80d6ff63f08aa3c7ea3.tar.xz
ilt-c403a71564def731f4d3b80d6ff63f08aa3c7ea3.zip
Reuse vertex array objects for common structures with DSA
Slashes the number of VAOs required and the amount of setup required.
Diffstat (limited to 'game/network')
-rw-r--r--game/network/rail.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/game/network/rail.cpp b/game/network/rail.cpp
index 13d5ef5..e8cc1b6 100644
--- a/game/network/rail.cpp
+++ b/game/network/rail.cpp
@@ -138,6 +138,7 @@ RailLink::vehiclePositionOffset() const
template<> NetworkLinkHolder<RailLinkStraight>::NetworkLinkHolder()
{
+ glDebugScope _ {0};
vao.configure()
.addAttribs<RailLinkStraight::Vertex, &RailLinkStraight::Vertex::a, &RailLinkStraight::Vertex::b,
&RailLinkStraight::Vertex::rotation, &RailLinkStraight::Vertex::textureRepeats>(0);
@@ -145,6 +146,7 @@ template<> NetworkLinkHolder<RailLinkStraight>::NetworkLinkHolder()
template<> NetworkLinkHolder<RailLinkCurve>::NetworkLinkHolder()
{
+ glDebugScope _ {0};
vao.configure()
.addAttribs<RailLinkCurve::Vertex, &RailLinkCurve::Vertex::a, &RailLinkCurve::Vertex::b,
&RailLinkCurve::Vertex::c, &RailLinkCurve::Vertex::textureRepeats, &RailLinkCurve::Vertex::aangle,
@@ -170,7 +172,7 @@ void
RailLinks::render(const SceneShader & shader, const Frustum &) const
{
if (!links.empty()) {
- auto _ = glDebugScope(0);
+ glDebugScope _ {0};
texture->bind(0);
glEnable(GL_POLYGON_OFFSET_FILL);
glPolygonOffset(-1, 0);