虚幻五的VS和PS的shader parameters创建的细节一点疑问

大佬们好,观察虚幻五的代码,在shader参数创建的时候vs和ps有一点细节不一样。

vs的方式大多是直接创建一个对象:

FCustomVS::FParameters VertexPassParameters;

VertexPassParameters.key = value;

而PS的方式大多都需要显示的AllocParamter:

FCustomPS::FParameters* PixelPassParameters = GraphBuilder.AllocParameters<FCustomPS::FParameter>();

PixelPassParameters->key = value;

请问这有什么考量吗?

按引擎源码的这个习惯来使用有问题吗?​

重现步骤

您好,直接声明的话,变量在堆上,需要自己管理变量的生命周期​,可能因为一些历史原因没有全部改过来.

我们建议全都使用​ GraphBuilder.AllocParameters 的方式去声明