From f572d229d9b3b845506afb988b10b6a83901b280 Mon Sep 17 00:00:00 2001 From: SirLynix Date: Sun, 20 Nov 2022 15:43:00 +0100 Subject: [PATCH] Update demo code --- examples/DeferredShading/main.cpp | 30 +++++++++++++++--------------- examples/PhysicsDemo/main.cpp | 6 +++++- examples/RenderTest/main.cpp | 2 +- 3 files changed, 21 insertions(+), 17 deletions(-) diff --git a/examples/DeferredShading/main.cpp b/examples/DeferredShading/main.cpp index d5fcf0076..f92bab1c3 100644 --- a/examples/DeferredShading/main.cpp +++ b/examples/DeferredShading/main.cpp @@ -142,7 +142,7 @@ int main() Nz::RenderPipelineLayoutInfo skyboxPipelineLayoutInfo; skyboxPipelineLayoutInfo.bindings.push_back({ - 0, 0, + 0, 0, 1, Nz::ShaderBindingType::UniformBuffer, nzsl::ShaderStageType_All }); @@ -158,7 +158,6 @@ int main() Nz::RenderPipelineInfo skyboxPipelineInfo; skyboxPipelineInfo.depthBuffer = true; skyboxPipelineInfo.depthCompare = Nz::RendererComparison::Equal; - skyboxPipelineInfo.faceCulling = true; skyboxPipelineInfo.faceCulling = Nz::FaceCulling::Front; skyboxPipelineInfo.pipelineLayout = skyboxPipelineLayout; skyboxPipelineInfo.shaderModules.push_back(device->InstantiateShaderModule(nzsl::ShaderStageType::Fragment | nzsl::ShaderStageType::Vertex, Nz::ShaderLanguage::NazaraShader, shaderDir / "skybox.nzsl", states)); @@ -264,7 +263,7 @@ int main() Nz::RenderPipelineLayoutInfo lightingPipelineLayoutInfo; lightingPipelineLayoutInfo.bindings.push_back({ - 0, 0, + 0, 0, 1, Nz::ShaderBindingType::UniformBuffer, nzsl::ShaderStageType_All }); @@ -274,6 +273,7 @@ int main() lightingPipelineLayoutInfo.bindings.push_back({ 0, i + 1, + 1, Nz::ShaderBindingType::Texture, nzsl::ShaderStageType::Fragment, }); @@ -282,6 +282,7 @@ int main() lightingPipelineLayoutInfo.bindings.push_back({ 1, 0, + 1, Nz::ShaderBindingType::UniformBuffer, nzsl::ShaderStageType::Fragment | nzsl::ShaderStageType::Vertex, }); @@ -358,13 +359,13 @@ int main() Nz::RenderPipelineLayoutInfo fullscreenPipelineLayoutInfoViewer; fullscreenPipelineLayoutInfoViewer.bindings.push_back({ - 0, 0, + 0, 0, 1, Nz::ShaderBindingType::UniformBuffer, nzsl::ShaderStageType_All }); fullscreenPipelineLayoutInfoViewer.bindings.push_back({ - 0, 1, + 0, 1, 1, Nz::ShaderBindingType::Texture, nzsl::ShaderStageType::Fragment, }); @@ -384,7 +385,7 @@ int main() Nz::RenderPipelineLayoutInfo gaussianBlurPipelineLayoutInfo = fullscreenPipelineLayoutInfoViewer; gaussianBlurPipelineLayoutInfo.bindings.push_back({ - 0, 2, + 0, 2, 1, Nz::ShaderBindingType::UniformBuffer, nzsl::ShaderStageType::Fragment, }); @@ -437,19 +438,19 @@ int main() Nz::RenderPipelineLayoutInfo bloomBlendPipelineLayoutInfo; bloomBlendPipelineLayoutInfo.bindings.push_back({ - 0, 0, + 0, 0, 1, Nz::ShaderBindingType::UniformBuffer, nzsl::ShaderStageType_All }); /*bloomBlendPipelineLayoutInfo.bindings.push_back({ - 0, 1, + 0, 1, 1, Nz::ShaderBindingType::Texture, nzsl::ShaderStageType::Fragment, });*/ bloomBlendPipelineLayoutInfo.bindings.push_back({ - 0, 2, + 0, 2, 1, Nz::ShaderBindingType::Texture, nzsl::ShaderStageType::Fragment, }); @@ -473,7 +474,7 @@ int main() Nz::RenderPipelineLayoutInfo fullscreenPipelineLayoutInfo; fullscreenPipelineLayoutInfo.bindings.push_back({ - 0, 0, + 0, 0, 1, Nz::ShaderBindingType::Texture, nzsl::ShaderStageType::Fragment, }); @@ -491,17 +492,17 @@ int main() godraysPipelineLayoutInfo.bindings = { { { - 0, 0, + 0, 0, 1, Nz::ShaderBindingType::UniformBuffer, nzsl::ShaderStageType::Fragment, }, { - 0, 1, + 0, 1, 1, Nz::ShaderBindingType::UniformBuffer, nzsl::ShaderStageType::Fragment, }, { - 0, 2, + 0, 2, 1, Nz::ShaderBindingType::Texture, nzsl::ShaderStageType::Fragment, }, @@ -557,7 +558,6 @@ int main() meshPrimitiveParams.vertexDeclaration }); lightingPipelineInfo.depthBuffer = false; - lightingPipelineInfo.faceCulling = true; lightingPipelineInfo.faceCulling = Nz::FaceCulling::Front; lightingPipelineInfo.stencilTest = true; lightingPipelineInfo.stencilBack.compare = Nz::RendererComparison::NotEqual; @@ -580,7 +580,7 @@ int main() stencilPipelineInfo.colorWriteMask = 0; stencilPipelineInfo.depthBuffer = true; stencilPipelineInfo.depthWrite = false; - stencilPipelineInfo.faceCulling = false; + stencilPipelineInfo.faceCulling = Nz::FaceCulling::None; stencilPipelineInfo.stencilTest = true; stencilPipelineInfo.stencilFront.compare = Nz::RendererComparison::Always; stencilPipelineInfo.stencilFront.depthFail = Nz::StencilOperation::Invert; diff --git a/examples/PhysicsDemo/main.cpp b/examples/PhysicsDemo/main.cpp index f15cd65a8..61e646efe 100644 --- a/examples/PhysicsDemo/main.cpp +++ b/examples/PhysicsDemo/main.cpp @@ -148,8 +148,12 @@ int main() entt::entity headingEntity = registry.create(); { + auto spotLight = std::make_shared(); + spotLight->EnableShadowCasting(true); + spotLight->UpdateShadowMapSize(1024); + auto& entityLight = registry.emplace(playerEntity); - entityLight.AttachLight(std::make_shared(), 1); + entityLight.AttachLight(std::move(spotLight), 1); auto& entityGfx = registry.emplace(playerEntity); entityGfx.AttachRenderable(model, 1); diff --git a/examples/RenderTest/main.cpp b/examples/RenderTest/main.cpp index 198c4f583..512177deb 100644 --- a/examples/RenderTest/main.cpp +++ b/examples/RenderTest/main.cpp @@ -233,7 +233,7 @@ int main() Nz::RenderPipelineInfo pipelineInfo; pipelineInfo.pipelineLayout = renderPipelineLayout; - pipelineInfo.faceCulling = true; + pipelineInfo.faceCulling = Nz::FaceCulling::Back; pipelineInfo.depthBuffer = true; pipelineInfo.shaderModules.emplace_back(fragVertShader);