Converted a couple more things to shared pointers.

This commit is contained in:
2023-11-10 20:12:18 -06:00
parent 0beb1d9cb7
commit 732a90931c
16 changed files with 114 additions and 79 deletions

View File

@ -9,14 +9,16 @@
using namespace Dawn;
RenderManager::RenderManager(DawnGame *game) :
IRenderManager(game),
backBuffer(*this),
RenderManager::RenderManager() :
IRenderManager(),
renderPipeline(this)
{
backBuffer = std::make_shared<BackBufferRenderTarget>(*this);
}
void RenderManager::init() {
void RenderManager::init(std::weak_ptr<DawnGame> game) {
this->game = game;
// Lock the common shaders
lockSimpleTextured = shaderManager.lockShader<SimpleTexturedShader>();
simpleTexturedShader = shaderManager.getShader<SimpleTexturedShader>(
@ -47,8 +49,8 @@ void RenderManager::init() {
assertNoGLError();
}
RenderTarget * RenderManager::getBackBuffer() {
return &backBuffer;
std::shared_ptr<RenderTarget> RenderManager::getBackBuffer() {
return backBuffer;
}
RenderPipeline * RenderManager::getRenderPipeline() {
@ -59,7 +61,7 @@ ShaderManager * RenderManager::getShaderManager() {
return &shaderManager;
}
void RenderManager::setRenderFlags(renderflag_t flags) {
void RenderManager::setRenderFlags(flag_t flags) {
renderFlags = flags;
if((flags & RENDER_MANAGER_RENDER_FLAG_DEPTH_TEST) == 0) {

View File

@ -22,7 +22,7 @@ namespace Dawn {
shaderlock_t lockFontShader = -1;
public:
BackBufferRenderTarget backBuffer;
std::shared_ptr<BackBufferRenderTarget> backBuffer;
SimpleTexturedShader *simpleTexturedShader = nullptr;
UIShader *uiShader = nullptr;
FontShader *fontShader = nullptr;
@ -30,13 +30,13 @@ namespace Dawn {
/**
* Construct a new RenderManager for a game instance.
*/
RenderManager(DawnGame *game);
RenderManager();
RenderTarget * getBackBuffer() override;
std::shared_ptr<RenderTarget> getBackBuffer() override;
RenderPipeline * getRenderPipeline() override;
ShaderManager * getShaderManager() override;
void setRenderFlags(renderflag_t renderFlags) override;
void init() override;
void setRenderFlags(flag_t renderFlags) override;
void init(std::weak_ptr<DawnGame> game) override;
void update() override;
/**