Protonscatter with simple billboard grass tufts

Hi

I recently joined a game jam to force myself to learn to code, and chose Godot since it seemed fairly user friendly. I really like it, but some of the solutions I came up with, although they work, seem fairly unoptimized and heavy. The biggest of these is probably my randomized scattered grass. I tried proton scatter, and had success in spreading objects across the terrain like I wanted. However, I wanted simple billboard pixel art grass (A.k.a sprite3d) and protonscatter does not seem to want to scatter this. It does work however, If I choose “Make copies” instead of instantiate. I have a strong feeling that this makes the game 100 times heavier though and it has a huge “hickup” at the start, before it runs fairly smoothly. My question as a complete noob is. What would be a good and lightweight way of scattering simple 3d pixel art billboard sprites across a landscape?

Hope this makes sense, thanks.

Best it to use MultiMeshInstance3D node. It uses hardware accelerated mesh instancing. I’m not familiar with proton scatter so I don’t know if it can output directly to that. You can use it indirectly to create instance transforms and then pass those transforms to multi mesh node.

For a sprite, write a tool script. Then you can feed it an area, click a button and have it randomly applied in the editor. Then go and tweak things.

Hi. Thanks for the replies. I am currently testing multimesh scatter addon instead of proton scatter since it can place quad meshes with billboard :slight_smile: I checked out tool scripts which I definitely have to try out. Since this is my first game, I made for a jam I will go for easy solutions, but I will definitely check out both tool scripts and multimesh in depth when I am done with this. Thanks so much for the replies.

1 Like