Skip to content

Commit 0084230

Browse files
committed
Sync with "simplex"
1 parent dc7bd65 commit 0084230

18 files changed

Lines changed: 238 additions & 288 deletions

3-PrepareSDK.bat

Lines changed: 2 additions & 54 deletions
Original file line numberDiff line numberDiff line change
@@ -1,56 +1,4 @@
11
@echo off
22

3-
set ROOT=%cd%
4-
set NRD=%ROOT%\External\NRD
5-
set NRI=%ROOT%\External\NRIFramework\External\NRI
6-
7-
rd /q /s "_NRD_SDK"
8-
mkdir "_NRD_SDK"
9-
cd "_NRD_SDK"
10-
11-
mkdir "Include"
12-
mkdir "Integration"
13-
mkdir "Lib\Debug"
14-
mkdir "Lib\Release"
15-
mkdir "Shaders"
16-
17-
copy "%NRD%\Include\*" "Include"
18-
copy "%NRD%\Integration\*" "Integration"
19-
copy "%NRD%\Shaders\NRD.hlsli" "Shaders"
20-
copy "%NRD%\Shaders\NRDConfig.hlsli" "Shaders"
21-
copy "%NRD%\LICENSE.txt" "."
22-
copy "%NRD%\README.md" "."
23-
copy "%NRD%\UPDATE.md" "."
24-
25-
copy "%ROOT%\_Bin\Debug\NRD.dll" "Lib\Debug"
26-
copy "%ROOT%\_Bin\Debug\NRD.lib" "Lib\Debug"
27-
copy "%ROOT%\_Bin\Debug\NRD.pdb" "Lib\Debug"
28-
copy "%ROOT%\_Bin\Release\NRD.dll" "Lib\Release"
29-
copy "%ROOT%\_Bin\Release\NRD.lib" "Lib\Release"
30-
copy "%ROOT%\_Bin\Release\NRD.pdb" "Lib\Release"
31-
32-
cd ..
33-
34-
rd /q /s "_NRI_SDK"
35-
mkdir "_NRI_SDK"
36-
cd "_NRI_SDK"
37-
38-
mkdir "Include\Extensions"
39-
mkdir "Lib\Debug"
40-
mkdir "Lib\Release"
41-
42-
copy "%NRI%\Include\*" "Include"
43-
copy "%NRI%\Include\Extensions\*" "Include\Extensions"
44-
copy "%NRI%\LICENSE.txt" "."
45-
copy "%NRI%\README.md" "."
46-
copy "%NRI%\nri.natvis" "."
47-
48-
copy "%ROOT%\_Bin\Debug\NRI.dll" "Lib\Debug"
49-
copy "%ROOT%\_Bin\Debug\NRI.lib" "Lib\Debug"
50-
copy "%ROOT%\_Bin\Debug\NRI.pdb" "Lib\Debug"
51-
copy "%ROOT%\_Bin\Release\NRI.dll" "Lib\Release"
52-
copy "%ROOT%\_Bin\Release\NRI.lib" "Lib\Release"
53-
copy "%ROOT%\_Bin\Release\NRI.pdb" "Lib\Release"
54-
55-
cd ..
56-
3+
call "External\NRD\3-PrepareSDK.bat"
4+
call "External\NRIFramework\External\NRI\3-PrepareSDK.bat"

3-PrepareSDK.sh

Lines changed: 2 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -1,46 +1,4 @@
11
#!/bin/bash
22

3-
ROOT=$(pwd)
4-
NRD=$(ROOT)/External/NRD
5-
NRI=$(ROOT)/External/NRIFramework/External/NRI
6-
7-
rm -rf "_NRD_SDK"
8-
mkdir -p "_NRD_SDK"
9-
cd "_NRD_SDK"
10-
11-
mkdir -p "Include"
12-
mkdir -p "Integration"
13-
mkdir -p "Lib/Debug"
14-
mkdir -p "Lib/Release"
15-
mkdir -p "Shaders"
16-
17-
cp -r "$(NRD)/Include/" "Include"
18-
cp -r "$(NRD)/Integration/" "Integration"
19-
cp -r "$(NRD)/Shaders/NRD.hlsli" "Shaders"
20-
cp -r "$(NRD)/Shaders/NRDConfig.hlsli" "Shaders"
21-
cp "$(NRD)/LICENSE.txt" "."
22-
cp "$(NRD)/README.md" "."
23-
cp "$(NRD)/UPDATE.md" "."
24-
25-
cp -H "$(ROOT)/_Bin/Debug/libNRD.so" "Lib/Debug"
26-
cp -H "$(ROOT)/_Bin/Release/libNRD.so" "Lib/Release"
27-
28-
cd ..
29-
30-
rm -rf "_NRI_SDK"
31-
mkdir -p "_NRI_SDK"
32-
cd "_NRI_SDK"
33-
34-
mkdir -p "Include"
35-
mkdir -p "Lib/Debug"
36-
mkdir -p "Lib/Release"
37-
38-
cp -r "$(NRI)/Include/" "Include"
39-
cp "$(NRI)/LICENSE.txt" "."
40-
cp "$(NRI)/README.md" "."
41-
cp "$(NRI)/nri.natvis" "."
42-
43-
cp -H "$(ROOT)/_Bin/Debug/libNRI.so" "Lib/Debug"
44-
cp -H "$(ROOT)/_Bin/Release/libNRI.so" "Lib/Release"
45-
46-
cd ..
3+
bash "External/NRD/3-PrepareSDK.sh"
4+
bash "External/NRIFramework/External/NRI/3-PrepareSDK.sh"

CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,7 @@ fetchcontent_declare(
8787
DOWNLOAD_EXTRACT_TIMESTAMP 1
8888
DOWNLOAD_NO_PROGRESS 1
8989
SOURCE_SUBDIR "ignore CMakeLists.txt"
90-
URL https://github.com/NVIDIA-RTX/SHARC/archive/6893c9af2a16df07de0cd1b70a85404e2f8fc5e8.zip
90+
URL https://github.com/NVIDIA-RTX/SHARC/archive/76238ef61abc67cd7ab29ea8a763e3226adc5ca5.zip
9191
)
9292
list(APPEND DEPS sharc)
9393

External/NRD

Submodule NRD updated 53 files

Shaders/Composition.cs.hlsl

Lines changed: 10 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
// © 2022 NVIDIA Corporation
22

33
#include "Include/Shared.hlsli"
4+
#include "Include/RaytracingShared.hlsli"
45

56
// Inputs
67
NRI_RESOURCE( Texture2D<float>, gIn_ViewZ, t, 0, SET_OTHER );
@@ -22,7 +23,7 @@ NRI_FORMAT("unknown") NRI_RESOURCE( RWTexture2D<float3>, gOut_ComposedDiff, u, 0
2223
NRI_FORMAT("unknown") NRI_RESOURCE( RWTexture2D<float4>, gOut_ComposedSpec_ViewZ, u, 1, SET_OTHER );
2324

2425
[numthreads( 16, 16, 1 )]
25-
void main( int2 pixelPos : SV_DispatchThreadId )
26+
void main( int2 pixelPos : SV_DispatchThreadID )
2627
{
2728
float2 pixelUv = float2( pixelPos + 0.5 ) * gInvRectSize;
2829

@@ -67,10 +68,6 @@ void main( int2 pixelPos : SV_DispatchThreadId )
6768
Ldirect = Ldirect * shadow + Lemi;
6869

6970
// G-buffer
70-
float3 albedo, Rf0;
71-
float4 baseColorMetalness = gIn_BaseColor_Metalness[ pixelPos ];
72-
BRDF::ConvertBaseColorMetalnessToAlbedoRf0( baseColorMetalness.xyz, baseColorMetalness.w, albedo, Rf0 );
73-
7471
float3 Xv = Geometry::ReconstructViewPosition( pixelUv, gCameraFrustum, viewZ, gOrthoMode );
7572
float3 V = gOrthoMode == 0 ? normalize( Geometry::RotateVector( gViewToWorld, 0 - Xv ) ) : gViewDirection.xyz;
7673

@@ -79,8 +76,8 @@ void main( int2 pixelPos : SV_DispatchThreadId )
7976
float4 spec = gIn_Spec[ pixelPos ];
8077

8178
#if( NRD_MODE == SH )
82-
float4 diff1 = gIn_DiffSh[ pixelPos ];
83-
float4 spec1 = gIn_SpecSh[ pixelPos ];
79+
float3 diff1 = gIn_DiffSh[ pixelPos ].xyz;
80+
float3 spec1 = gIn_SpecSh[ pixelPos ].xyz;
8481
#endif
8582

8683
// Decode SH mode outputs
@@ -178,15 +175,13 @@ void main( int2 pixelPos : SV_DispatchThreadId )
178175
}
179176

180177
// Material modulation ( convert radiance back into irradiance )
181-
float3 diffFactor, specFactor;
182-
NRD_MaterialFactors( N, V, albedo, Rf0, roughness, diffFactor, specFactor );
178+
float4 baseColorMetalness = gIn_BaseColor_Metalness[ pixelPos ];
183179

184-
// We can combine radiance ( for everything ) and irradiance ( for hair ) in denoising if material ID test is enabled
185-
if( materialID == MATERIAL_ID_HAIR )
186-
{
187-
diffFactor = 1.0;
188-
specFactor = 1.0;
189-
}
180+
float3 albedo, Rf0;
181+
BRDF::ConvertBaseColorMetalnessToAlbedoRf0( baseColorMetalness.xyz, baseColorMetalness.w, albedo, Rf0 );
182+
183+
float3 diffFactor, specFactor;
184+
GetMaterialFactors( N, V, albedo, Rf0, roughness, materialID == MATERIAL_ID_HAIR, diffFactor, specFactor );
190185

191186
// Composition
192187
float3 Ldiff = diff.xyz * diffFactor;

Shaders/ConfidenceBlur.cs.hlsl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ float2 GetGeometryWeightParams( float3 Nv, float3 Xv )
3131
Math::SmoothStep( 1.0, 0.0, abs( ( x ) * px + py ) )
3232

3333
[numthreads( 16, 16, 1 )]
34-
void main( uint2 pixelPos : SV_DispatchThreadId )
34+
void main( uint2 pixelPos : SV_DispatchThreadID )
3535
{
3636
float2 pixelUv = ( pixelPos + 0.5 ) * gInvSharcRenderSize;
3737

Shaders/DlssAfter.cs.hlsl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
NRI_FORMAT("unknown") NRI_RESOURCE( RWTexture2D<float3>, gOut_Image, u, 0, SET_OTHER );
66

77
[numthreads( 16, 16, 1 )]
8-
void main( uint2 pixelPos : SV_DispatchThreadId )
8+
void main( uint2 pixelPos : SV_DispatchThreadID )
99
{
1010
float2 pixelUv = float2( pixelPos + 0.5 ) * gInvOutputSize;
1111

Shaders/DlssBefore.cs.hlsl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ NRI_FORMAT("unknown") NRI_RESOURCE( RWTexture2D<float>, gOut_SpecHitDistance, u,
1313
NRI_FORMAT("unknown") NRI_RESOURCE( RWTexture2D<float4>, gOut_Normal_Roughness, u, 4, SET_OTHER );
1414

1515
[numthreads( 16, 16, 1 )]
16-
void main( uint2 pixelPos : SV_DispatchThreadId )
16+
void main( uint2 pixelPos : SV_DispatchThreadID )
1717
{
1818
float2 pixelUv = ( float2( pixelPos ) + 0.5 ) * gInvRenderSize;
1919

Shaders/Final.cs.hlsl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ NRI_RESOURCE( Texture2D<float4>, gIn_Validation, t, 2, SET_OTHER );
99
NRI_FORMAT("unknown") NRI_RESOURCE( RWTexture2D<float3>, gOut_Final, u, 0, SET_OTHER );
1010

1111
[numthreads( 16, 16, 1 )]
12-
void main( uint2 pixelPos : SV_DispatchThreadId )
12+
void main( uint2 pixelPos : SV_DispatchThreadID )
1313
{
1414
float2 pixelUv = float2( pixelPos + 0.5 ) * gInvOutputSize;
1515

0 commit comments

Comments
 (0)