From 3420f1348d69af302ffbf5ea28088949100a619d Mon Sep 17 00:00:00 2001 From: meishibiezb <750783119@qq.com> Date: Thu, 5 Mar 2026 01:22:04 +0800 Subject: [PATCH] =?UTF-8?q?fixed:=20=E4=BF=AE=E5=A4=8D=E7=9D=80=E8=89=B2?= =?UTF-8?q?=E5=99=A8=E7=BC=96=E8=AF=91=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main.rs | 12 +++++++----- src/shaders/fs.glsl | 2 +- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/src/main.rs b/src/main.rs index 44a97e7..e9fab66 100644 --- a/src/main.rs +++ b/src/main.rs @@ -33,28 +33,30 @@ fn main() { let mut render_timer = RenderTimer::new(); // 编译着色器 - let vs_src = include_bytes!(".\\shaders\\vs.glsl"); + let vs_src = std::ffi::CString::new(include_str!(".\\shaders\\vs.glsl")).unwrap_or_default(); + println!("Vs Shader:\n{}", vs_src.to_str().unwrap_or_default()); let vs_ptr = vs_src.as_ptr() as *const i8; let vs = unsafe { gl::CreateShader(gl::VERTEX_SHADER) }; unsafe { gl::ShaderSource(vs, 1, &vs_ptr as _, null()) }; unsafe { gl::CompileShader(vs) }; let mut success = 0; unsafe { gl::GetShaderiv(vs, gl::COMPILE_STATUS, &mut success) }; - if success != 0 { + if success == 0 { let mut log = [0; 512]; unsafe { gl::GetShaderInfoLog(vs, 512, core::ptr::null_mut(), log.as_mut_ptr()) }; let log_u8: [u8; 512] = unsafe { std::mem::transmute(log) }; println!("{}", from_utf8(&log_u8).unwrap()); } - let fs_src = include_bytes!(".\\shaders\\fs.glsl"); + let fs_src = std::ffi::CString::new(include_str!(".\\shaders\\fs.glsl")).unwrap_or_default(); + println!("Fs Shader:\n{}", fs_src.to_str().unwrap_or_default()); let fs_ptr = fs_src.as_ptr() as *const i8; let fs = unsafe { gl::CreateShader(gl::FRAGMENT_SHADER) }; unsafe { gl::ShaderSource(fs, 1, &fs_ptr as _, null()) }; unsafe { gl::CompileShader(fs) }; let mut success = 0; unsafe { gl::GetShaderiv(fs, gl::COMPILE_STATUS, &mut success) }; - if success != 0 { + if success == 0 { let mut log = [0; 512]; unsafe { gl::GetShaderInfoLog(fs, 512, core::ptr::null_mut(), log.as_mut_ptr()) }; let log_u8: [u8; 512] = unsafe { std::mem::transmute(log) }; @@ -68,7 +70,7 @@ fn main() { unsafe { gl::LinkProgram(sp) }; let mut success = 0; unsafe { gl::GetProgramiv(sp, gl::LINK_STATUS, &mut success) }; - if success != 0 { + if success == 0 { let mut log = [0; 512]; unsafe { gl::GetProgramInfoLog(sp, 512, null_mut(), log.as_mut_ptr()) }; let log_u8: [u8; 512] = unsafe { std::mem::transmute(log) }; diff --git a/src/shaders/fs.glsl b/src/shaders/fs.glsl index 12a8bd1..5958017 100644 --- a/src/shaders/fs.glsl +++ b/src/shaders/fs.glsl @@ -3,5 +3,5 @@ out vec4 FragColor; void main() { - FragColor = vec4(0.0f, 0.0f, 0.0f, 1.0f); + FragColor = vec4(1.0, 0.2, 0.2, 1.0); } \ No newline at end of file