Subfolder for shaders

This commit is contained in:
Phireh 2023-01-26 01:44:32 +01:00
commit 2844f9a71e
4 changed files with 37 additions and 14 deletions

37
main.c
View file

@ -12,19 +12,26 @@
#define log_err(str, ...) do { fprintf(stderr, "[ERROR] (%s:%d): " str "\n", __FILE__, __LINE__, ##__VA_ARGS__); } while (0)
#define log_debug(str, ...) do { fprintf(stderr, "[DEBUG] (%s:%d): " str "\n", __FILE__, __LINE__, ##__VA_ARGS__); } while (0)
/* Globals */
const char *vertexShaderSource = "#version 330 core\n"
"layout (location = 0) in vec3 aPos;\n"
"void main()\n"
"{\n"
" gl_Position = vec4(aPos.x, aPos.y, aPos.z, 1.0);\n"
"}\0";
const char *fragmentShaderSource = "#version 330 core\n"
"out vec4 FragColor;\n"
"void main()\n"
"{\n"
" FragColor = vec4(1.0f, 0.5f, 0.2f, 1.0f);\n"
"}\n\0";
char *read_entire_file(char *path)
{
FILE *f = fopen(path, "rb");
size_t length = 0;
char *buf = NULL;
if (f)
{
fseek(f, 0, SEEK_END);
length = ftell(f);
fseek(f, 0, SEEK_SET);
if (length)
{
buf = malloc(length + 1);
fread(buf, 1, length, f);
buf[length] = '\0';
}
}
return buf;
}
static void glfw_error_callback(int errcode, const char *description)
{
@ -51,6 +58,10 @@ int main()
// build and compile our shader program
// ------------------------------------
char * vertexShaderSource = read_entire_file("shaders/vertex.glsl");
char *fragmentShaderSource = read_entire_file("shaders/fragment.glsl");
// vertex shader
unsigned int vertex_shader = glCreateShader(GL_VERTEX_SHADER);
glShaderSource(vertex_shader, 1, &vertexShaderSource, NULL);