Noob question here, i’m very new to game engine. i need your advise…
So, i’ve done creating and positioning some low poly objects for my game level. i’ve done it in 3ds max.
You can see them in the image i’ve attached, the total count of the objects is 650 objects with 40k tris (the number shown in the image is for ALL the objects include the hidden ones)
some of the objects are identical, some are unique. they are all separated, not combined. many of them will be static, not animated, few of them will be animated and clickable (or interactable) in game.
I have tried moving all their pivot points into one position (0,0,0) in max, exported them as single FBX file and import the FBX into UE4, but when i tried to place them all (drag and drop) into scene, it crashed. so in the second approach i drag and drop them into UE4 scene about 20 to 30 objects at a time, and its working fine.
my question is:
Is this the correct way of creating level props and placing them into UE4?
If all the objects pivot is at one position, they will be positioned correctly in the UE4, yes, but what if i want to animate them on their own center point, like rotating, even moving them is difficult because the pivot point is not on the center. what is the correct way of doing this?
many objects are identical, is it performance-wise if i import them once and duplicate them in-engine, or keep doing it like i did (duplicate them and set their position in 3ds max, and then import them all as single FBX file) ?
some info of my game:
my target platform as for now is PC, low to high spec.
the level will be a small portion of a city, it will contain about 10 buildings with this kind of interior inside them, so the total of tris in one level will be about 500K
Import the objects with the desired per-object pivot point. Build your level/map inside UE4. If (for example) you wanted to build a wall, with trim and decals etc, use the largest structure as the base, and use “ADD COMPONENT” for the remaining components of the trim and decals. The first object has the main positional data, and the remaining components will use this as their starting position relative to it.
Use instancing. Make it part of your design process and optimisation process.
Judging by your picture, I would say that is one object with several sub objects and the performance hit will not be that great from what I can tell as you are using lots of similar assets, just in a different arrangement.
It’s really an optimisation question you pose, not a capability question. The engine can take it.
Gotta check Datasmith, so its basically a ‘bridge’ from digital content creation softwares such as 3ds max to unreal engine, am i right? very interesting. thanks for pointing it out!
So the first object will imported as a parent to its components, and we should re-position the components manually to match the 'parent object’s position? im going to check it out right away, but what i get at this point is; my workflow is incorrect, i should arrange my level inside UE4 instead of arranging them in 3ds max and import them all into ue4?
got it. but i wonder if there is hundreds or even thousands of identical objects that need to be instanced, lets say a chairs in a football stadium. isn’t it very tedious task to import single chair, instanced it and arrange them in UE4? can we just instance it in max and import them as instanced objects into UE4?
i really appreciate your time for answering my questions. thanks again.
You can arrange your objects with instancing in 3ds Max and export it all to FBX and then use the FBX full scene import option:https://docs.unrealengine.com/en-us/Engine/Content/FBX/FullScene
It can create a blueprint which contains the positioning info of all of the objects in the scene so you can have proper instances in UE4 that you’ve set up in 3ds Max.