It's all in your head, Part 4
- Chris
- Introversion Staff
- Posts: 1172
- Joined: Sat Nov 25, 2000 7:28 pm
- Location: Cambridge, UK
- Contact:
It's all in your head, Part 4
One of the strange side effects of thinking about video game design all day is the changes it forces on your perception of the world. It’s difficult to verbalise this effect precisely, but broadly speaking you begin to see the underlying construction and function of everything around you in terms of algorithms. This can be particularly vivid during crunch time when fourteen hour sessions and extreme concentration are the norm. Ever walked past a lamp post at night and marvelled at the shadow maps cast onto the floor? Ever looked at the person you were talking to, only to find yourself admiring the perfect anti-aliasing around the edges of his face? I have, and it’s a disturbing moment when it happens.
With Subversion this is already beginning to happen, and this time around it’s all about patterns. Staring out of a train window at some faceless tower buildings on the way to Kings Cross, I’m starting to notice how similar they all look to each other – to imagine how they have been built based on what is fundamentally the same blueprint as each other. I’ve been looking closely at maps of the worlds major cities, and the more I stare at them the more it’s clear to me that huge but very simply patterns exist, both at the microscopic and macroscopic level, in every city all around the world. There seems to come a moment when something clicks, and suddenly you feel like you have x-ray vision and have seen something larger that previously you had never noticed.
The second Subversion prototype has been started, and this time it’s all about Buildings. Specifically, procedural generation of Office Buildings. The first thing that was obvious is how similar the algorithms are to the previous prototype – the same fundamental code that generated those large cities and street networks can be used to generate office layouts. Instead of extending streets we are extending walls, and instead of searching for blocks (surrounded by streets) we are searching for rooms (surrounded by walls). It’s also exactly the same code that can convert a city block into a set of allotments, with each allotment containing one building.
The only thing that really changes is the rule that governs how a line extends. In a city the lines represent streets, and they naturally extend towards population centres, often following global angles and patterns. In a city block the lines represent the edges of allotments, and they follow global angles and the nearby street angles more closely (typically 90 degree angles). In an office the lines represent walls, and divide up the available space into manageable rooms. The placement of the walls is more deliberate than the placement of streets (since they are designed by an architect's conscious choice, rather than sociological patterns), and this has resulted in the office generation looking less like an office than it should, since there is too much randomness in they layout currently. Truth be told, i'm not particularly happy with the results so far - they don't evoke quite the right feeling of a city office that I was aiming for. But its all just slightly different numbers feeding into exactly the same algorithm.
In other words, I now have in my head an algorithm that is astonishingly simple, yet can single-handedly generate a city from the satellite view all the way down to the desks and chairs within a room. Is it a coincidence that the world follows such a pattern at every level? I think not. And I’m starting to wonder how far in these patterns go – I wonder if I investigated the layout of an average office workers desk, I’d see the same subdivision occurring, with phone / monitor / keyboard / mouse occupying each subdivided space.
With Subversion this is already beginning to happen, and this time around it’s all about patterns. Staring out of a train window at some faceless tower buildings on the way to Kings Cross, I’m starting to notice how similar they all look to each other – to imagine how they have been built based on what is fundamentally the same blueprint as each other. I’ve been looking closely at maps of the worlds major cities, and the more I stare at them the more it’s clear to me that huge but very simply patterns exist, both at the microscopic and macroscopic level, in every city all around the world. There seems to come a moment when something clicks, and suddenly you feel like you have x-ray vision and have seen something larger that previously you had never noticed.
The second Subversion prototype has been started, and this time it’s all about Buildings. Specifically, procedural generation of Office Buildings. The first thing that was obvious is how similar the algorithms are to the previous prototype – the same fundamental code that generated those large cities and street networks can be used to generate office layouts. Instead of extending streets we are extending walls, and instead of searching for blocks (surrounded by streets) we are searching for rooms (surrounded by walls). It’s also exactly the same code that can convert a city block into a set of allotments, with each allotment containing one building.
The only thing that really changes is the rule that governs how a line extends. In a city the lines represent streets, and they naturally extend towards population centres, often following global angles and patterns. In a city block the lines represent the edges of allotments, and they follow global angles and the nearby street angles more closely (typically 90 degree angles). In an office the lines represent walls, and divide up the available space into manageable rooms. The placement of the walls is more deliberate than the placement of streets (since they are designed by an architect's conscious choice, rather than sociological patterns), and this has resulted in the office generation looking less like an office than it should, since there is too much randomness in they layout currently. Truth be told, i'm not particularly happy with the results so far - they don't evoke quite the right feeling of a city office that I was aiming for. But its all just slightly different numbers feeding into exactly the same algorithm.
In other words, I now have in my head an algorithm that is astonishingly simple, yet can single-handedly generate a city from the satellite view all the way down to the desks and chairs within a room. Is it a coincidence that the world follows such a pattern at every level? I think not. And I’m starting to wonder how far in these patterns go – I wonder if I investigated the layout of an average office workers desk, I’d see the same subdivision occurring, with phone / monitor / keyboard / mouse occupying each subdivided space.
- NeoThermic
- Introversion Staff
- Posts: 6256
- Joined: Sat Mar 02, 2002 10:55 am
- Location: ::1
- Contact:
Re: It's all in your head, Part 4
Chris wrote:One of the strange side effects of thinking about video game design all day is the changes it forces on your perception of the world. It’s difficult to verbalise this effect precisely, but broadly speaking you begin to see the underlying construction and function of everything around you in terms of algorithms. This can be particularly vivid during crunch time when fourteen hour sessions and extreme concentration are the norm. Ever walked past a lamp post at night and marvelled at the shadow maps cast onto the floor? Ever looked at the person you were talking to, only to find yourself admiring the perfect anti-aliasing around the edges of his face? I have, and it’s a disturbing moment when it happens.
It also gets to the point where you begin to wonder if it's just you...
Chris wrote:In other words, I now have in my head an algorithm that is astonishingly simple, yet can single-handedly generate a city from the satellite view all the way down to the desks and chairs within a room. Is it a coincidence that the world follows such a pattern at every level? I think not. And I’m starting to wonder how far in these patterns go – I wonder if I investigated the layout of an average office workers desk, I’d see the same subdivision occurring, with phone / monitor / keyboard / mouse occupying each subdivided space.
You have enough forum users to see if your theory is correct. I would offer up my desk as the first investigation sample, but I think I need to remove some of the pizza boxes on it
As a side note, the door on the top floor of the building in the video is a nice touch. Escapism from the norm
NeoThermic
A couple of thoughts:
If I may be so bold, might I offer a suggestion for allocating building space? Rather than starting with a large space, and subdividing it with random walls, subdivide it into functional spaces. I might start by "seeding" rooms and hallways. Hallways are linear affairs that connect different seeds for rooms, while rooms are open spaces for given functions. One might seed large offices near the corners of a floor, and bathrooms in central places, then grow those rooms to occupy the needed space. When it hits another room or a hallway, walls can be placed, then door(s).
Anywho, just a couple of thoughts. All that aside, the buildings look really cool. I am wating with bated breath to see what becomes of this.
Also, because prophile can't be allowed to get there first:
There was an image of a red herring here, but NeoThermic (or someone else with admin powers. EDIT AGAIN: It was Icepick!) got rid of it, and inserted in insulting comment. Why? WHY?!
xander
- It would appear that the building generator puts doors between any two adjacent rooms, and puts those doors right in the middle of the wall. May I suggest that this does not correspond with my real world experience? First off, there are many rooms in most office buildings that only have one entrace from some other room. For instance bathrooms, closets, small offices. For instance, in the anthropology department at UNR, there are two hallways that run parallel to eachother on one half of the building. There are offices and classrooms between the hallways that open to both halls, but not to eachother. Then, by the exterior wall, there are more offices, each of which opens to the hall, but not to eachother. Furthermore, the doors tend to be near the corners. This allows the space to be used more effectively, as you don't need as much allocated space in the middle of the room for the door and entrance.
- One of the things that seperates a street layout from a building is the allocation of functional space. In a city, large blocks of area are often allocated for a single use, i.e. houses, apartments, industrial, office buildings, &c. The allocation of these spaces doesn't much matter, except that residential and industrial don't often mix, and that taller buildings cluster in the center of a population (which is what your city generator seems to do). In a building, spaces are allocated differently -- different activities require different amounts of spaces. A bathroom sized space could not function as a dining room, and an office supply closet cannot function as a conference room. Spaces are also allocated geographically for functional reasons. In an office building, you will generally find bathrooms in pairs -- men's and women's. You will also tend to find either one set of bathrooms in a central location, or two sets in quite disparate locations, to make it easier for people to get to them. Conference rooms often cluster, and they tend to have multiple entrances, while large offices are often at the corners, with one entrance through a secratary's office. Finally, hallways seem to be completely missing -- instead, people move from one room to another. This, also, seems inconsistant with the real world.
If I may be so bold, might I offer a suggestion for allocating building space? Rather than starting with a large space, and subdividing it with random walls, subdivide it into functional spaces. I might start by "seeding" rooms and hallways. Hallways are linear affairs that connect different seeds for rooms, while rooms are open spaces for given functions. One might seed large offices near the corners of a floor, and bathrooms in central places, then grow those rooms to occupy the needed space. When it hits another room or a hallway, walls can be placed, then door(s).
Anywho, just a couple of thoughts. All that aside, the buildings look really cool. I am wating with bated breath to see what becomes of this.
Also, because prophile can't be allowed to get there first:
There was an image of a red herring here, but NeoThermic (or someone else with admin powers. EDIT AGAIN: It was Icepick!) got rid of it, and inserted in insulting comment. Why? WHY?!
xander
Last edited by xander on Mon Jan 15, 2007 7:36 pm, edited 2 times in total.
- Ace Rimmer
- level5
- Posts: 10803
- Joined: Thu Dec 07, 2006 9:46 pm
- Location: The Multiverse
xander wrote: Finally, hallways seem to be completely missing -- instead, people move from one room to another. This, also, seems inconsistent with the real world.
xander
That was the first thing I noticed.
Subversion is really a game inspired by Cube
You will be stuck inside a maze of offices filled with deadly traps. The 'city' is just another version, only on a larger scale. Finally you discover your inside a virtual maze and none of the previous was real, except in your mind. You must then try to escape the virtual maze of deadly traps and finally emerge into the light of the 'real' world...
Smoke me a kipper, I'll be back for breakfast...
- Ace Rimmer
- level5
- Posts: 10803
- Joined: Thu Dec 07, 2006 9:46 pm
- Location: The Multiverse
Ace Rimmer wrote:Subversion is really a game inspired by Cube
You will be stuck inside a maze of offices filled with deadly traps. The 'city' is just another version, only on a larger scale. Finally you discover your inside a virtual maze and none of the previous was real, except in your mind. You must then try to escape the virtual maze of deadly traps and finally emerge into the light of the 'real' world...
First I feel this...
Chris wrote:One of the strange side effects of thinking about video game design all day is the changes it forces on your perception of the world. It’s difficult to verbalize this effect precisely, but broadly speaking you begin to see the underlying construction and function of everything around you in terms of algorithms. This can be particularly vivid during crunch time when fourteen hour sessions and extreme concentration are the norm. Ever walked past a lamp post at night and marveled at the shadow maps cast onto the floor? Ever looked at the person you were talking to, only to find yourself admiring the perfect anti-aliasing around the edges of his face? I have, and it’s a disturbing moment when it happens.
With Subversion this is already beginning to happen, and this time around it’s all about patterns. Staring out of a train window at some faceless tower buildings on the way to Kings Cross, I’m starting to notice how similar they all look to each other – to imagine how they have been built based on what is fundamentally the same blueprint as each other. I’ve been looking closely at maps of the worlds major cities, and the more I stare at them the more it’s clear to me that huge but very simply patterns exist, both at the microscopic and macroscopic level, in every city all around the world. There seems to come a moment when something clicks, and suddenly you feel like you have x-ray vision and have seen something larger that previously you had never noticed.
lends credibility to my theory.
However, having thought it over a bit, I beleive I missed something...
Chris wrote:In other words, I now have in my head an algorithm that is astonishingly simple, yet can single-handedly generate a city from the satellite view all the way down to the desks and chairs within a room. Is it a coincidence that the world follows such a pattern at every level? I think not.
Apparently, even sitting at your 'desk', or in fact sitting at all in this game will be deadly! Poisoned tipped staples, exploding manuals...
- BrianBlessed
- level4
- Posts: 867
- Joined: Sat Dec 24, 2005 9:33 pm
To use a journalistic term, it's like the spawn of Spore and SimCity.....ON ACID!
N.B. I agree with xander's suggestion to subdivide into areas so to still have some sociological order in the seemingly random building. Aswell as perhaps setting limits to the dimensions of rooms, so you don't get small rooms with acute triangular shapes which just look odd. Also depending on the type of area you are creating would decide whether you want precedence to wall or floor space, whether you would rather want a series of small rooms or one large ones etc etc.
N.B. I agree with xander's suggestion to subdivide into areas so to still have some sociological order in the seemingly random building. Aswell as perhaps setting limits to the dimensions of rooms, so you don't get small rooms with acute triangular shapes which just look odd. Also depending on the type of area you are creating would decide whether you want precedence to wall or floor space, whether you would rather want a series of small rooms or one large ones etc etc.
Last edited by BrianBlessed on Mon Jan 15, 2007 8:51 pm, edited 1 time in total.
- DueAccident
- level3
- Posts: 463
- Joined: Wed Oct 25, 2006 2:30 am
- Ace Rimmer
- level5
- Posts: 10803
- Joined: Thu Dec 07, 2006 9:46 pm
- Location: The Multiverse
Taedal wrote:What form the game will take we are yet to know, but cities and buildings do not, in my view, rule out a fun game..
I've already explained it. Deadly chairs and desks, level 1 of sorts, deadly maze of offices within buildings, level 2, deadly maze within the city/of cities, level 3, discover its all a virtual maze and all "In your Head" and so forth...
BrianBlessed wrote:N.B. I agree with xander's suggestion to subdivide into areas so to still have some sociological order in the seemingly random building. As well as perhaps setting limits to the dimensions of rooms, so you don't get small rooms with acute triangular shapes which just look odd. Also depending on the type of area you are creating would decide whether you want precedence to wall or floor space, whether you would rather want a series of small rooms or one large ones etc etc.
You need those triangular rooms for the really, really effective traps. I guess.
Smoke me a kipper, I'll be back for breakfast...
I won't begin to speculate on what gameplay IV has in store for us with this technology (if any, yet), but it's definitely exciting and I want to play with it already
I'm pretty sure I've never seen anything like this in any games I've played, apart from random map skirmishes in strategy games. But this looks like a whole new can of worms. The amount of potential content that can be generated here is frankly staggering, and these are just the first versions of it. My breath is baited.
I'm pretty sure I've never seen anything like this in any games I've played, apart from random map skirmishes in strategy games. But this looks like a whole new can of worms. The amount of potential content that can be generated here is frankly staggering, and these are just the first versions of it. My breath is baited.
Who is online
Users browsing this forum: No registered users and 14 guests