Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 4 additions & 2 deletions Source/Renderer/Renderer/DescriptorSet.h
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,8 @@ namespace Renderer
{
DEBUG,
GLOBAL,
SHADOWS,
TILES,
LIGHT,
PER_PASS,
PER_DRAW,
TERRAIN,
Expand All @@ -65,7 +66,8 @@ namespace Renderer
{
case DEBUG: return "DEBUG";
case GLOBAL: return "GLOBAL";
case SHADOWS: return "SHADOWS";
case TILES: return "TILES";
case LIGHT: return "LIGHT";
case PER_PASS: return "PER_PASS";
case PER_DRAW: return "PER_DRAW";
case TERRAIN: return "TERRAIN";
Expand Down
8 changes: 8 additions & 0 deletions Source/Renderer/Renderer/Renderer.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,14 @@ namespace Renderer
{
}

void Renderer::SetRenderSize(const vec2& renderSize)
{
for (auto& callback : _onRenderSizeChangedCallbacks)
{
callback(renderSize);
}
}

RenderGraph& Renderer::CreateRenderGraph(RenderGraphDesc& desc)
{
RenderGraph* renderGraph = Memory::Allocator::New<RenderGraph>(desc.allocator, desc.allocator, this);
Expand Down
10 changes: 6 additions & 4 deletions Source/Renderer/Renderer/Renderer.h
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,8 @@ namespace Renderer
class Renderer
{
public:
~Renderer();

virtual void InitDebug() = 0;
virtual void InitWindow(Novus::Window* window) = 0;
virtual void Deinit() = 0;
Expand All @@ -57,14 +59,13 @@ namespace Renderer
virtual void ReloadShaders(bool forceRecompileAll) = 0;
virtual void ClearUploadBuffers() = 0;

virtual void SetRenderSize(vec2 renderSize) = 0;
virtual vec2 GetRenderSize() = 0;
virtual void SetRenderSize(const vec2& renderSize);
virtual const vec2& GetRenderSize() = 0;
void AddOnRenderSizeChanged(const std::function<void(const vec2&)>& func) { _onRenderSizeChangedCallbacks.push_back(func); }

virtual vec2 GetWindowSize() = 0;
virtual ImageFormat GetSwapChainImageFormat() = 0;

virtual ~Renderer();

[[nodiscard]] RenderGraph& CreateRenderGraph(RenderGraphDesc& desc);

// Creation
Expand Down Expand Up @@ -245,6 +246,7 @@ namespace Renderer
bool _isExecutingCommandlist = false;

std::vector<TimeQueryID> _frameTimeQueries;
std::vector<std::function<void(const vec2&)>> _onRenderSizeChangedCallbacks;

friend class RenderGraph;
};
Expand Down
6 changes: 4 additions & 2 deletions Source/Renderer/Renderer/Renderers/Vulkan/RendererVK.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -110,13 +110,15 @@ namespace Renderer
_uploadBufferHandler->Clear();
}

void RendererVK::SetRenderSize(vec2 renderSize)
void RendererVK::SetRenderSize(const vec2& renderSize)
{
_renderSize = renderSize;
_renderSizeChanged = true;

Renderer::SetRenderSize(renderSize);
}

vec2 RendererVK::GetRenderSize()
const vec2& RendererVK::GetRenderSize()
{
return _renderSize;
}
Expand Down
4 changes: 2 additions & 2 deletions Source/Renderer/Renderer/Renderers/Vulkan/RendererVK.h
Original file line number Diff line number Diff line change
Expand Up @@ -42,8 +42,8 @@ namespace Renderer
void ReloadShaders(bool forceRecompileAll) override;
void ClearUploadBuffers() override;

void SetRenderSize(vec2 renderSize) override;
vec2 GetRenderSize() override;
void SetRenderSize(const vec2& renderSize) override;
const vec2& GetRenderSize() override;

vec2 GetWindowSize() override;
ImageFormat GetSwapChainImageFormat() override;
Expand Down
11 changes: 6 additions & 5 deletions Source/ShaderCooker/ShaderCooker/DxcBridge.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -171,11 +171,12 @@ namespace ShaderCooker

defines.push_back(MakeDefine(L"DEBUG", L"0"));
defines.push_back(MakeDefine(L"GLOBAL", L"1"));
defines.push_back(MakeDefine(L"SHADOWS", L"2"));
defines.push_back(MakeDefine(L"PER_PASS", L"3"));
defines.push_back(MakeDefine(L"PER_DRAW", L"4"));
defines.push_back(MakeDefine(L"TERRAIN", L"5"));
defines.push_back(MakeDefine(L"MODEL", L"6"));
defines.push_back(MakeDefine(L"TILES", L"2"));
defines.push_back(MakeDefine(L"LIGHT", L"3"));
defines.push_back(MakeDefine(L"PER_PASS", L"4"));
defines.push_back(MakeDefine(L"PER_DRAW", L"5"));
defines.push_back(MakeDefine(L"TERRAIN", L"6"));
defines.push_back(MakeDefine(L"MODEL", L"7"));

// Define all SHADER_*PROFILE* to 0
for (const char* profile : validProfilesArray)
Expand Down
Loading