summaryrefslogtreecommitdiffstats
path: root/glow/src/triangle.rs
diff options
context:
space:
mode:
authorLibravatar Héctor Ramón <hector0193@gmail.com>2022-01-26 13:54:21 +0700
committerLibravatar GitHub <noreply@github.com>2022-01-26 13:54:21 +0700
commit9b3cab82ef3bbc5b8129ac3bacec4011229f0fbc (patch)
treebc9fbd32c8c589bc56d2458bb77bc8293ba8a6bd /glow/src/triangle.rs
parent4aa943cbc63230dfcb995c469ceec9f74e6132e1 (diff)
parent522368e8af6947ea0676f62bf1ae5f68acb2058d (diff)
downloadiced-9b3cab82ef3bbc5b8129ac3bacec4011229f0fbc.tar.gz
iced-9b3cab82ef3bbc5b8129ac3bacec4011229f0fbc.tar.bz2
iced-9b3cab82ef3bbc5b8129ac3bacec4011229f0fbc.zip
Merge pull request #1160 from derezzedex/dev/arm-support
feat: add support to ARM devices (and older hardware)
Diffstat (limited to '')
-rw-r--r--glow/src/triangle.rs27
1 files changed, 18 insertions, 9 deletions
diff --git a/glow/src/triangle.rs b/glow/src/triangle.rs
index 9202bcb2..ae4f83ef 100644
--- a/glow/src/triangle.rs
+++ b/glow/src/triangle.rs
@@ -1,5 +1,5 @@
//! Draw meshes of triangles.
-use crate::program;
+use crate::program::{self, Shader};
use crate::Transformation;
use glow::HasContext;
use iced_graphics::layer;
@@ -21,17 +21,26 @@ pub(crate) struct Pipeline {
}
impl Pipeline {
- pub fn new(gl: &glow::Context) -> Pipeline {
+ pub fn new(
+ gl: &glow::Context,
+ shader_version: &program::Version,
+ ) -> Pipeline {
let program = unsafe {
+ let vertex_shader = Shader::vertex(
+ gl,
+ shader_version,
+ include_str!("shader/common/triangle.vert"),
+ );
+ let fragment_shader = Shader::fragment(
+ gl,
+ shader_version,
+ include_str!("shader/common/triangle.frag"),
+ );
+
program::create(
gl,
- &[
- (glow::VERTEX_SHADER, include_str!("shader/triangle.vert")),
- (
- glow::FRAGMENT_SHADER,
- include_str!("shader/triangle.frag"),
- ),
- ],
+ &[vertex_shader, fragment_shader],
+ &[(0, "i_Position"), (1, "i_Color")],
)
};