summaryrefslogtreecommitdiffstats
path: root/glow/src/quad.rs
diff options
context:
space:
mode:
authorLibravatar Bingus <shankern@protonmail.com>2023-07-12 12:23:18 -0700
committerLibravatar Bingus <shankern@protonmail.com>2023-07-12 12:23:18 -0700
commit633f405f3f78bc7f82d2b2061491b0e011137451 (patch)
tree5ebfc1f45d216a5c14a90492563599e6969eab4d /glow/src/quad.rs
parent41836dd80d0534608e7aedfbf2319c540a23de1a (diff)
parent21bd51426d900e271206f314e0c915dd41065521 (diff)
downloadiced-633f405f3f78bc7f82d2b2061491b0e011137451.tar.gz
iced-633f405f3f78bc7f82d2b2061491b0e011137451.tar.bz2
iced-633f405f3f78bc7f82d2b2061491b0e011137451.zip
Merge remote-tracking branch 'origin/master' into feat/multi-window-support
# Conflicts: # Cargo.toml # core/src/window/icon.rs # core/src/window/id.rs # core/src/window/position.rs # core/src/window/settings.rs # examples/integration/src/main.rs # examples/integration_opengl/src/main.rs # glutin/src/application.rs # native/src/subscription.rs # native/src/window.rs # runtime/src/window/action.rs # src/lib.rs # src/window.rs # winit/Cargo.toml # winit/src/application.rs # winit/src/icon.rs # winit/src/settings.rs # winit/src/window.rs
Diffstat (limited to '')
-rw-r--r--glow/src/quad.rs74
1 files changed, 0 insertions, 74 deletions
diff --git a/glow/src/quad.rs b/glow/src/quad.rs
deleted file mode 100644
index 67d9a098..00000000
--- a/glow/src/quad.rs
+++ /dev/null
@@ -1,74 +0,0 @@
-mod compatibility;
-mod core;
-
-use crate::program;
-use crate::Transformation;
-use glow::HasContext;
-use iced_graphics::layer;
-use iced_native::Rectangle;
-
-#[cfg(feature = "tracing")]
-use tracing::info_span;
-
-#[derive(Debug)]
-pub enum Pipeline {
- Core(core::Pipeline),
- Compatibility(compatibility::Pipeline),
-}
-
-impl Pipeline {
- pub fn new(
- gl: &glow::Context,
- shader_version: &program::Version,
- ) -> Pipeline {
- let gl_version = gl.version();
-
- // OpenGL 3.0+ and OpenGL ES 3.0+ have instancing (which is what separates `core` from `compatibility`)
- if gl_version.major >= 3 {
- log::info!("Mode: core");
- Pipeline::Core(core::Pipeline::new(gl, shader_version))
- } else {
- log::info!("Mode: compatibility");
- Pipeline::Compatibility(compatibility::Pipeline::new(
- gl,
- shader_version,
- ))
- }
- }
-
- pub fn draw(
- &mut self,
- gl: &glow::Context,
- target_height: u32,
- instances: &[layer::Quad],
- transformation: Transformation,
- scale: f32,
- bounds: Rectangle<u32>,
- ) {
- #[cfg(feature = "tracing")]
- let _ = info_span!("Glow::Quad", "DRAW").enter();
-
- match self {
- Pipeline::Core(pipeline) => {
- pipeline.draw(
- gl,
- target_height,
- instances,
- transformation,
- scale,
- bounds,
- );
- }
- Pipeline::Compatibility(pipeline) => {
- pipeline.draw(
- gl,
- target_height,
- instances,
- transformation,
- scale,
- bounds,
- );
- }
- }
- }
-}