vault backup: 2024-03-07 17:47:13
This commit is contained in:
parent
4f3c7f05de
commit
d9812fbd5a
@ -53,8 +53,6 @@ GBuffer相关信息(精度、顺序)可以参考FetchLegacyGBufferInfo()。
|
||||
- TargetSeparatedMainDirLight(MRT7)
|
||||
|
||||
几个动态MRT的存在条件与Shader判断宏:
|
||||
***查找IsUsingBasePassVelocity()*** 被使用过的地方。
|
||||
|
||||
- OutGBufferE(PrecomputedShadowFactors):r.AllowStaticLighting = 1
|
||||
- GBUFFER_HAS_PRECSHADOWFACTOR
|
||||
- WRITES_PRECSHADOWFACTOR_ZERO
|
||||
@ -180,6 +178,38 @@ else if (Mat.IS_BASE_PASS)
|
||||
}
|
||||
```
|
||||
|
||||
位于FShaderCompileUtilities::ApplyDerivedDefines(),新版本逻辑遍历数据由GBufferInfo.cpp中的FetchLegacyGBufferInfo()处理。
|
||||
```c++
|
||||
#if 1
|
||||
static bool bTestNewVersion = true;
|
||||
if (bTestNewVersion)
|
||||
{
|
||||
//if (DerivedDefines.USES_GBUFFER)
|
||||
{
|
||||
for (int32 Iter = 0; Iter < FGBufferInfo::MaxTargets; Iter++)
|
||||
{
|
||||
if (bTargetUsage[Iter])
|
||||
{
|
||||
FString TargetName = FString::Printf(TEXT("PIXELSHADEROUTPUT_MRT%d"), Iter);
|
||||
OutEnvironment.SetDefine(TargetName.GetCharArray().GetData(), TEXT("1"));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
// This uses the legacy logic from CalculateDerivedMaterialParameters(); Just keeping it around momentarily for testing during the transition.
|
||||
SET_COMPILE_BOOL_IF_TRUE(PIXELSHADEROUTPUT_MRT0)
|
||||
SET_COMPILE_BOOL_IF_TRUE(PIXELSHADEROUTPUT_MRT1)
|
||||
SET_COMPILE_BOOL_IF_TRUE(PIXELSHADEROUTPUT_MRT2)
|
||||
SET_COMPILE_BOOL_IF_TRUE(PIXELSHADEROUTPUT_MRT3)
|
||||
SET_COMPILE_BOOL_IF_TRUE(PIXELSHADEROUTPUT_MRT4)
|
||||
SET_COMPILE_BOOL_IF_TRUE(PIXELSHADEROUTPUT_MRT5)
|
||||
SET_COMPILE_BOOL_IF_TRUE(PIXELSHADEROUTPUT_MRT6)
|
||||
}
|
||||
#endif
|
||||
```
|
||||
|
||||
### 是否需要Toon
|
||||
在材质中:
|
||||
```c++
|
||||
|
Loading…
x
Reference in New Issue
Block a user