Browse Source

Feature: Non-compute shader alternatives for SH coefficient generation
- Primarily for older hardware and mobiles

BearishSun 8 years ago
parent
commit
1cd55dec0a

BIN
Data/Engine/Shaders/IrradianceAccumulateCubeSH.bsl.asset


BIN
Data/Engine/Shaders/IrradianceAccumulateSH.bsl.asset


BIN
Data/Engine/Shaders/IrradianceComputeSHFrag.bsl.asset


+ 1 - 1
Data/Raw/Engine/Shaders/IrradianceAccumulateSH.bsl

@@ -38,7 +38,7 @@ technique IrradianceAccumulateSH
 				float3 dir = getDirFromCubeFace(gCubeFace, uv);
 				dir = normalize(dir);
 				
-				float4 value = gInputTex.SampleLevel(gInputSamp, dir, gCubeMip).rgb;
+				float4 value = gInputTex.SampleLevel(gInputSamp, dir, gCubeMip);
 				sum += value;
 			}
 			

+ 1 - 0
Source/RenderBeast/BsRenderBeastIBLUtility.cpp

@@ -336,6 +336,7 @@ namespace bs { namespace ct
 		gRendererUtility().drawScreenQuad();
 
 		rapi.setRenderTarget(nullptr);
+		rapi.setViewport(Rect2(0, 0, 1, 1));
 	}
 
 	POOLED_RENDER_TEXTURE_DESC IrradianceAccumulateCubeSHMat::getOutputDesc()