From ebcab7118d953617a6b6dcdd314ac2cde1faf3a8 Mon Sep 17 00:00:00 2001 From: David Date: Mon, 9 Mar 2020 20:29:06 -0400 Subject: [PATCH] remove test --- vis/CMakeLists.txt | 5 --- vis/src/main.cpp | 31 ++++++------- vis/src/test.cpp | 107 --------------------------------------------- 3 files changed, 13 insertions(+), 130 deletions(-) delete mode 100644 vis/src/test.cpp diff --git a/vis/CMakeLists.txt b/vis/CMakeLists.txt index c1dfe52..12f2dd9 100644 --- a/vis/CMakeLists.txt +++ b/vis/CMakeLists.txt @@ -12,8 +12,3 @@ add_executable(vis src/main.cpp) target_include_directories(vis PRIVATE include) target_link_libraries(vis PRIVATE tc glad glm glfw) add_dependencies(vis shaders) - -add_executable(test src/test.cpp) -target_include_directories(test PRIVATE include) -target_link_libraries(test PRIVATE tc glad glm glfw) -add_dependencies(test shaders) diff --git a/vis/src/main.cpp b/vis/src/main.cpp index 27c5aa6..f5f6732 100644 --- a/vis/src/main.cpp +++ b/vis/src/main.cpp @@ -30,21 +30,17 @@ struct Matrices { template struct MeshRef { - GLuint vao; - GLuint ibo; + cgl::vertexarray vao; + cgl::buffer> ibo; + unsigned primitive_count; unsigned index_count; - explicit MeshRef(const Mesh &mesh) { - vao = utilCreateVertexArray(); - ibo = utilCreateBuffer(); + explicit MeshRef(const Mesh &mesh) : vao(), ibo() { primitive_count = mesh.size(); index_count = primitive_count * N; - glBindVertexArray(vao); - glBindBuffer(GL_ARRAY_BUFFER, ibo); - glBufferData(GL_ARRAY_BUFFER, sizeof(Primitive) * primitive_count, &mesh.prims[0], GL_STATIC_DRAW); - glBindVertexArray(0); + ibo.put(mesh.prims);; } }; @@ -145,17 +141,16 @@ void run(GLFWwindow *window) { glLineWidth(1.5); const auto wires_dark = glm::vec3(.3, .3, .3); const auto wires_light = wires_dark; - glBindProgramPipeline(proj_pipe); - for (auto ref : wires) { - glProgramUniform3f(solid, 2, 1, 1, 1); - glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, ref.ibo); - glDrawElements(WIRE_MODE, ref.index_count, GL_UNSIGNED_INT, nullptr); - glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, 0); - } + proj_pipe.bound([&]() { + for (const auto &ref : wires) { + glProgramUniform3f(solid, 2, 1, 1, 1); - glBindProgramPipeline(0); - glBindVertexArray(0); + ref.ibo.bound(GL_ELEMENT_ARRAY_BUFFER, [&]() { + glDrawElements(WIRE_MODE, ref.index_count, GL_UNSIGNED_INT, nullptr); + }); + } + }); glfwSwapBuffers(window); diff --git a/vis/src/test.cpp b/vis/src/test.cpp deleted file mode 100644 index 825b514..0000000 --- a/vis/src/test.cpp +++ /dev/null @@ -1,107 +0,0 @@ -#include -#include -#include -#include - -#include - -#include - -#include "util.hpp" -#include "mirror.hpp" -#include "geometry.hpp" - -#include - -#ifdef _WIN32 -extern "C" { -__attribute__((unused)) __declspec(dllexport) int NvOptimusEnablement = 0x00000001; -} -#endif - -struct globals { - glm::mat4 proj = glm::identity(); - float time = 0; -}; - -void run(GLFWwindow *window) { - auto direct = cgl::pgm::vert::file("shaders/test/direct.glsl"); - auto white = cgl::pgm::frag::file("shaders/test/white.glsl"); - - auto pipe = cgl::pipeline(); - pipe.stage(direct).stage(white); - - auto vbo = cgl::buffer({ - -0.5, +0.866, 0, 1, - -0.5, -0.866, 0, 1, - +1.0, +0.000, 0, 1, - }); - - auto global_ubo = cgl::buffer(); - glBindBufferBase(GL_UNIFORM_BUFFER, 0, global_ubo); - - auto vao = cgl::vertexarray(); - vao.bound([&]() { - vbo.bound(GL_ARRAY_BUFFER, [&]() { - glEnableVertexAttribArray(0); - glVertexAttribPointer(0, 4, GL_FLOAT, GL_FALSE, 0, nullptr); - }); - }); - - while (!glfwWindowShouldClose(window)) { - int width, height; - glfwGetFramebufferSize(window, &width, &height); - glViewport(0, 0, width, height); - - glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); - - auto aspect = (float) width / (float) height; - globals data; - data.time = (float) glfwGetTime(); - data.proj = glm::ortho(-aspect, aspect, -1.0f, 1.0f); - global_ubo.put(data); - - pipe.bound([&]() { - vao.bound([&]() { - glDrawArrays(GL_TRIANGLES, 0, 3); - }); - }); - - glfwSwapBuffers(window); - - glfwPollEvents(); - } -} - -int main(int argc, char *argv[]) { - //region init window - if (!glfwInit()) { - std::cerr << "Failed to initialize GLFW" << std::endl; - return EXIT_FAILURE; - } - - auto window = glfwCreateWindow( - 1920, 1080, - "Coset Visualization", - nullptr, nullptr); - - if (!window) { - std::cerr << "Failed to create window" << std::endl; - glfwTerminate(); - exit(EXIT_FAILURE); - } - - glfwMakeContextCurrent(window); - gladLoadGLLoader((GLADloadproc) glfwGetProcAddress); - glfwSwapInterval(1); - glClear(GL_COLOR_BUFFER_BIT); - glfwSwapBuffers(window); - //endregion - - std::cout << utilInfo(); - - run(window); - - glfwTerminate(); - return EXIT_SUCCESS; -}