Shaders improved

This commit is contained in:
2023-11-12 20:10:53 -06:00
parent 06f4214248
commit e540efb726
12 changed files with 22 additions and 40 deletions

View File

@ -4,6 +4,7 @@
// https://opensource.org/licenses/MIT
#include "dawnopengl.hpp"
#include "assert/assertgl.hpp"
#include "game/DawnGame.hpp"
#include "display/RenderManager.hpp"
@ -15,11 +16,13 @@ RenderManager::RenderManager() : IRenderManager() {
backBuffer = std::make_shared<BackBufferRenderTarget>(*this);
}
void RenderManager::init(std::weak_ptr<DawnGame> game) {
void RenderManager::init(const std::weak_ptr<DawnGame> game) {
this->game = game;
// Init the render pipeline
renderPipeline->init(std::static_pointer_cast<RenderManager>(shared_from_this()));
renderPipeline->init(
std::static_pointer_cast<RenderManager>(shared_from_this())
);
// Lock the common shaders
lockSimpleTextured = shaderManager->lockShader<SimpleTexturedShader>();
@ -62,7 +65,7 @@ std::shared_ptr<ShaderManager> RenderManager::getShaderManager() {
return shaderManager;
}
void RenderManager::setRenderFlags(flag_t flags) {
void RenderManager::setRenderFlags(const flag_t flags) {
renderFlags = flags;
if((flags & RENDER_MANAGER_RENDER_FLAG_DEPTH_TEST) == 0) {

View File

@ -4,7 +4,6 @@
// https://opensource.org/licenses/MIT
#pragma once
#include "assert/assertgl.hpp"
#include "display/BackBufferRenderTarget.hpp"
#include "display/shader/ShaderManager.hpp"
#include "display/shader/shaders/SimpleTexturedShader.hpp"
@ -23,9 +22,9 @@ namespace Dawn {
public:
std::shared_ptr<BackBufferRenderTarget> backBuffer;
SimpleTexturedShader *simpleTexturedShader = nullptr;
UIShader *uiShader = nullptr;
FontShader *fontShader = nullptr;
std::shared_ptr<SimpleTexturedShader> simpleTexturedShader;
std::shared_ptr<UIShader> uiShader;
std::shared_ptr<FontShader> fontShader;
/**
* Construct a new RenderManager for a game instance.
@ -35,8 +34,8 @@ namespace Dawn {
std::shared_ptr<RenderTarget> getBackBuffer() override;
std::shared_ptr<RenderPipeline> getRenderPipeline() override;
std::shared_ptr<ShaderManager> getShaderManager() override;
void setRenderFlags(flag_t renderFlags) override;
void init(std::weak_ptr<DawnGame> game) override;
void setRenderFlags(const flag_t renderFlags) override;
void init(const std::weak_ptr<DawnGame> game) override;
void update() override;
/**