Hello Everyone,
First post here!
Our team is currently reviewing Unreal Engine in order to port our game which currently uses the Neoaxis Engine
Of course it wasn’t as pretty as Unreal, but our tweaked renderer was running quite nicely with a large number of assets per level (over 50k, with logic, particles) , and the levels filesize were kept pretty reasonable.
The only issue is that Neoaxis doesn’t supports deferred lighting, which has been supposed to come for the past 3 years or so.
In addition to that, we were in partnership with NeoAxis team, we did our part (optimisations sharing, community management, tutorials etc) but the developer of the engine didn’t do his part, took our code and contributions, stole the money one of us lended him and banned us, as well as other people from the community (who just renewed their license) from the forums and completely locked them.
So we will stop using Neoaxis and are looking for a replacement.
UE is for sure looking great graphically, but we have some specific requirements in terms of performance considering how our levels are built.
-
Our game happens in Dungeons, so only a fraction of the meshes are rendered at the same time. At the moment, culling relies on an old school portal system (but it works well)
-
Each levels are build with small walls,ceiling etc… chunks and contains approximately 50k Assets (in that around 20k are small details meshes without collision), 95% of them being static meshes. the rest are lights/particles/dynamic objects/logic. There is around 300 unique meshes per levels, so everything is currently heavily instanced or batched ( physX + rendering batching, for meshes lower than 1000 tris, which is something like 90% of the meshes) in Neoaxis.
-
Physics and tick are also disabled with camera distance (currently 200 meters), so we don’t have perf problem with these.
From our preliminary tests, unreal doesn’t seem to have batched static meshes and instancing doesn’t seem to be automated, so the performance when having a large number of mesh doesn’t seem to be that good.
I am wondering, is there a way to make theses kinds of level in UE? Is there batching for rendering and physics implemented? What about instanced meshes. I have read a bit about it but it doesn’t seem to be automatic? Can we implement theses ourselves?
It seems there is the possibility to split the level in sublevels, but would this work for non linear levels? Will it be able to load all the static meshes for the chunks next to the player with background loading (that still means quite a large number of meshes!)? What does it means for level designers, would they have to work one (or a few) chunks at a time in the editor and not on the whole level?
We will probably have a lot of other question for you guys later, but for now, this is our biggest concern.
Thanks a lot for your help,
The Warcry team