Compare commits

..

2 Commits

Author SHA1 Message Date
570ad74885 Hehe i can feel my sanity diappearing 2022-04-15 23:51:53 +02:00
328945e6fc *Leaks Memory* 2022-04-15 23:51:11 +02:00
2 changed files with 20 additions and 16 deletions

View File

@@ -109,8 +109,8 @@ unsigned int createShader(char* vertexPath, char* fragmentPath) {
fread(vertex_src, sizeof(char), vertex_length, vertex_file ); fread(vertex_src, sizeof(char), vertex_length, vertex_file );
fread(fragment_src, sizeof(char), fragment_length, fragment_file ); fread(fragment_src, sizeof(char), fragment_length, fragment_file );
vertex_src[vertex_length+1] = '\0'; vertex_src[vertex_length] = '\0';
fragment_src[fragment_length+1] = '\0'; fragment_src[fragment_length] = '\0';
// printf("%s", vertex_src); // printf("%s", vertex_src);
// printf("%s", fragment_src); // printf("%s", fragment_src);

View File

@@ -30,13 +30,11 @@ void lorenzStep(float next[3], vec3 prev, float dt) {
int main(int argc, char *argv[]) { int main(int argc, char *argv[]) {
GLFWwindow* window; GLFWwindow* window = initOpenGL();
window = initOpenGL();
glfwSetKeyCallback(window, &key_pressed); glfwSetKeyCallback(window, &key_pressed);
// CreateShader // CreateShader
unsigned int shader1; unsigned int shader1 = createShader("assets/shaders/vertex.glsl\0", "assets/shaders/fragment.glsl\0");
shader1 = createShader("assets/shaders/vertex.glsl\0", "assets/shaders/fragment.glsl\0");
// Initialise VBO and VAO // Initialise VBO and VAO
unsigned int VAO, VBO; unsigned int VAO, VBO;
@@ -63,6 +61,9 @@ int main(int argc, char *argv[]) {
memset(lorenzPoints, 0, 3000 * sizeof(vec3)); memset(lorenzPoints, 0, 3000 * sizeof(vec3));
vec3 initial = {0.1f, 0.1f, 0.1f}; vec3 initial = {0.1f, 0.1f, 0.1f};
memcpy(lorenzPoints, initial, sizeof(vec3)); memcpy(lorenzPoints, initial, sizeof(vec3));
vec3 sec = {1.0f, 1.0f, 1.0f};
memcpy(lorenzPoints, sec, sizeof(vec3));
int i=1; int i=1;
while(!glfwWindowShouldClose(window)) { while(!glfwWindowShouldClose(window)) {
@@ -70,6 +71,7 @@ int main(int argc, char *argv[]) {
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
glUseProgram(shader1); glUseProgram(shader1);
if(i<3000){
float increment = 0.1* (float)i; float increment = 0.1* (float)i;
float next[3] = {increment, increment, increment}; float next[3] = {increment, increment, increment};
//lorenzStep(next, lorenzPoints[i], 0.01f); //lorenzStep(next, lorenzPoints[i], 0.01f);
@@ -79,8 +81,9 @@ int main(int argc, char *argv[]) {
float* buff = glMapBuffer(GL_ARRAY_BUFFER, GL_WRITE_ONLY); float* buff = glMapBuffer(GL_ARRAY_BUFFER, GL_WRITE_ONLY);
memcpy(buff, lorenzPoints, i * sizeof(vec3)); memcpy(buff, lorenzPoints, i * sizeof(vec3));
glUnmapBuffer(GL_ARRAY_BUFFER); glUnmapBuffer(GL_ARRAY_BUFFER);
}
glDrawArrays(GL_LINE_STRIP, 0, i); glDrawArrays(GL_POINTS, 10, 2);
glfwSwapBuffers(window); glfwSwapBuffers(window);
glfwPollEvents(); glfwPollEvents();
processInput(); processInput();
@@ -88,6 +91,7 @@ int main(int argc, char *argv[]) {
glDeleteVertexArrays(1, &VAO); glDeleteVertexArrays(1, &VAO);
glDeleteBuffers(1, &VBO); glDeleteBuffers(1, &VBO);
free(lorenzPoints);
glfwTerminate(); glfwTerminate();
return 0; return 0;
} }