#Adding a custom SurfaceData property / gbuffer to a URP project

1 messages · Page 1 of 1 (latest)

solar trench
#

I recently tried adding a custom SurfaceData property / gbuffer to URP and it was a lot of work. I suspect it wasn't on the Unity team's radar as something users are likely to want to do, which is understandable because I think it's an advanced topic that most projects won't need.

However, I've found that the workflow of adding a SurfaceData property / gbuffer is more cumbersome than it needs to be right now, and it's possible to improve this a lot with a few small changes. (Detailed information is in the linked repository)

My question is two-tiered:

  • Is there anything in the works to make it easier to expand SurfaceData / add a gbuffer? It would be amazing to be able to do this without having to modify the URP package.
  • Having recently looked into the matter, I can suggest a few specific low-impact changes that would go a long way in improving this workflow. Is there any way I can contribute this? I'd be more than happy to sign an NDA and submit a pull request, for example.
GitHub

Example for adding a custom gbuffer to pass along 4 custom values in a URP deferred project. - RoyTheunissen/URP-Custom-Gbuffer

autumn crypt
#

Hey Roy, I noticed your forum post, thanks for sharing!

#

We don't have this in the works currently, although we have some ideas to support different gbuffer layouts which will help to unify the pipelines.

#

Feel free to create a PR with the (minimal) changes you would need to improve this workflow. The less change the better, can't be a breaking change. I can take a look then but I can't promise anything.

solar trench
#

Oh, sweet! There's a public repository I can contribute to? I went looking for one yesterday and didn't find it

autumn crypt
#

you can create a PR there if I'm not mistaken. We won't land that directly though.