Advice about Map Construction and performance

Hello to everone,
I’de like to ask an advice regarding the performance on constructing a map.
I’m gonna go to create a big castle, with interior and exterior, using modular meshes like walls, stairs, windows, floor etc. The castle is gonna have a lot of rooms forming a kind of labyrint.
Of course i’m gonna to use stream level between rooms and exterior/interior, but i was wondering if I have to use Hierarchical static mesh or i can simply place static mesh in the map and streamed level. I’m really interested about performance since my project is in VR.
My main problem about using Hierarchical Instanced mesh is to understand if they can really give e boost on performance reducing drawcalls, because in order to use them i have to create actors, use the HISM compenent in it, and creater instances one by one and place them manually, this is really time consuming…

Any kind of advice can be welcomed.
Thank you in advance

Out of curiosity - are you planning on having an outside view from windows that would require you to actually create a landscape and deal with that, or is this just all interiors with no views?
aside from the obvious fact that for perfomance sake the views can be faked with images - if you want to add that extra layer of complexity at all…

I recently ran several tests with pie, vr, a gtx 160 ti, and around 2k static meshes that were being procedurally added in (with 10 different materials).
The performance drop wasnt really too bad - or mybe i just expected much worse.

Hi, In fact the castle is in scale 1:1 and yes i plan to use also a landscape. The castle can be visited from external and internal point of view.

This seems to be my most common response as to questions regarding performance questions.:smiley:

So a truthful response is generally yes/no/maybe as to issues relating to performance and the only way to get from here to over there is via the iteration process and place stuff into the world space and see what happens and deal with the issues and as part of the process test and test again using the profiling features available in the Unreal 4 engine.

The thing is the thing that you think would have the highest cost generally does not as compared to an added asset that inherents the loss. Geometry for example is a problem long solved by the use of the GPU so as an asset is tofu so very little impact as to level of detail as it relates to optimization already build into the game engine that most time the level of detail put into the mesh has a smaller impact as compared to complex materials that is applied to it. This is where profiling comes in as it will tell you if the the tofu is adding the fat or is it the hot fudge, whipped cream, and chopped nuts

As advice what you posted is a darn good starting point as for the need of some kind of environment management as to the best practice of iteration by doing so my starting point is usually setting up source chain that connects the asset in UE4 to the asset pipeline being built in 3ds Max, where I do my asset building.

So bottom line there are to many things that can go bump in the night that I’ve told my guys to build it to the best of thier ability and we will fix it in post :wink:

Definitely landscape mesh conversion then, as well as a robust level streaming system with manual cues for loading/unloading levels of rooms.

For streaming specifically, the content examples do a good job at showing how to do it with small rooms, locking doors to prevent access etc.

for the mesh replacement it is a bit more complicated, it’s basically predicated on being able to actually create a proper landscape.
basically a few MMO tutorials or things like that will end up showing you the right approach for it… I don’t have a link handy or I’d share.

Thank you for your answers… I understod that i have to do some test…
It seems that the use of HISM is not so obvious comparing to the use of normal static mesh.