// Copyright (c) 2023 Dominic Masters // // This software is released under the MIT License. // https://opensource.org/licenses/MIT #pragma once #include "display/shader/Shader.hpp" namespace Dawn { struct SimpleTexturedShaderDataSub { glm::mat4 projection; glm::mat4 view; glm::mat4 model; struct Color color = COLOR_WHITE; bool hasTexture = false; }; struct SimpleTexturedShaderData { struct SimpleTexturedShaderDataSub data; shadertexturebinding_t texture = 0; }; class SimpleTexturedShader : public Shader { protected: void getStages( const enum ShaderOpenGLVariant variant, const struct SimpleTexturedShaderData *rel, std::vector> &stages, std::vector ¶meters, std::vector &structures ) override; }; }