SkinnedGrass - Performant interactive foliage

It shouldn’t have too much of an impact in small areas. Grass not in the streaming area is still included in octree calculations, if separate areas of grass use different SkinnedGrass objects and Step() isn’t called on that area’s object when out of range then it shouldn’t really cause performance issues… really comes down to how you set it up

1 Like

Hello, I thought your module was really incredible, would this work for the grass on the terrain?

1 Like

Is there a way of it only calculated in the area of the streaming range , plus perhaps a slight buffer ?

2 Likes

Amazing project! This is the first time I’ve seen a performance-viable custom grass module. Out of curiosity, have you tried seeing how an EditableMesh equivalent fares? I’d imagine it wouldn’t be as performant at the moment, given the lack of a bulk-movement API for triangles.

2 Likes

I was planning on trying that out next, probably going to do some performance benchmarks in the next couple days

1 Like

not with how the octrees are set up, only running the simulation on select grass objects is probably your best bet

1 Like

how would I make it so all grass terrain is covered with this grass?

1 Like

you have to manually place the grass, I also wouldnt recommend all grass terrain being covered for performance reasons, it’s better suited for small areas

1 Like

Love this module, it is so dope man. Thank you!

9 Likes

extremely cool, i will definetly use this in my games

1 Like

How would I go about putting the grass on the terrain like in the second video? do I have to make my own mesh of the terrain and use that? Or is there some kind of script I can make to only spawn on grass materials

2 Likes

Can you drop a tutorial on how to implement it to terrain? It would be extremely useful for my current project.

1 Like

I just ran a simple raycasting command in the workspace to position each bone on the terrain: SkinnedGrass - Performant interactive foliage - #15 by xander_z22

1 Like

I’d appreciate if you drop a place with that setted up, I have no experience with raycasting.

2 Likes

Hi! How did you do that grass burst mechanic? Was it a fake part?

How the grass system works is that the grass moves based on a position that is within the range/space it covers. With position, there is a radius u can configure to control how much of the grass you want to be effected by that position. Radius = 0 means no grass is effected. Any radius > 0, the grass within that radius is effected. The guy left a lot of comments, look into the script, you will see its very configurable and readable.

1 Like

I still don’t quite understand, it seems you activated an ability of some sort that make the grass move? Thats what I’m asking. Thank you for the reply :slight_smile:

Thanks for the reply but is it possible to exclude parts of terrain that isn’t the grass material or would i have to manually find a way also in order to cover an entire map would i have to duplicate the folder multiple times around the map or is there another way?

Did he just use Murmur: Tacet??? Good job, that was smooth.

2 Likes

Can you publish a demo place for this? Thanks.

1 Like