diff --git a/neo/renderer/NVRHI/BufferObject_NVRHI.cpp b/neo/renderer/NVRHI/BufferObject_NVRHI.cpp index 99683ebc..f1553c8c 100644 --- a/neo/renderer/NVRHI/BufferObject_NVRHI.cpp +++ b/neo/renderer/NVRHI/BufferObject_NVRHI.cpp @@ -4,7 +4,7 @@ Doom 3 BFG Edition GPL Source Code Copyright (C) 1993-2012 id Software LLC, a ZeniMax Media company. Copyright (C) 2013 Robert Beckebans -Copyright (C) 2016-2017 Stephen Pridham +Copyright (C) 2022 Stephen Pridham This file is part of the Doom 3 BFG Edition GPL Source Code ("Doom 3 BFG Edition Source Code"). diff --git a/neo/renderer/NVRHI/Framebuffer_NVRHI.cpp b/neo/renderer/NVRHI/Framebuffer_NVRHI.cpp index 4738b59a..4c0b2316 100644 --- a/neo/renderer/NVRHI/Framebuffer_NVRHI.cpp +++ b/neo/renderer/NVRHI/Framebuffer_NVRHI.cpp @@ -2,7 +2,8 @@ =========================================================================== Doom 3 BFG Edition GPL Source Code -Copyright (C) 2014-2020 Robert Beckebans +Copyright (C) 2014-2022 Robert Beckebans +Copyright (C) 2022 Stephen Pridham This file is part of the Doom 3 BFG Edition GPL Source Code ("Doom 3 BFG Edition Source Code"). diff --git a/neo/renderer/NVRHI/Image_NVRHI.cpp b/neo/renderer/NVRHI/Image_NVRHI.cpp index 367b983f..f427d1ba 100644 --- a/neo/renderer/NVRHI/Image_NVRHI.cpp +++ b/neo/renderer/NVRHI/Image_NVRHI.cpp @@ -3,7 +3,8 @@ Doom 3 BFG Edition GPL Source Code Copyright (C) 1993-2012 id Software LLC, a ZeniMax Media company. -Copyright (C) 2013-2016 Robert Beckebans +Copyright (C) 2013-2022 Robert Beckebans +Copyright (C) 2022 Stephen Pridham This file is part of the Doom 3 BFG Edition GPL Source Code ("Doom 3 BFG Edition Source Code"). diff --git a/neo/renderer/NVRHI/RenderBackend_NVRHI.cpp b/neo/renderer/NVRHI/RenderBackend_NVRHI.cpp index f1b8114d..686647d7 100644 --- a/neo/renderer/NVRHI/RenderBackend_NVRHI.cpp +++ b/neo/renderer/NVRHI/RenderBackend_NVRHI.cpp @@ -3,8 +3,9 @@ Doom 3 BFG Edition GPL Source Code Copyright (C) 1993-2012 id Software LLC, a ZeniMax Media company. -Copyright (C) 2013-2019 Robert Beckebans +Copyright (C) 2013-2022 Robert Beckebans Copyright (C) 2016-2017 Dustin Land +Copyright (C) 2022 Stephen Pridham This file is part of the Doom 3 BFG Edition GPL Source Code ("Doom 3 BFG Edition Source Code"). @@ -534,13 +535,13 @@ void idRenderBackend::GetCurrentBindingLayout( int type ) desc[1].bindings = { nvrhi::BindingSetItem::Sampler( 0, commonPasses.m_AnisotropicWrapSampler ), - nvrhi::BindingSetItem::Sampler( 1, commonPasses.m_LinearClampSampler ) + nvrhi::BindingSetItem::Sampler( 1, commonPasses.m_LinearBorderSampler ) }; } else { desc[1].bindings[0].resourceHandle = commonPasses.m_AnisotropicWrapSampler; - desc[1].bindings[1].resourceHandle = commonPasses.m_LinearClampSampler; + desc[1].bindings[1].resourceHandle = commonPasses.m_LinearBorderSampler; } } else if( type == BINDING_LAYOUT_DRAW_INTERACTION_SM ) @@ -576,7 +577,7 @@ void idRenderBackend::GetCurrentBindingLayout( int type ) desc[1].bindings = { nvrhi::BindingSetItem::Sampler( 0, commonPasses.m_AnisotropicWrapSampler ), - nvrhi::BindingSetItem::Sampler( 1, commonPasses.m_LinearClampSampler ), + nvrhi::BindingSetItem::Sampler( 1, commonPasses.m_LinearBorderSampler ), nvrhi::BindingSetItem::Sampler( 2, commonPasses.m_LinearClampCompareSampler ), nvrhi::BindingSetItem::Sampler( 3, commonPasses.m_PointWrapSampler ) // blue noise }; @@ -584,7 +585,7 @@ void idRenderBackend::GetCurrentBindingLayout( int type ) else { desc[1].bindings[0].resourceHandle = commonPasses.m_AnisotropicWrapSampler; - desc[1].bindings[1].resourceHandle = commonPasses.m_LinearClampSampler; + desc[1].bindings[1].resourceHandle = commonPasses.m_LinearBorderSampler; desc[1].bindings[2].resourceHandle = commonPasses.m_LinearClampCompareSampler; desc[1].bindings[3].resourceHandle = commonPasses.m_PointWrapSampler; } diff --git a/neo/renderer/NVRHI/RenderDebug_NVRHI.cpp b/neo/renderer/NVRHI/RenderDebug_NVRHI.cpp index a6ab8934..7a615b2a 100644 --- a/neo/renderer/NVRHI/RenderDebug_NVRHI.cpp +++ b/neo/renderer/NVRHI/RenderDebug_NVRHI.cpp @@ -4,8 +4,8 @@ Doom 3 BFG Edition GPL Source Code Copyright (C) 1993-2012 id Software LLC, a ZeniMax Media company. Copyright (C) 2014-2022 Robert Beckebans -Copyright (C) 2014-2016 Kot in Action Creative Artel Copyright (C) 2016-2017 Dustin Land +Copyright (C) 2022 Stephen Pridham This file is part of the Doom 3 BFG Edition GPL Source Code ("Doom 3 BFG Edition Source Code"). diff --git a/neo/renderer/NVRHI/RenderProgs_NVRHI.cpp b/neo/renderer/NVRHI/RenderProgs_NVRHI.cpp index f9136a1c..bff72318 100644 --- a/neo/renderer/NVRHI/RenderProgs_NVRHI.cpp +++ b/neo/renderer/NVRHI/RenderProgs_NVRHI.cpp @@ -3,7 +3,7 @@ Doom 3 BFG Edition GPL Source Code Copyright (C) 1993-2012 id Software LLC, a ZeniMax Media company. -Copyright (C) 2013-2018 Robert Beckebans +Copyright (C) 2013-2022 Robert Beckebans Copyright (C) 2022 Stephen Pridham This file is part of the Doom 3 BFG Edition GPL Source Code ("Doom 3 BFG Edition Source Code"). @@ -36,8 +36,6 @@ If you have questions concerning this license or the applicable additional terms #include -idCVar r_displayGLSLCompilerMessages( "r_displayGLSLCompilerMessages", "1", CVAR_BOOL | CVAR_ARCHIVE, "Show info messages the GPU driver outputs when compiling the shaders" ); -idCVar r_alwaysExportGLSL( "r_alwaysExportGLSL", "1", CVAR_BOOL, "" ); /* ======================== diff --git a/neo/renderer/Passes/CommonPasses.cpp b/neo/renderer/Passes/CommonPasses.cpp index f09289d0..a11893ae 100644 --- a/neo/renderer/Passes/CommonPasses.cpp +++ b/neo/renderer/Passes/CommonPasses.cpp @@ -80,6 +80,10 @@ void CommonRenderPasses::Init( nvrhi::IDevice* device ) samplerDesc.setAllFilters( true ); m_LinearClampSampler = m_Device->createSampler( samplerDesc ); + samplerDesc.setAllAddressModes( nvrhi::SamplerAddressMode::Border ); + samplerDesc.setBorderColor( nvrhi::Color( 0.f, 0.f, 0.f, 1.f ) ); + m_LinearBorderSampler = m_Device->createSampler( samplerDesc ); + samplerDesc.setReductionType( nvrhi::SamplerReductionType::Comparison ); m_LinearClampCompareSampler = m_Device->createSampler( samplerDesc ); diff --git a/neo/renderer/Passes/CommonPasses.h b/neo/renderer/Passes/CommonPasses.h index d36bd5e9..a0b32c70 100644 --- a/neo/renderer/Passes/CommonPasses.h +++ b/neo/renderer/Passes/CommonPasses.h @@ -107,8 +107,6 @@ protected: std::unordered_map m_BlitPsoCache; public: - //nvrhi::ShaderHandle m_FullscreenVS; - //nvrhi::ShaderHandle m_FullscreenAtOneVS; nvrhi::ShaderHandle m_RectVS; nvrhi::ShaderHandle m_BlitPS; nvrhi::ShaderHandle m_BlitArrayPS; @@ -125,6 +123,7 @@ public: nvrhi::SamplerHandle m_PointClampSampler; nvrhi::SamplerHandle m_PointWrapSampler; nvrhi::SamplerHandle m_LinearClampSampler; + nvrhi::SamplerHandle m_LinearBorderSampler; // D3 zeroClamp nvrhi::SamplerHandle m_LinearClampCompareSampler; nvrhi::SamplerHandle m_LinearWrapSampler; nvrhi::SamplerHandle m_AnisotropicWrapSampler;