src/gl/gridprogram.h

changeset 55
cb81ecb5fb23
parent 53
3af627f7a40f
child 64
f99d52b1646b
equal deleted inserted replaced
54:a4055f67b9c7 55:cb81ecb5fb23
29 ~GridProgram() = default; 29 ~GridProgram() = default;
30 void initialize(); 30 void initialize();
31 void setViewMatrix(const glm::mat4& newViewMatrix); 31 void setViewMatrix(const glm::mat4& newViewMatrix);
32 void setProjectionMatrix(const glm::mat4& newProjectionMatrix); 32 void setProjectionMatrix(const glm::mat4& newProjectionMatrix);
33 void setModelMatrix(const glm::mat4& newModelMatrix); 33 void setModelMatrix(const glm::mat4& newModelMatrix);
34 void setGridColor(const QColor& newGridColor);
34 void operator=(GridProgram) = delete; 35 void operator=(GridProgram) = delete;
35 void draw(); 36 void draw();
36 void teardown(); 37 void teardown();
37 private: 38 private:
38 void checkForGLErrors(); 39 void checkForGLErrors();
39 bool isInitialized = false; 40 bool isInitialized = false;
40 QOpenGLBuffer buffer; 41 QOpenGLBuffer buffer;
41 QOpenGLShader vertexShader; 42 QOpenGLShader vertexShader;
42 QOpenGLShader fragmentShader; 43 QOpenGLShader fragmentShader;
43 std::optional<gl::ShaderProgram> program{std::nullopt}; 44 std::optional<gl::ShaderProgram> program{std::nullopt};
45 glm::vec4 gridColor = {1.0f, 1.0f, 1.0f, 0.75f};
44 QOpenGLVertexArrayObject vertexArrayObject; 46 QOpenGLVertexArrayObject vertexArrayObject;
45 }; 47 };

mercurial