Performance inquiry: Instanced Skinned Meshes vs. GPU Static Meshes for dense PCG Grass

Hello,

I am looking for some advice regarding performance and best practices for rendering dense grass using the PCG framework.

Our Setup: Right now, we are using a modified version of the PCG GPU Grass Template. Because our current grass setup lacks wind simulation, our foliage artist has created new grass assets rigged with bones (Skeletal Meshes) so they can be animated to move with the wind. He would like us to integrate these into our dense grass setup.

My Questions:

  • Is it recommended to use Instanced Skinned Meshes for dense ground cover like grass?
  • What is the performance overhead of instancing thousands of bone-driven meshes via PCG compared to using the traditional approach (Static Meshes spawned on the GPU using World Position Offset for wind)?

We want to make sure we understand the performance implications before committing to this workflow. Any insights or recommendations would be greatly appreciated!

Thank you

[Attachment Removed]

Hey there! I would absolutely be using GPU-only instances for my grass. You can still get wind motion on those using the old World Position Offset technique. The skinned mesh setup is really meant more for things that need more complex and chained movement like trees and large shrubs. Grass doesn’t really have a chain of joints, and I think the anim setup for those is going to outweigh the cost of a simple WPO wind. If you’re trying to get them to react to the exact same wind via the DynamicWind plugin, you might want to invest some dev time into pulling params from DynamicWind into a material parameter collection that your grass can pick up on.

[Attachment Removed]

Hello, Sorry for the late awnser. Thanks I will show your awnser to my Team. Thanks you again!

By the way, I really enjoy your presentation, they are super smooth and easy to understand.

[Attachment Removed]