Make Square transformable

This commit is contained in:
SeanOMik 2021-12-02 23:10:32 -05:00
parent 18e01bde5a
commit 211d8957a3
2 changed files with 6 additions and 4 deletions

View File

@ -14,6 +14,8 @@
#include "../../renderable.h" #include "../../renderable.h"
#include "../../vertex.h" #include "../../vertex.h"
#include "../../transformable.h"
#include "../../optional.h"
#include "../../gfx/vbo.h" #include "../../gfx/vbo.h"
#include "../../gfx/vao.h" #include "../../gfx/vao.h"
@ -23,10 +25,8 @@
#include <stdint.h> #include <stdint.h>
#include <vector> #include <vector>
#include "../../optional.h"
namespace simpleengine::shapes_2d { namespace simpleengine::shapes_2d {
class Square : public simpleengine::Renderable { class Square : public simpleengine::Renderable, public simpleengine::Transformable {
private: private:
using super = simpleengine::Renderable; using super = simpleengine::Renderable;
private: private:

View File

@ -39,7 +39,9 @@ namespace simpleengine::shapes_2d {
void Square::render(GLFWwindow* target) { void Square::render(GLFWwindow* target) {
shader.use(); shader.use();
// If theres a texture set, tell the fragment shader that and bind to the texture for drawing. shader.set_uniform_matrix_4f("transform", transform_matrix, false);
// When binding to the texture, also tell the shader if the texture is set or not.
if (texture.has_value()) { if (texture.has_value()) {
shader.set_uniform_int("texture_is_set", true, false); shader.set_uniform_int("texture_is_set", true, false);
texture.value().bind(); texture.value().bind();