I need to know your opinion about the approach I should use in this case.
Please see these house models from Sketchfab:
As you see there are these small house pieces (called house modules) that are used to build those 3 different variations of houses.
Which approach is suitable for doing so in JME?
1- Should I use the JME AssetLinkNode approach with instancing? (Size will be very small and probably there is going to be more draw calls?)
2- Or should I just batch each house into separate geometry? (Larger size and probably fewer draw calls?)
Which one do you think going to be more mobile friendly?
i dont really know. im curious too.
But myself i would batch each house separatly(because anyway they are constructed with modules)
reason is that both culling and low draw calls would work fine.
How many will you have? Will you know ahead of time how you want the houses constructed or will you determine that at runtime?
How many will you have?
Probably around 10~15 different variations of houses.
And probably there will be less than 60 houses used in each scene (game level).
All houses will be constructed ahead of time and players can just spawn a prebuilt house into the scene at runtime.
If this is for a mobile game I would batch all houses together. The less draw calls that has to happen the better for mobile.
If it was for PC I would batch each house.
This is just me and I know some of the experts will give better advice.
Is it the case that all houses will be in view or that generally, a player is only looking at a few houses at a time?
Then to me, batch per house seems the best option on Android… but I’ve never written anything for android before.
Just seems to me that it would be better for power consumption, performance, etc. if fewer things were pumped to the GPU rather than one object with all of the triangles. But maybe I’m wrong and the GPU is a better trade off.
Ok, I will go with batch per house option.
Thank you so much, guys.
Draw calls kill performance on mobile. If I remember it’s the bus width that’s the culprit. Surprisingly you can display 80k verts if your object count is sub 200 on a 2013 tablet (Galaxy Tab 2, nexus 7 era).