From fb49d2849809273dae2fa4d3445341c3243b9fa1 Mon Sep 17 00:00:00 2001 From: LunarAkai Date: Sun, 27 Jul 2025 13:30:31 +0200 Subject: [PATCH] load shaders from files again --- moonhare_engine/src/game.rs | 13 +++---------- playground/src/main.rs | 30 ++++-------------------------- 2 files changed, 7 insertions(+), 36 deletions(-) diff --git a/moonhare_engine/src/game.rs b/moonhare_engine/src/game.rs index 3445474..7134190 100644 --- a/moonhare_engine/src/game.rs +++ b/moonhare_engine/src/game.rs @@ -2,7 +2,7 @@ use std::sync::{Arc, Mutex}; use glium::{glutin::surface::WindowSurface, winit::{application::ApplicationHandler, event::{Event, WindowEvent}, event_loop::{self, EventLoop, EventLoopBuilder}, window::{self, Window, WindowAttributes}}, Display}; -use crate::game_plugin::GamePlugin; +use crate::{game_plugin::GamePlugin, ENGINE_NAME}; pub struct Game { pub running: bool, @@ -99,7 +99,8 @@ impl ApplicationHandler for Game { event_loop: &event_loop::ActiveEventLoop, window_id: window::WindowId, event: WindowEvent, - ) { + ) { + let _ = window_id; match event { @@ -121,14 +122,6 @@ impl ApplicationHandler for Game { } -fn init_event_loop() -> EventLoop<()> { - let event_loop = glium::winit::event_loop::EventLoop::builder() - .build() - .expect("event loop building"); - - return event_loop; -} - fn return_window(event_loop: &EventLoop<()>) -> (Window, Display) { let (_window, display) = glium::backend::glutin::SimpleWindowBuilder::new() .with_title(crate::ENGINE_NAME) diff --git a/playground/src/main.rs b/playground/src/main.rs index 858b1f4..8a9bc6a 100644 --- a/playground/src/main.rs +++ b/playground/src/main.rs @@ -103,36 +103,14 @@ fn main() { // Important to write matrix * vertex -> Matrix operations produce different results depending on the order // out: defines a variable that is going to be passed along to the fragment shader - let vertex_shader_src = r#" - #version 140 - - in vec2 position; - in vec3 color; - out vec3 vertex_color; - - uniform mat4 matrix; - - void main() { - //vertex_color = color; - gl_Position = matrix * vec4(position, 0.0, 1.0); - } - "#; - let fragment_shader_src = r#" - #version 140 - - in vec3 vertex_color; - out vec4 color; - - void main() { - color = vec4(1.0, 0.0, 0.0, 1.0); - } - "#; + let vertex_shader_src = read_to_string("playground/src/shaders/vertex_shader.glsl").unwrap_or("vertex shader failed to unwrap".to_owned()); + let fragment_shader_src = read_to_string("playground/src/shaders/fragment_shader.glsl").unwrap_or("fragment shader failed to unwrap".to_owned()); // send shader source code to glium let program = match glium::Program::from_source( &display, - vertex_shader_src, - fragment_shader_src, + &vertex_shader_src, + &fragment_shader_src, None ) { Ok(program) => program,