Jump to content

[Discussion] Procedural cities


CaptainKipard

Recommended Posts

Just a thought. It could be as simple as repeating a wall texture, with ceiling caps and roads in between, or something more complex with buildings that have multiple roofs, and roof types, props like antennae, helipads, chimneys. Various road types and driveways. Parks... I dunno...Hot-dog stands.

What are the challenges?

Edited by Cpt. Kipard
Link to comment
Share on other sites

Just a thought. It could be as simple as repeating a wall texture, with ceiling caps and roads in between, or something more complex with buildings that have multiple roofs, and roof types, props like antennae, helipads, chimneys. Various road types and driveways. Parks... I dunno...Hot-dog stands.

What are the challenges?

lack of flat ground almost anywhere on Kerbin.

This just seems like the real killer.

I know the cities are "procedural", but are the models? You would need seperate models for roads of inclination 5° 10° 15° etc...

In KSP we have no easy way to flatten the ground outside of RSS height-map editing.

You could add a large "static" plateau and build your procedural city on top of that, but it would be size limited.

Edit: Also, detail.

At what level is the player appreciating the buildings? From the ground, or from 10,000M in the air?

No reason you couldn't get buildings that look reasonasbly good at ground level while still using very basic models and textures, hell, look at the likes of GTA III:

6e8289ee5a.jpg

Basically textured cubes.

An easier way to do this, maybe:

Procedurally generate a single model for a city (or a chunk of a city), then place those models using conventional methods like Kerbal Konstructs.

Edited by Beale
Link to comment
Share on other sites

You could do it the way Sim City did it. Maxis would put concrete or brick blocks under the larger buildings, so they don't float.

Roads could be made to follow a spline defined by the ground under it.

Buildings could be made out of parts that fit together, which would be separate models.

Link to comment
Share on other sites

You could do it the way Sim City did it. Maxis would put concrete or brick blocks under the larger buildings, so they don't float.

Roads could be made to follow a spline defined by the ground under it.

Buildings could be made out of parts that fit together, which would be separate models.

I've used the concrete blocks on my own buildings:

cb12dde30c.jpg

It works, that's true, but that's being hand place through Kerbal Konstructs.

I remember in the sim-city series that the concrete blocks never worked too well, like a residential home would have a driveway leading to a 10-metre drop. It would look kinda crummy if at street level you were surrounded by concrete walls (I imagine the trouble of placing 3D houses on slops convincingly was part of the reason why there's no terrain deforming in the new sim city.).

Example of what I mean here, because of direction of slope, the doors are about 4 metres off of the ground.

4051e9b89a.jpg

Spline roads would be beyond great, though.

Edited by Beale
Link to comment
Share on other sites

Re: Doors and driveways. That can be programmed, but there are ways that it could be done with clever use of models of stairs and inclines. You just need some space between the buildings and the road.

Another way (for smaller buildings like log cabins) would be to place an empty game object at the foot of the door, and program the plugin to place the building with the empty on the ground level, or slightly above it. You could add stairs here too.

Also I doubt anyone would build on a steep hill like in that picture, given better places IRL, and there are flatter places. Really all the major issues here are best solved the same way an architect should do it.

Link to comment
Share on other sites

Why not both. You could create a model of a ramp, and scale it along the vertical axis procedurally as necessary.

Stairs could be just made to intersect the ground. This is more a question for the artists.

One neat way of doing it is have a separate stairs model. The stairs have a path that extends far to the right, and will intersect the ground at some point. If you keep the door on the far side then you can keep the bottom of the stairs always at ground level and move it horizontally and vertically according to the slope.

Another way is to keep the door at the bottom.

QoH42hR.png

Link to comment
Share on other sites

This thread is quite old. Please consider starting a new thread rather than reviving this one.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...