On the note of Nanite trees actually, in addition to some testing I did earlier, I got to hear about Brian Karris’s (creator of Nanite) explaination of the limitations of Nanite with World Position Offset.
Essentially, in its’ current state, WPO won’t be the same ‘Takes whatever you can throw at it’ paradigm as vanilla Nanite. It will let you place a lot more instances of WPO geometry than the traditional pipeline (I’ve tested about 10x more supported w/Nanite than without), but it’s not really designed for ambient movment.
Basically, if you have a cartoon game and you want to hit an object and have it squash and stretch, Nanite supports that. That’s because it has to call up special shaders to do the WPO math compared to rigid geo, and those have a cost. But if you have world-persistant geometry, such as grass swaying in the wind, that’s a much worse use case, because Nanite can’t ever bring in the fast path processing.
So, Trees can be animated with Nanite, as long as there aren’t too many on-screen, or you disable WPO if they get far away.