0 votes

How would billboarding be achieved using multimesh? Am I able to set the mesh to be a sprite3D or would I need to write a shader?

Edit: I should probably have given my question a bit more context (although I have come up with a solution which I will describe in an answer below). Trying to render fairly large forests in my open world game - currently using multimesh with some basic LOD to show or hide each forest (they are grouped together in multimeshes of a couple of hundred mesh instances. This is ok and runs fine but I've realised I don't actually need the detail of meshes for what I'm going for and that a billboard that's always facing the player should be perfectly fine even up close so I've decided I'm going to try replace my meshes with a textured quad

in Engine by (103 points)
edited by

1 Answer

+1 vote
Best answer

After doing some reading I discovered that there are apparently some performance problems with sprite3D at the moment? But also realised that this wasn't compatible from what I could see with multimesh. So instead I made a quadmesh and added a spatial material to it. Under flags I ticked transparent, under parameters I set billboard mode to Y-Billboard and ticked use Alpha Scissor, and then under albedo I set my texture to just a png which I got by rendering my tree model in blender with lighting etc within blender.

This gave the result of:


which is the effect I was after. I can do a bit more tweaking with the lighting as when I move the camera the lighting changes but for now it is fine and it runs at 60fps all day long. Hope that helps

by (103 points)
selected by
Welcome to Godot Engine Q&A, where you can ask questions and receive answers from other members of the community.

Please make sure to read Frequently asked questions and How to use this Q&A? before posting your first questions.
Social login is currently unavailable. If you've previously logged in with a Facebook or GitHub account, use the I forgot my password link in the login box to set a password for your account. If you still can't access your account, send an email to [email protected] with your username.