summaryrefslogtreecommitdiffstats
path: root/glow/src/program.rs
diff options
context:
space:
mode:
authorLibravatar Richard <richardsoncusto@gmail.com>2021-11-11 01:10:47 -0300
committerLibravatar Richard <richardsoncusto@gmail.com>2022-01-19 17:40:17 -0300
commite31566d430093fb084da2e7f4f4ed1b66326edef (patch)
tree328c599dd2d62a32e17e95e792c74054d822537e /glow/src/program.rs
parentafdf3e799a7610444208c9568a7cf7531d0c2ef3 (diff)
downloadiced-e31566d430093fb084da2e7f4f4ed1b66326edef.tar.gz
iced-e31566d430093fb084da2e7f4f4ed1b66326edef.tar.bz2
iced-e31566d430093fb084da2e7f4f4ed1b66326edef.zip
Improve shader version selection
Diffstat (limited to '')
-rw-r--r--glow/src/program.rs5
1 files changed, 5 insertions, 0 deletions
diff --git a/glow/src/program.rs b/glow/src/program.rs
index 601f9ce6..13676c70 100644
--- a/glow/src/program.rs
+++ b/glow/src/program.rs
@@ -3,6 +3,7 @@ use glow::HasContext;
pub unsafe fn create(
gl: &glow::Context,
shader_sources: &[(u32, &str)],
+ attributes: &[(u32, &str)],
) -> <glow::Context as HasContext>::Program {
let program = gl.create_program().expect("Cannot create program");
@@ -25,6 +26,10 @@ pub unsafe fn create(
shaders.push(shader);
}
+ for (i, name) in attributes {
+ gl.bind_attrib_location(program, *i, name);
+ }
+
gl.link_program(program);
if !gl.get_program_link_status(program) {
panic!("{}", gl.get_program_info_log(program));