Few questions regarding to complex objects creation and lighting on mobile

Hello guys,

We’re a small indie game development team. We’re building an iOS puzzle game with realistic graphics and such and thanks to UE4, the environment looks simply amazing so far. But as we are getting into building the dynamic pieces and more complex objects, we are facing some issues which I think maybe the community has some tricks or tips on how to solve them. By complex objects I mean boxes with multiple layers and tons of small moving parts like lids, gears and bolts and such. The Room series from Fireproof Games has great examples of these kind of complex objects. Here are the questions:

  1. Our designer is currently doing the modelling and designing work inside Blender. Some of the objects have more than 50 moving parts. Currently we’re exporting them as individual static meshes and reassemble them inside the Editor. Now some objects are round shape and and difficult to align them properly inside the Editor. Furthermore our designer said like he’s doing repeated work since the object is already assembled inside Blender. We’ve tried to import them as a group but either they got combined as a single mesh which then we cannot move the moving parts, or they have the same pivot point which is also no good because some moving parts require pivot point to locate at specific locations so they can be rotated correctly. Is there a better workflow to bring complex objects from Blender to UE4 without having to reassemble them again inside the Editor and also keep their pivot point locations in place? Sorry for bringing up the comparison but I think Unity can import Blender objects with everything in place.

  2. Since they will have complex animation sequence (like how the moving parts will move in order to reveal a new layer of the box) and our designer is visualizing them inside Blender. Is there any way to import those Blender animation into UE4 and use them? We’ve thought of adding bones to these complex objects and importing them as skeletal meshes with animations but would like to know if there are better solutions to this.

  3. Continuing on with 2. If using skeletal meshes is the way to go, is there any way to enable the “Light as if Static” option that can be found on static mesh since while these complex objects have many movable parts, but their location in the level is pretty much static? We’ve tried implementing simplified version of an object in the Editor and used that option which generated satisfying results. (Implemented as movable static meshes and animated using Blueprint Timeline)

  4. Does occlusion culling (or visibility culling, not sure how to call this feature) work correctly under mobile? When we PIE and used “stat scenerendering” to see the draw call count, draw call count is greatly reduced when only the wall is visible. But when we play using the ES2 rendering or on iPad the same location takes up significantly more draw calls (as if we can see through walls even though only the wall is visible. I’ve attached the screenshots for comparison. Is this normal? Since we’re afraid that once we started to bring in more complex objects, we’ll have serious performance issues. If this is how it is on mobile, how should we work around this, by using level streaming?


Sorry if the questions sounded newbie-ish as this is our first game. But overall our experience with UE4 has been fantastic so far!

Thanks!

A quick update on the questions. For question 4 we’ve broken down our main level into sublevels by different rooms and load levels as needed through Blueprints. However we would still like to know if the current culling on mobile is working or not.

For the complex objects we’re currently trying out the skeletal mesh approach, hopefully lighting won’t bring too many issues.

Thanks!