Still learning all the ins and outs of unreal. Focusing on performance right now and I was curious about batching static objects for less draw calls. If the object has an LOD does that get batched as well? Or should static objects have no LODs?
when you say batched, do you mean merged, so 50 objects are now 1? That would be an opimization but its hard to say if the collisions would merge b/c I don’t know how you’d plan to merge them. You might need to remake them, you’d definitly have to merge them also and re-export. If you used the engine to make your collision then how would you merge the objects?
Generally when someone says batch they are talking about a process of grouping together a number of commands to run at the same time or one right after the other automatically. Like batch process images would do a command to each image in a group.
When i say it i am talking about static batching… as in automatically batching geometery that is static and shares the same material. At least thats how it worked in unity. I guess im not sure how unreal works in regaurds to limiting draw calls yet. Do we have any resource on that? How do i set up a modular environment and keep dragging and dropping stuff but raise hte performance since they are objects that dont move.
Lets say I have 2 different walls… and 2 different pilars… all on the same texture map… 4 seperate models using the same texture just different parts of it like an atlas. How would i get those 4 to batch together into the same draw call? Also is there any documentation on this? I might just put this question in a new post.
So whats the work flow with that? Add the instanced mesh component on my static mesh i dropped in the scene? Or do i have create some sort of blueprint? This is all very confusing.
It’s not possible to create an instance of a simple static mesh, i asked that already in the forum. if this was your question.
There is a plugin someone has developed to merge a few meshes togeter in scene or lets say to instane them.
Are you sure? I always thought that the batching is the basis of any rendering engine.
AFAIK instancing = holding one mesh data in memory, but render it in multiply instances.
batching = avoiding frequent changes of render states ( culling, blending, etc. )
I don’t know how it is implemented in UE, but for me it is a little mismatch because instancing != batching.
Let me someone to cirrect if I’m wrong.