AkilarLiao

AkilarLiao

Building a Cross-Platform GPU Procedural Grass System in Unity URP (Optimized for Mobile)

Hello Devtalk Community,

I’m sharing a GPU-Driven Procedural Grass System for Unity URP, heavily optimized for mobile. Key Features & Challenge: This system handles Procedural Generation and implements precise ViewFrustum, Distance, and FilterMap Culling entirely on the GPU. However, I faced the common mobile hurdle: SSBOs being unstable in the Vertex Shader on low-end hardware. My Solution: To ensure robust cross-platform stability, I bypassed the unstable SSBO path. The Compute Shader now writes instance data (including culling results) to a RenderTexture (UAV), which is then sampled by the final shader. Seeking Expert Opinion: This RenderTexture method guarantees stability, but introduces potential texture cache overhead. Is this the most practical performance/stability trade-off for commercial URP Mobile development today?

I’m keen to hear your critical thoughts. — Full Technical Breakdown (Including implementation details on Culling):

Source Code (GitHub):

First Post!

AkilarLiao

AkilarLiao

Just to close the loop on this thread:

The discussion influenced how the system evolved,
especially regarding cross-platform stability and GPU-only workflows.
I later summarized the technical reasoning and lessons learned in this write-up:

The same approach has since been packaged into a Unity tool for practical use:

Where Next?

Popular Game Dev topics Top

AstonJ
I hope we get some join at some point :star_struck: PS5 specs: Anyone else looking forward to the PS5? I am! :grin:
New
Margaret
Hello game developers. I’m an editor at The Pragmatic Bookshelf. I have a book by our own Tammy Coron on Native Apple Game Development wi...
New
First poster: bot
Sony Unveils ‘Spatial Reality Display’ with Eye-tracking for Glasses-free 3D Viewing. Sony recently unveiled Spatial Reality Display, a ...
New
AstonJ
https://www.powerlanguage.co.uk/wordle/ You have to start by entering a word (rather than just random characters) Here’s today’s (...
New
Help
I am trying to crate a game for the Nintendo switch, I wanted to use Java as I am comfortable with that programming language. Can you use...
New
Devmar1
Hi Guys, What is your opinion about geo-distributed testing, do you and use it and why? And which resources do you use for testing pro...
New
New
RobertRichards
The quality of gaming has already received a terrific boost with the arrival of next-gen AR (Augmented Reality), VR (Virtual Reality), an...
#vr
New
grlnwrld
Founder, Barcelonam Spain I am looking for web game devs with experience in Javascript / React and backend (Dynamo/GraphQL) for a Gamifi...
New
bic
Hello everybody :slight_smile: I’m making a tool with the goal to help creating branching dialogues for game development. I want to make...
New

Other popular topics Top

dimitarvp
Small essay with thoughts on macOS vs. Linux: I know @Exadra37 is just waiting around the corner to scream at me “I TOLD YOU SO!!!” but I...
New
Exadra37
Oh just spent so much time on this to discover now that RancherOS is in end of life but Rancher is refusing to mark the Github repo as su...
New
AstonJ
If you are experiencing Rails console using 100% CPU on your dev machine, then updating your development and test gems might fix the issu...
New
PragmaticBookshelf
Build highly interactive applications without ever leaving Elixir, the way the experts do. Let LiveView take care of performance, scalabi...
New
Maartz
Hi folks, I don’t know if I saw this here but, here’s a new programming language, called Roc Reminds me a bit of Elm and thus Haskell. ...
New
husaindevelop
Inside our android webview app, we are trying to paste the copied content from another app eg (notes) using navigator.clipboard.readtext ...
New
PragmaticBookshelf
Get the comprehensive, insider information you need for Rails 8 with the new edition of this award-winning classic. Sam Ruby @rubys ...
New
AstonJ
This is cool! DEEPSEEK-V3 ON M4 MAC: BLAZING FAST INFERENCE ON APPLE SILICON We just witnessed something incredible: the largest open-s...
New
NewsBot
Node.js v22.14.0 has been released. Link: Release 2025-02-11, Version 22.14.0 'Jod' (LTS), @aduh95 · nodejs/node · GitHub
New
mindriot
Ok, well here are some thoughts and opinions on some of the ergonomic keyboards I have, I guess like mini review of each that I use enoug...
New