I did a Doom Level 1 (original) remake in Unity (unity package file included for free) ... https://arowx.itch.io/doom-retro-remake-level-1 The title Screen shows the 3d level made in blender. And in game screenshot with UI and selfie camera shot. It only took about a week, a lot of the time was spent learning how the original Doom level worked and building it up to look similar. And realising that Unity Navmesh does not do elevators or moving platforms...! However if you consider Wolfenstein 3D and Doom they both had lots of levels and used the same level editor to make their level files or WADS. I think that's the gap in the Unity way, it's open sandbox nature does not really set you up to make a great level editor. The component/sandbox model of Unity may be at odds with a data driven/level editor approach to making games? Or take the modern version of Doom the dev team includes a level editor which lets users quickly build up their own levels from elements. Unity has Scenes, Prefabs and ScriptableObjects but it could be argued they are not ideal for making quick, easy and compact data driven levels in Unity. Then if you consider the static elements in Unity, lighting, GI, colliders, navmeshes, it literally forces you to build each level one scene at a time. If you have any experience with Prefabs, they are great to start with but only really work with one level of hierarchy as any form of nesting and they don't work. Imagine you give guns to your soldiers, then you decide to change the gun prefab so it has a different scope and a bayonet, in theory you just change the prefab and voila. No, you have to change the soldiers unique gun prefab. And both Prefabs and UI don't have any kind of styling system e.g. changing the colour of the chairs in one room only or the font in all text in a menu. I really do think Unity could have a much smaller lighter faster better level loading system, think about it for small levels a 16 bit float Vector3 or if snapping is used a 8bit Vector3 could be used to locate the elements with a similar precision rotation vector and an ID value for the object and you have the start of a tight level loading format. Add in some additional options for repeating things with offsets and you could be churning out levels a lot faster and keeping a very tight memory space. The next problem is Unity really doesn't give developers much control on how things are packed into memory... Apologies got off on a bit of a rant there... Unity could make level editing/prefabs and the data driven/memory storage aspect of games a lot easier IMHO.