Added IRenderable, removed shader programs and allow more nuanced control of render passes, UI items are now rendered same as other scene item components.

This commit is contained in:
2023-05-29 15:52:08 -07:00
parent 117262267c
commit 96dd33c6b8
30 changed files with 419 additions and 600 deletions

View File

@ -4,24 +4,11 @@
// https://opensource.org/licenses/MIT
#pragma once
#include "display/shader/ShaderManager.hpp"
#include "scene/components/display/material/SimpleTexturedMaterial.hpp"
#include "display/shader/ShaderParameterBuffer.hpp"
#include "display/shader/Shader.hpp"
namespace Dawn {
struct Test123 {
float_t r;
float_t g;
float_t b;
};
class SimpleTexturedShaderTest : public ShaderParameterBuffer<struct Test123> {
};
class SimpleTexturedShaderProgram : public ShaderProgram {
class SimpleTexturedShader : public Shader {
public:
SimpleTexturedShaderTest test;
shaderparameter_t paramProjection;
shaderparameter_t paramView;
shaderparameter_t paramModel;
@ -31,17 +18,4 @@ namespace Dawn {
void compile() override;
};
class SimpleTexturedShader : public Shader {
public:
SimpleTexturedShaderProgram program;
void compile() override;
std::vector<struct ShaderPassItem> getPassItems(
Mesh *mesh,
Material *material,
Camera *camera
) override;
};
}