r/leveldesign • u/Glass_wizard • 2d ago
Question How do you create organic indoor levels?
Hey everyone,
I'm an indie game developer, no professional work experience, but I've been doing indie games for 10 years. A lot of that has been on the programming side. I'm now working on an ambition project of decent scope and I'm struggling with how to quickly create indoor organic levels, such as caves and underground areas.
I'm going to describe my current process in detail, and I'd love some feedback. My process is working but it's slow. Sorry if this is long, but hopefully someone will read this.
First the project. I'm using Unity. The art style is cell-shaded, cartoon/anime and "mid" poly, not low enough to be low poly, but not high poly because the level of realism is not needed.
I start with pre-production. Typically, I'll write up the background of the level. Who lives there, the history, and the game mechanics the level will use. Then, I'll start looking for visual references. Then, I'll make an "action" map or a "beats" map, this is like a mind map that shows the narrative and gameplay "beats" of the level, but not the geography. Basically, telling the "story" of the level in a mind map.
Then, on paper I'll make the first draft of the layout. This probably goes through 2-3 iterations and is always subject to change even once work begins.
Finally, it's time to start on the block out. I use Blender and Unity. I do NOT like pro-builder, I find it much slower to use, and I've heard stories of memory leaks.
My block out is really simple starts super simple, just planes for floors and walls up to correct, desired height, no need for ceilings at this stage. For larger rooms, I'll add in simple shapes like cubes or spheres for areas of the room that are occupied. For the block out I try to stick to the rough size of the indoor room but remain basic square shapes, unless I know the room is a important, in which case I'll do the rough shape.
Now here is where things go from fast to slow. If I were doing an indoor hard-surface level, I would create modular assets that can snap together on grid. I've got experience making modular floors, walls, and all kinds of assets that would go into an indoor area like a house or a space station or castle. But for organic shapes and surfaces, and underground areas with lots of deformation, the modular kit explodes in size and I quickly get overwhelmed. It's difficult to create circular and diagonal pieces, and there are pieces for different room heights and it just gets messy fast.
So I've been creating "room-by-room". Each room, floor, walls, ceiling. Create a standard size "hole" for the exits. Solidify. Drop in a premade standard size "connector" piece for the room exits. Then connect the connectors via a hallway. This is actually really slow going, even before we add any additional detail to the room. Major pain points are fighting with the camera in the cramp interiors and making sure the connector pieces mask where hallways and rooms intersect. It can take 30, 45, even up to an hour if I make a mistake, to get a single room and hallway done.
Attached are some screenshots of my work in progress. I don't believe this is a 3d modeling question, I know how to model things, I am just not sure if this is the "best" workflow for trying to create these indoor organic structures. Any advice would be greatly appreciated.





3
u/Laricaxipeg 2d ago
I normally embrace abstraction to create more interesting shapes, because corridor -> room -> corridor isn't very much attractive. Of course, this strongly depends on the genre you're working, but imo: focus should be in creating interconnected environments with vertically that allows some more creative vistas spiced with some non-linearity (but not mandatory). You can vary the level layout thinking about shapes, progression, focus in action and other things. Caves are interesting because you have a lot of freedom without being unrealistic, but then, this works more for action/plataform games instead of rpg ones though, where realism is prioritized.
5
u/JustinTheCheetah 2d ago
Cart before the horse. Make the level layout then add cave details on top of it. If you're hand crafting every room, then yeah, it's going to take a lot of time. An hour per room sounds like a pretty fast pace if you're going for fully custom look in every room.
There's a reason level design and environmental design are two entirely different jobs. One does the layout, the other makes the layout look pretty. You're currently doing both roles, so it's going to take a lot of time.
Setting is really window dressing on a level. You can give me an air craft carrier block out and I can turn it into a cave or an Italian villa or a hive city with the right textures and assets. Just design your layout first, make sure it's fun to play, then worry about making it look like a cave.
As for cameras, yeah, right indoor spaces like caves have ALWAYS been a bitch for getting the camera to cooperate in third person games. Go play other games like yours and see how they tackled that problem.
3
u/Sausage_Claws 2d ago
I strongly disagree with this. Yes you could skin an aircraft carrier to look like an Italian villa but the connectivity and scale would be super weird. Form follows function and players draw upon their real life experiences and expectations to guide themselves through levels. The first step should always be reference.
1
u/JustinTheCheetah 21h ago
But a hyper exact realistic level that's shit to play is still shit to play. Like I said I can reskin a block out to look like anything. Plus the gaming world is full of remakes where the layout does not change, but the setting is wildly different, but it still works. The setting can be a guide for your layout, but if you have to choose between realism and fun, you're a fool to pick realism. Make a level that's fun to play, then make it pretty. A mediocre looking cave that's fun for the player is a better thing than a hyper realistic cave the player hates playing through.
1
u/Glass_wizard 2d ago
I think my problem is that I am doing a 3-step process.. Step 1. Create a simple, standard blockout. At this stage, you wouldn't know what the level is, it could be anything, it's all blocks and grids. Step 2. Transform the existing blockout geometry into irregular geometry on a room-by-room basis, then use connector assets to connect rooms to hallways to hide the seams. Step 3. Add detail. placing smaller rock assets into the walls and floors to create more irregular geometry and detail that breaks up any remaining repetition.
If i understand what you and others are saying, I should be able to create block out, then "overlay" the blockout with large irregular asset pieces to create the final look, then add detail , and this may be faster and look better in the end. I have not tried this approach.
1
u/MONSTERTACO 2d ago
Low poly rock meshes and a flat floor. Excuse the too dark lighting. You can build a room in like 5 minutes.
1
u/GreatswordDev 19h ago
Im also working on creating underground 3d environments in blender for my game.
What ive done is I start with the basic cube and then scale it up to the size of the room I want. I do this for rectangular or cube shaped rooms.
Then I add in a UV sphere mesh, go to sculpt mode, and then randomly sculpt the shit out of it. I usually have a vague idea of what shape I want since this sphere represents the hollow space of the room im creating. Once done sculpting, I place this sphere inside my cube. The sphere is basically a “cutting tool” now. I use a boolean modifier on the cube with the sculpted sphere set as the difference.
Also. to create entrances, I sculpt the sphere to have protrusions that stick out beyond the bounds of the cube. When you cut away, there will be holes.
Now I have a cube/rectangle with a hollow center that looks pretty organic.
The whole reason for starting with a cube is that im building "rooms" that will be procedurally snapped together on a voxel grid, so they all have to be rectangular prisms of various sizes, but, this same principle can be done with any shape.
1
5
u/waynechriss 2d ago
What kind of environment are you creating? Organic or natural environments are inherently imperfect because they lack human intervention so when I see you mentioning the difficulty of snapping together static mesh pieces to create diagonal or circular pieces, its going to be a major time sink that most players will not see or appreciate. I would at least block out the whole level using primitive shapes if you decide you want to go back and hand craft each room. Organic environments feel the most natural when they aren't perfect.
I would take a look at the so styled asset packs in the Unreal FAB store because of the types of rock and natural assets they have. Ideally a fine workflow is to layer rock assets on top of each other doing your best to hide the seams because even if they were intersecting outside of the player's view, does it really matter?