From 8e6ec5f8205064db3623b4476ab8c32b0a2a71fe Mon Sep 17 00:00:00 2001 From: Josh Holtrop Date: Mon, 22 Jan 2024 19:32:56 -0500 Subject: [PATCH] gltk.program: bind attribute location before linking program --- libs/gltk/gltk/program.d | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/libs/gltk/gltk/program.d b/libs/gltk/gltk/program.d index 1a3abe5..f400ecc 100644 --- a/libs/gltk/gltk/program.d +++ b/libs/gltk/gltk/program.d @@ -230,6 +230,11 @@ class Program(string[string] uniforms = [], int[string] attributes = []) */ public void link() { + static foreach(attribute_name, attribute_location; attributes) + { + glBindAttribLocation(m_id, attribute_location, attribute_name.toStringz()); + } + glLinkProgram(m_id); GLint link_status; @@ -254,10 +259,6 @@ class Program(string[string] uniforms = [], int[string] attributes = []) { mixin("m_uniform_" ~ uniform_name ~ " = glGetUniformLocation(m_id, \"" ~ uniform_name ~ "\");"); } - static foreach(attribute_name, attribute_location; attributes) - { - glBindAttribLocation(m_id, attribute_location, attribute_name.toStringz()); - } } /**