Files
UnrealEngineUWP/Engine/Shaders/LPVClearLists.usf
Martin Mittring ef2256631b updated LightPropagationVolume (from Lionhead Studios)
* reduced order of SH (faster but a bit more blurry)
* DirectionalOcclusion (disabled by default, can be enabled in PostProcessSettings, affects SkyLight and ReflectionEnvironments but not AmbientCube)
* Material BlockGI feature
* Spotlight support
* Uses AsyncCompute on XboxOne as optimization (order is not optimized yet)

[CL 2553823 by Martin Mittring in Main branch]
2015-05-15 18:54:37 -04:00

38 lines
1.2 KiB
Plaintext

//-----------------------------------------------------------------------------
// File: LPVClearLists.usf
//
// Summary: Shader to clear LPV linked lists
//
// Created: 2013-12-08
//
// Author: mailto:benwood@microsoft.com
//
// Copyright (C) Microsoft. All rights reserved.
//-----------------------------------------------------------------------------
/*------------------------------------------------------------------------------
Compile time parameters:
------------------------------------------------------------------------------*/
#include "Common.usf"
#include "LPVWriteCommon.usf"
#include "LPVGeometryVolumeCommon.usf"
//------------------------------------------------------------------------------
RWByteAddressBuffer RWVplListHeadBuffer;
RWByteAddressBuffer RWGvListHeadBuffer;
//------------------------------------------------------------------------------
[numthreads(4,4,4)]
void CSClearLists(uint3 DTid : SV_DispatchThreadID)
{
uint i = GetGridAddress( DTid );
// 0 - terminated lists (index+1) - prevents infinite loop when reading off the end of the list
RWVplListHeadBuffer.Store( i*4, 0 );
RWGvListHeadBuffer.Store( i*4, 0 );
}
//------------------------------------------------------------------------------