Aline (standalone or one built-in to Astar) can cause errors in Render Graph mode

  • ALINE version: 1.7.6
  • Unity version: 6000.0.28f1
  • Render pipeline: URP

The water asset “Crest” has a depth probe feature and as part of how it does its rendering process it iterates over all the Render Features on the current URP pipeline asset and removes them for its render before re-adding them.

This works fine for other things, but the DrawingManager.cs adds the AlineURPRenderPassFeature pass in code in BeginCameraRendering which causes errors when Crest tries to render it’s depth probe. I believe I’ve also seen this cause errors with some other packages when using Render Graph.

My workaround solution is to just comment out the “renderPassFeature.AddRenderPasses(renderer);” line in DrawingManager.cs and instead manually add the Render Feature to my URP asset. That way it still renders fine for Pathfinding gizmos but will be found and disabled by Crest when needed.

I’d suggest forcing the pass to be added in code like that is probably not the best solution and it might be best to just have it be added as a Render Feature normally. I think people are generally used to adding Render Features from asset store packages manually and you could include a helper info/button on the Astar component to add it too.

Thank you for the feedback.

This is an interesting trade-off, because a lot of users just want things to work out-of-the-box as well.

Yeah I’d agree, but I just can’t think of a way where the current approach could be kept and something like what Crest is doing could work.

I don’t think Crest’s approach is great here, but I can imagine other legit reasons why you wouldn’t want Aline forcing its pass into every camera render.

It’s not easy trying to figure out the right approach for something like this with the myriad pipelines, rendering options and accounting for ease-of-use for a variety of users so I don’t envy you.