随着ShadingModel的不断增加,在5.5.3中通过在ShadingCommon.ush中增加#define SHADINGMODELID_XXX的方式进行ShadingModel的扩展会触发下面的Static Assert,导致cook失败
`//PathTracingCommon.ush
#define SHADINGMODELID_MEDIUM (SHADINGMODELID_NUM + 1)
#define SHADINGMODELID_SOLID_GLASS (SHADINGMODELID_NUM + 2)
HLSL_STATIC_ASSERT(SHADINGMODELID_MEDIUM <= SHADINGMODELID_MASK, “”);
HLSL_STATIC_ASSERT(SHADINGMODELID_SOLID_GLASS <= SHADINGMODELID_MASK, “”);`
cook报错如下
UATHelper: Cooking (Windows): /Engine/Private/PathTracing/PathTracingCommon.ush:40:1: error: static_assert failed “”
UATHelper: Cooking (Windows): _Static_assert( (14 + 2) <= 0xF , “” );
UATHelper: Cooking (Windows): ^ ~~~~~~~~~~~~~~~~~~~~
UATHelper: Cooking (Windows):
请问需要如何修改才能规避这个StaticAssert并且保证新增的shading model 正常工作,如果直接修改SHADINGMODELID_NUM 和SHADINGMODELID_MASK的宏定义是否会影响其他的逻辑?