Is it feasible to just make an entire level inside a 3D package and then import all of it at once?

Well perhaps not in a single piece it would probably be better to import it in chunks but you get the idea. I am a Modo User and I think it’s a good modeling program that might be well suited for level design. However there are a couple questions I have:

  1. UV mapping. As far as I understand it’s better for performance if a model (which the level is as far as the engine is concerned) doesn’t contain too many different UV sections/areas. Would this be a problem for level design? The idea is to treat the level texturing in a similar way as you would in a BSP editor by making every flat surface it’s own thing so that it can have it’s own separate texture. Is this a bad idea?

  2. How big of a deal is it to create collision shapes for a level if you make the levels in this way? Can’t I just copy/paste most of the level geo into collision shapes before exporting the level into unreal 4?

Depending on Unreal Engine Version (i’ll assume for a moment you mean UE4) you can definitely model an entire level for UE4 in a 3d app, Exporting each mesh with Collision Primitives, but read further for Optimization tips and tricks…

I would try to make large textures/skins for multiple models ad use multi/sub-objects material ID’s for multiple textured/skinned models, and also take advantage of HLOD (Hierarchical Level Of Detail) Models, where at a distance, multiple models (like rubble and a sidewalk, from 300meters) would be in one single HLOD mesh, with one texture/skin applied… Collision should be optimized, ie. use an optimizer modifier or simply weld vertices together, and at 300meters, the mesh will basically resemble the same exact thing, more-so if it’s being blocked (occluded) by another object. if you cannot use HLODs i would use a basic LOD for each model, (LOD1,LOD2, please Google “Unreal” (version) “LOD” for exact prefixes, i’m in the middle of a UDK project for America’s Army: Proving Grounds, and don’t remember atm.

Also, You are right about UV mapping being taxing. Overlapping UVs in UE4 isn’t all that bad, assuming the LightMaps can do their job, i would try to keep Overlapping UVs at a bare-minimum, to none at all. But, keeping multiple mesh’s textures/skins on the same Material can help when loading them, and reduce the “texture/mesh popping” issue UE4 has been known to have.

If you Copy/paste a model for Collision, for say a chair with 2,300 triangle polygons, that method isn’t a great way to optimize, i would weld vertices/edges as i mentioned above, and make a more “basic” primitive out of the chair for Needed-Only Collision. That is, to block a player’s character pawn, and any projectiles and/or objects and/or emitters with collision.

For other versions of Unreal, like UDK and versions before that, it is also best to export each model individually, With Multiple LOD Models and use a modular format, re-building the map, but you can adjust the pivots or centers of each mesh to import at the correct spacing and scale, if that works with Modo.

GL

Not that big of a fan of modular level design to be honest. If possible I would rather just make something like an entire room minus some of the room objects (chairs, boxes etc) and then import that as a single piece.