This commit is contained in:
agra
2026-02-24 13:37:27 +02:00
parent 170e236764
commit b98711a1d3
13 changed files with 157 additions and 632 deletions

View File

@@ -70,45 +70,6 @@ mat4_translate :: (tx: f32, ty: f32, tz: f32) -> Matrix44 {
m;
}
// ---- Shader helpers ----
compile_shader :: (shader_type: u32, source: [:0]u8) -> u32 {
shader : u32 = glCreateShader(shader_type);
glShaderSource(shader, 1, source, null);
glCompileShader(shader);
status : s32 = 0;
glGetShaderiv(shader, GL_COMPILE_STATUS, status);
if status == GL_FALSE {
log_buf : [512]u8 = ---;
glGetShaderInfoLog(shader, 512, null, log_buf);
print("Shader compile error\n");
}
shader;
}
create_program :: (vert_src: [:0]u8, frag_src: [:0]u8) -> u32 {
vs : u32 = compile_shader(GL_VERTEX_SHADER, vert_src);
fs : u32 = compile_shader(GL_FRAGMENT_SHADER, frag_src);
prog : u32 = glCreateProgram();
glAttachShader(prog, vs);
glAttachShader(prog, fs);
glLinkProgram(prog);
status : s32 = 0;
glGetProgramiv(prog, GL_LINK_STATUS, status);
if status == GL_FALSE {
log_buf : [512]u8 = ---;
glGetProgramInfoLog(prog, 512, null, log_buf);
print("Program link error\n");
}
glDeleteShader(vs);
glDeleteShader(fs);
prog;
}
// ---- Main ----
main :: () {