From 6623e7fbdb4307536d3f5920c267c74f8bc6a989 Mon Sep 17 00:00:00 2001 From: Charles Date: Mon, 11 May 2020 02:19:18 +0200 Subject: Generating triangles for polygon face in .obj file, opengl error/initialisation --- src/gl.c | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 src/gl.c (limited to 'src/gl.c') diff --git a/src/gl.c b/src/gl.c new file mode 100644 index 0000000..c28bf9e --- /dev/null +++ b/src/gl.c @@ -0,0 +1,27 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* gl.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: charles +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2020/05/11 01:31:10 by charles #+# #+# */ +/* Updated: 2020/05/11 02:17:16 by charles ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "scop.h" + +int gl_state_init(t_gl_state *state, t_object *object) +{ + GL_CALL(glGenBuffers(1, &state->vertex_buf)); + GL_CALL(glBindBuffer(GL_ARRAY_BUFFER, state->vertex_buf)); + GL_CALL(glBufferData(GL_ARRAY_BUFFER, sizeof(float) * object->vertices_len, + object->vertices, GL_STATIC_DRAW)); + + GL_CALL(glGenBuffers(1, &state->index_buf)); + GL_CALL(glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, state->index_buf)); + GL_CALL(glBufferData(GL_ELEMENT_ARRAY_BUFFER, sizeof(float) * object->indices_len, + object->indices, GL_STATIC_DRAW)); + return (0); +} -- cgit