Open2
URP17/RenderGraph雑記
Pass内でCommandBuffer.SetGlobal〇〇系をする場合builder.AllowGlobalStateModification(true);
する必要がある。
using (var builder = renderGraph.AddRasterRenderPass<PassData>(profilerTag, out var passData))
{
passData.globalHogeValue = 0.5f;
//Pass内でGlobalの操作を行う場合は、trueにする必要がある
builder.AllowGlobalStateModification(true);
builder.SetRenderFunc((PassData data, RasterGraphContext context) =>
{
using (new ProfilingScope(context.cmd, profilingSampler))
{
// Globalの操作
context.cmd.SetGlobalFloat("_HoveValue", data.globalHogeValue);
}
});
}
RenderingUtils
を使用した、場合のRendererListHandle
の取得
RenderingUtils.CreateRendererListObjectsWithError(renderGraph,ref renderingData.cullResults, cameraData.camera, filteringSettings,sortingCriteria, ref passData.rendererList);