Here's a procedurally-generated city that a single developer did in his spare time. It's a lot more basic, but his blog runs through how he did it, and I really like the kinds of visual tricks he employs.
I love the Styrofoam walls in the op video. Three rounds and a hole the size of a small car opens up in the wall.
There's one video where you shoot out the entire first floor a building and the whole thing collapses and breaks to pieces on the street.
I would like to see this video.
Ah, fun. There was this cheat in the Bungie/Take-Two game Oni, which gave everything in the level except the character the properties of glass. Shoot the floor? The ground collapses. Open up with an uzi inside a skyscraper? The world breaks.
Man, imagine playing something like STALKER in this, where you can enter every building. Urban combat would be terrifying!
EndlessInfinity on
MH3 ID : Gernot 92TE9P
SC2: Zwillinge
0
Options
Ninja Snarl PMy helmet is my burden.Ninja Snarl: Gone, but not forgotten.Registered Userregular
edited January 2010
They should call Toady from Dwarf Fortress so he can tell them how to procedurally generate basically an entire region instead of just a city, complete with erosion, history, drainage basins, invasions, and so on.
Otherwise, let's hope this sort of thing takes of really soon. I have a hard time thinking of a game which wouldn't be hugely improved with randomized and destructible buildings. Then maybe we could get an actually awesome Superman game where big fights leave tunnels through buildings and whatnot.
They should call Toady from Dwarf Fortress so he can tell them how to procedurally generate basically an entire region instead of just a city, complete with erosion, history, drainage basins, invasions, and so on.
Otherwise, let's hope this sort of thing takes of really soon. I have a hard time thinking of a game which wouldn't be hugely improved with randomized and destructible buildings. Then maybe we could get an actually awesome Superman game where big fights leave tunnels through buildings and whatnot.
I'd spend all my time burning down buildings by blowing out the first floor with my sonic claps and laser eyes
Man, imagine playing something like STALKER in this, where you can enter every building. Urban combat would be terrifying!
At first I was like oh procedural city layout ...that's nice. And the demo went inside buildings. Stalker immediately popped into mind. ...I bet I'll need to upgrade my system with a "future computer" to run such an engine.
The immediate problem I thought of when I saw the video was one of memory usage; you could regenerate the buildings procedurally etc, but any internal damage you do must then be stored in case you revisit the building in future.
I could easily see things like that overwhelming the memory constraints of a console.
The immediate problem I thought of when I saw the video was one of memory usage; you could regenerate the buildings procedurally etc, but any internal damage you do must then be stored in case you revisit the building in future.
I could easily see things like that overwhelming the memory constraints of a console.
The immediate problem I thought of when I saw the video was one of memory usage; you could regenerate the buildings procedurally etc, but any internal damage you do must then be stored in case you revisit the building in future.
I could easily see things like that overwhelming the memory constraints of a console.
Presumably, where you shoot the wall affects how it breaks etc. So you could store info on the projectile collision which caused the damage, and regenerate the damage procedurally in that manner, but that adds extra work each time you go into the building. Another alternative is to store the new geometry as a replacement for the old, but in the simplest case (wall = 4 vertices) you end up adding a lot of extra vertices (for the jagged holes etc), which needs memory to store.
In addition, if it's possible to collapse floors as mentioned earlier, then the procedural generation won't work even on the outside - as that's creating intact buildings.
I did like the idea of locking doors when being chased, and as people blast their way through the doors and walls I'm happily blasting a hole in the floor to drop a level and escape, though!
You know what'd be fucking great for this? Some motherfucking X-COM. Just imagine, procedurally-generated mission sites where aliens could be hiding anywhere...and which you promptly blow apart with scores of rockets and high explosives.
The immediate problem I thought of when I saw the video was one of memory usage; you could regenerate the buildings procedurally etc, but any internal damage you do must then be stored in case you revisit the building in future.
I could easily see things like that overwhelming the memory constraints of a console.
Presumably, where you shoot the wall affects how it breaks etc. So you could store info on the projectile collision which caused the damage, and regenerate the damage procedurally in that manner, but that adds extra work each time you go into the building. Another alternative is to store the new geometry as a replacement for the old, but in the simplest case (wall = 4 vertices) you end up adding a lot of extra vertices (for the jagged holes etc), which needs memory to store.
In addition, if it's possible to collapse floors as mentioned earlier, then the procedural generation won't work even on the outside - as that's creating intact buildings.
I did like the idea of locking doors when being chased, and as people blast their way through the doors and walls I'm happily blasting a hole in the floor to drop a level and escape, though!
If you are going through blowing up shitloads of walls, I doubt you'd have a photographic memory of it so it could have like 5 different models for each damage state that are reloaded upon entering the area.
Save on the memory, with enough diversity not to be to noticeable.
You know what'd be fucking great for this? Some motherfucking X-COM. Just imagine, procedurally-generated mission sites where aliens could be hiding anywhere...and which you promptly blow apart with scores of rockets and high explosives.
That was always my favorite method of clearing out buildings: alien hiding on second floor? Bring the house down!
If you are going through blowing up shitloads of walls, I doubt you'd have a photographic memory of it so it could have like 5 different models for each damage state that are reloaded upon entering the area.
Save on the memory, with enough diversity not to be to noticeable.
I dunno, if I deliberately blow a certain hole in a wall to make a fast getaway, I'd be pretty miffed if it turned into something useless when I tried to run back through the room. Ditto if I make a hole to snipe a certain region through, for example.
In the example shown, it's easy to blow big holes everywhere. But that won't be the case in most games, where you may have limited explosives etc - in which case you need more precision than "this wall is 20% damaged" or whatever.
Also, if the walls are loadbearing, you may damage them in such a way that the building is stable - but when one of the 5 different damage models is then applied at a later point, the wall becomes unstable and the building collapses around you. Stuff like that would be very irritating.
You know what'd be fucking great for this? Some motherfucking Syndicate. Just imagine, procedurally-generated mission sites where other corporate agents could be hiding anywhere...and which you promptly blow apart with scores of rockets and high explosives.
Lawndart on
0
Options
TrippyJingMoses supposes his toeses are roses.But Moses supposes erroneously.Registered Userregular
If you are going through blowing up shitloads of walls, I doubt you'd have a photographic memory of it so it could have like 5 different models for each damage state that are reloaded upon entering the area.
Save on the memory, with enough diversity not to be to noticeable.
I dunno, if I deliberately blow a certain hole in a wall to make a fast getaway, I'd be pretty miffed if it turned into something useless when I tried to run back through the room. Ditto if I make a hole to snipe a certain region through, for example.
In the example shown, it's easy to blow big holes everywhere. But that won't be the case in most games, where you may have limited explosives etc - in which case you need more precision than "this wall is 20% damaged" or whatever.
Also, if the walls are loadbearing, you may damage them in such a way that the building is stable - but when one of the 5 different damage models is then applied at a later point, the wall becomes unstable and the building collapses around you. Stuff like that would be very irritating.
You could spoof the sniper/getaway holes somewhat by setting it up so that it allocated more memory to an area as you spent more time in it. For example, it'd keep the location and size (cant see needing more, are you really gonna remember the exact shape of your getaway hole?) of all the damage in a place you had spent 15 minutes barricading, but a corridor you just ran through in the midst of a firefight would just remember how many shots were fired and put them in a random spread if you come back. Ideally, this would also be scalable.
Also, on the loadbearing bit, I actually think it would be ridiculously awesome to have a huge firefight in a building, which hits its climax with most of the building collapsing around you. Especially if you have a handy grappling hook to fire out a window, at a nearby building.
Someone should really tell those guys that buildings are not entirely made of drywalls... There are a couple of metal or concrete columns around, usually.
You could spoof the sniper/getaway holes somewhat by setting it up so that it allocated more memory to an area as you spent more time in it. For example, it'd keep the location and size (cant see needing more, are you really gonna remember the exact shape of your getaway hole?) of all the damage in a place you had spent 15 minutes barricading, but a corridor you just ran through in the midst of a firefight would just remember how many shots were fired and put them in a random spread if you come back. Ideally, this would also be scalable.
This is the problem; I was trying to think of a way to do such things that would scale. In principle, you could go into every building and mash lots of the walls, and that's a lot of extra memory needed; the damage info could easily consume more memory than the original geometry did, as the original geometry was likely simple squares etc.
It's an interesting problem, and something like voxels would help - but the memory requirement for a city full of voxels may be rather extreme. But the emphasis seems to be on being able to generate the city in the first place, what with it taking oodles of artist and designer time, and not so much on what happens after that!
Also, on the loadbearing bit, I actually think it would be ridiculously awesome to have a huge firefight in a building, which hits its climax with most of the building collapsing around you. Especially if you have a handy grappling hook to fire out a window, at a nearby building.
I totally agree with you. I could definitely go for a game which detects critical damage and starts to slow time down, so you can have apocalyptic firefights in slow mnotion as it all collapses around you.
Posts
Subversion city-generating demo.
(Video has no sound, insert your own music and sound effects.)
Now it just needs people.
There's one video where you shoot out the entire first floor a building and the whole thing collapses and breaks to pieces on the street.
Give me Prototype 2 with this technology and I will never play another game.
Limed for excessive truth.
http://www.youtube.com/watch?v=-d2-PtK4F6Y
http://www.shamusyoung.com/twentysidedtale/?p=2940
He's built it as a screensaver too, which can be downloaded from the blog.
Old PA forum lookalike style for the new forums | My ko-fi donation thing.
I would like to see this video.
Oh it's such a nice day, I think I'll go out the window! Whoa!
Ah, fun. There was this cheat in the Bungie/Take-Two game Oni, which gave everything in the level except the character the properties of glass. Shoot the floor? The ground collapses. Open up with an uzi inside a skyscraper? The world breaks.
SC2: Zwillinge
Otherwise, let's hope this sort of thing takes of really soon. I have a hard time thinking of a game which wouldn't be hugely improved with randomized and destructible buildings. Then maybe we could get an actually awesome Superman game where big fights leave tunnels through buildings and whatnot.
I'd spend all my time burning down buildings by blowing out the first floor with my sonic claps and laser eyes
At first I was like oh procedural city layout ...that's nice. And the demo went inside buildings. Stalker immediately popped into mind. ...I bet I'll need to upgrade my system with a "future computer" to run such an engine.
I could easily see things like that overwhelming the memory constraints of a console.
Unless it just has a setting of
IfwallDamaged = Yes
Ifdamagedstate = 2
;Damage state 1 undamaged 2 25% damage 3 50% damage 4 75% dmg 5 100% damage.
They would have to fix the game part first.
Presumably, where you shoot the wall affects how it breaks etc. So you could store info on the projectile collision which caused the damage, and regenerate the damage procedurally in that manner, but that adds extra work each time you go into the building. Another alternative is to store the new geometry as a replacement for the old, but in the simplest case (wall = 4 vertices) you end up adding a lot of extra vertices (for the jagged holes etc), which needs memory to store.
In addition, if it's possible to collapse floors as mentioned earlier, then the procedural generation won't work even on the outside - as that's creating intact buildings.
I did like the idea of locking doors when being chased, and as people blast their way through the doors and walls I'm happily blasting a hole in the floor to drop a level and escape, though!
If you are going through blowing up shitloads of walls, I doubt you'd have a photographic memory of it so it could have like 5 different models for each damage state that are reloaded upon entering the area.
Save on the memory, with enough diversity not to be to noticeable.
That was always my favorite method of clearing out buildings: alien hiding on second floor? Bring the house down!
I dunno, if I deliberately blow a certain hole in a wall to make a fast getaway, I'd be pretty miffed if it turned into something useless when I tried to run back through the room. Ditto if I make a hole to snipe a certain region through, for example.
In the example shown, it's easy to blow big holes everywhere. But that won't be the case in most games, where you may have limited explosives etc - in which case you need more precision than "this wall is 20% damaged" or whatever.
Also, if the walls are loadbearing, you may damage them in such a way that the building is stable - but when one of the 5 different damage models is then applied at a later point, the wall becomes unstable and the building collapses around you. Stuff like that would be very irritating.
You could spoof the sniper/getaway holes somewhat by setting it up so that it allocated more memory to an area as you spent more time in it. For example, it'd keep the location and size (cant see needing more, are you really gonna remember the exact shape of your getaway hole?) of all the damage in a place you had spent 15 minutes barricading, but a corridor you just ran through in the midst of a firefight would just remember how many shots were fired and put them in a random spread if you come back. Ideally, this would also be scalable.
Also, on the loadbearing bit, I actually think it would be ridiculously awesome to have a huge firefight in a building, which hits its climax with most of the building collapsing around you. Especially if you have a handy grappling hook to fire out a window, at a nearby building.
Not enough lime in the world.
When I saw that video in the OP I instantly thought of Batman: AA and how he yoinks down weakened walls with a hook.
God damn I was the fucking spider man in that game.
There wasn't a grapple in GoldenEye 64 o_O.
What? yes there was. in multi at least.
Nope.
Though, on that note, imagine taking out an entire block because some stupid shit stacked remote mines like a pile of oreos and then shot it.
It was built into the watch.
This is the problem; I was trying to think of a way to do such things that would scale. In principle, you could go into every building and mash lots of the walls, and that's a lot of extra memory needed; the damage info could easily consume more memory than the original geometry did, as the original geometry was likely simple squares etc.
It's an interesting problem, and something like voxels would help - but the memory requirement for a city full of voxels may be rather extreme. But the emphasis seems to be on being able to generate the city in the first place, what with it taking oodles of artist and designer time, and not so much on what happens after that!
I totally agree with you. I could definitely go for a game which detects critical damage and starts to slow time down, so you can have apocalyptic firefights in slow mnotion as it all collapses around you.
Splendid.