|
|
|
|
|
|
#ifndef LIGHTLOOP_SHADOW_CONTEXT_HLSL |
|
|
|
#define LIGHTLOOP_SHADOW_CONTEXT_HLSL |
|
|
|
|
|
|
|
#define SHADOWCONTEXT_MAX_TEX2DARRAY 4 |
|
|
|
#define SHADOWCONTEXT_MAX_TEX2DARRAY 1 |
|
|
|
#define SHADOWCONTEXT_MAX_SAMPLER 3 |
|
|
|
#define SHADOWCONTEXT_MAX_SAMPLER 0 |
|
|
|
#if SHADOWCONTEXT_MAX_TEX2DARRAY == 4 |
|
|
|
TEXTURE2D_ARRAY(_ShadowmapExp_VSM_0); |
|
|
|
SAMPLER(sampler_ShadowmapExp_VSM_0); |
|
|
|
|
|
|
|
|
|
|
TEXTURE2D_ARRAY(_ShadowmapExp_VSM_2); |
|
|
|
SAMPLER(sampler_ShadowmapExp_VSM_2); |
|
|
|
#endif |
|
|
|
|
|
|
|
TEXTURE2D_ARRAY(_ShadowmapExp_PCF); |
|
|
|
SAMPLER_CMP(sampler_ShadowmapExp_PCF); |
|
|
|
|
|
|
ShadowContext sc; |
|
|
|
sc.shadowDatas = _ShadowDatasExp; |
|
|
|
sc.payloads = _ShadowPayloads; |
|
|
|
sc.tex2DArray[0] = _ShadowmapExp_PCF; |
|
|
|
sc.tex2DArray[1] = _ShadowmapExp_VSM_0; |
|
|
|
sc.tex2DArray[0] = _ShadowmapExp_PCF; |
|
|
|
sc.compSamplers[0] = sampler_ShadowmapExp_PCF; |
|
|
|
#if SHADOWCONTEXT_MAX_TEX2DARRAY == 4 |
|
|
|
sc.tex2DArray[1] = _ShadowmapExp_VSM_0; |
|
|
|
sc.compSamplers[0] = sampler_ShadowmapExp_PCF; |
|
|
|
sc.samplers[0] = sampler_ShadowmapExp_VSM_0; |
|
|
|
#endif |
|
|
|
#if SHADOWCONTEXT_MAX_SAMPLER == 3 |
|
|
|
sc.samplers[0] = sampler_ShadowmapExp_VSM_0; |
|
|
|
#endif |
|
|
|
#endif // LIGHTLOOP_SHADOW_CONTEXT_HLSL |
|
|
|
#endif // LIGHTLOOP_SHADOW_CONTEXT_HLSL |