View Full Version : Procedural synthesis on the Xbox 360

05-25-2005, 04:47 AM
This is a realy interesting article talking about procedural geometry.


"The Xbox 360's solution to this problem is to store high-level descriptions of objects in main memory, and have the GPU procedurally generate the geometry (i.e., the vertex data) of the objects on the fly. So in the case of our forest, main memory stores information about the tree, like the type, size, location of each leaf, etc., along with other relevant data like the direction of the prevailing wind. This information is passed into the Xbox 360's Xenon CPU, where the vertex data that defines the polygons out of which the tree is made are generated by one or more running threads. These threads then feed that vertex data directly into the GPU (by way of a special set of write buffers in the L2 cache, but more on that later). The GPU then takes that vertex information and renders the trees normally, just as if it had gotten that information from main memory."

Captain Obvious
05-25-2005, 05:14 AM

05-25-2005, 06:39 AM
Umm .. maybe I'm missing something, but this isn't that exciting. I don't even know how they can get a patent on it. Instead of generating something procedurally and storing it in memory (thus saving cpu power) they are passing it straight to the GPU (thus saving ram). I'm fairly sure this is how procedural textures currently work on GPUs, although I'm not sure if they can do the same thing with geometry.

05-25-2005, 07:27 AM
They are generating the geometry procedurally. Instead of modelling 50 bazillion trees to make the game look good and non-repetive, they generate the trees procedurally, so theoretically, no two trees would be identical.

This is my layman's take on it, take it for what it's worth.

05-25-2005, 08:32 AM
" main memory stores information about the tree, like the type, size, location of each leaf"

To me it sounds like they are just instancing the tree, but even if it was procedural it's nothing new. There's lots of ways to procedurally create trees or other objects (they mention later using curved surfaces and tesselating them in real time).

Taking the tesselating example, this is just like lightwave. when you render it tesselates the object, puts it into ram, then renders it. This is heavy on ram but not on the cpu (although I think it's heavy on both because it tesselates on every frame doesn't it?), while the xbox would tesselate as it renders, which would use less ram but more cpu cycles. So it's nothing really interesting to me, unless it's doing something really different? And i think the PS2 could actually do this too (the tesselation anyway).

05-25-2005, 08:37 AM
They are generating the geometry procedurally. Instead of modelling 50 bazillion trees to make the game look good and non-repetive, they generate the trees procedurally, so theoretically, no two trees would be identical.

And there's more; from a TIME article I just finished reading, they can also apply unique physical effects to each tree, blade of grass etc. The outcome is apparently pretty amazing and more life like than any platform before.

It's not high praise to say the Xbox 360 is the greatest piece of gaming hardware ever created, because gaming hardware gets better all the time. But there is a wow factor to the Xbox 360 because it's the first console for which all the games will be in high definition, wide screen, with Dolby 5.1 surround sound. It's like putting on a pair of glasses: everything is clearer and sharper and more vivid.

*The grass in the old version looks like green carpet; in the new version each blade of grass is animated individually and sways to its own rhythm. In the old version, trees make crude, round, blobby shadows; in the new version, each individual leaf has its corresponding rendered leaf shadow. The play of the light on water hazards is not readily distinguishable from a filmed image. The fidelity is disconcerting: it gives you a vertiginous feeling, as if you were going to fall into the screen and come out in Narnia

The article is a great read and it does suggest that the new XBOX has accomplished some new highs in game development, and graphical power, will this make Sony and Nintendo respond in kind, likely.


05-25-2005, 09:39 AM
Well, Sony will respond in kind. Nintendo seems to be going in a different direction... focusing more on casual gamers and not-yet gamers. however I can't seem to locate the article on which I base that claim. Oh well. At the very least they claim to be game-centric and not into hardware specs so much. Sure their "Revolution" console should be better than the Game Cube but I doubt it'll be close to the hardware that Sony and Microsoft will be putting out.

The article is a great read and it does suggest that the new XBOX has accomplished some new highs in game development, and graphical power, will this make Sony and Nintendo respond in kind, likely.


05-25-2005, 11:11 AM

The first several links talk about programming procedural things on the PS2 where it doesn't need to save things in RAM. Again, I don't know how MS got a patent on this :rolleyes:

05-25-2005, 03:32 PM
this is seriously old tech.
there were papers as far back as 1995 at Siggraph dealing with this, and Pixar used Procedural Geometry in the very first Toy story to generate the "outside" because it would otherwise have taken too much memory for them to render it.

the Xbox crew can't hope to defend any patents on a system like that. they could patent hardware developed to make it faster, but its a trend, and its old, and quite a few people have been working on it for at least a decade, and not all of them work for the Xbox team.
I know MS was one of the companies exploring procedural modeling (for VRML) but they were behind the curve way back then! All the Sets in a Bugs Life started out as procedural geometry.

its a neat application of a generic approach to conserving resources... thats about it. Anybody could do it.

05-26-2005, 03:50 PM
Hmmm, they all have 512MB of Ram (I guess the 360 has 10MB more if you count that odd sub GPU cache). They all have main chips at least partly designed by IBM...and two of the newer systems have GPUs made by ATI...and one by Nividia...each GPU is stated to be about two generations ahead of the best current computer GPUs.

I have this really odd feeling that no mater what any PR person says right now the average joe is going to have a really hard time telling most games from these systems apart. It'll be even harder than it was with THIS generation of systems- which the average joe can't tell the diffrence between Forza MS and GT.

It smells of some real compition- so hopefully some good stuff will come out of this, and hopefully the market will expand so we can get even more work as 3D content makers!

Does anyone know a good artical on XNA and what it does? Is is middleware or something?

05-26-2005, 04:39 PM
Ok so I read the artical and all I can say is- does this mean fewer artists are going to be employed? Next the person who wrote the artical talked about using basicly nurbs for the LOD- but coudln't one use sub-patched objects as well (if it were made of quads or N-Gons then it would need to be tri-ed)?

Also it's interesting to see the 360 presented this way. It makes it look like MS is using at least a few of the cores as slaves to the GPU- which makes a lot of sense for graphics. This seems contrary to the PR that Sony is puting out though as they seem focused on the power of their CPU...

Real-Time Skinning: Does this not soud like morphs? Maybe even endo-morphing? Should NewTek start taking out patents? And how will a game engine then use dytamics for rag doll physics if the object has no bones? Would and event like a death call up the use of the bones for rag doll physics to deform the mesh instead of the morphs?

Couldn't this procedural technique be used in a better way if you had some parts of a scene stored in memorey, and some being produced procedurally? Let's say you have a forest in the game, and you know that there is a limited path for the gamer player due to the path running through a valley. Wouldn't it be smarter to have artists make low res trees for the background that are very simple, say on the mountain tops etc., and only have the trees the player comes into fairly close contact with be procedural? Maybe the trees in the background would be the mesh that bypassed the procedural method and went straight to the GPU?

What having a level of procedural detail, in terms of procedural reconfiguration of the vertex data for each part in a scene? Kind of like passes for the procedural operation of the geometry. Far away objects that the player will never come with in 100 virtual feet of might not get a single pass of procedural work, while those that the player can walk right up to woudl get several layers etc. These "passes" could be defined by LOD scene regions.

Also- I'm interested to see if they will have LOD not just for the mesh but also for the maps and more importantly the normal maps of objects and such? The game Gears of War isn't really that high poly, but the maping seems crazy on it. I guess it depends on how much of a hit the normal map takes on the lighting and effects processing part of the GPU for this to be a factor- as loading one normal map saves on memory...

Questions...and more questions...

05-26-2005, 05:45 PM
I don't think anyone is claiming the idea of procedural synthesis is new. The MS patents are most likely for specific hardware (and/or software) implementations of the concept.

But, yeah, there are so many questions about how these concepts could be used in real-world game development. Very interesting nonetheless.

05-26-2005, 06:57 PM
Some people have speculated that it's just SpeedTree (http://www.idvinc.com/speedtree.htm) being used on the xbox. You can see pictures at http://www.idvinc.com/html/pangaea_browser/autumn.htm , download the demo at http://www.idvinc.com/html/pangaea_main.htm , or read the press release of their partnership at http://www.idvinc.com/press/PR_NextGenXbox-SpeedTreeRT_Partnership_March_9_2005.pdf

Big Jay
05-26-2005, 09:23 PM
Isn't there a 92k game that procedurally generates the entire game level. It is a 1st person shooter.

I wouldn't think that Microsoft could patent the the procedural algorithims but they probably could patent the way the graphic card does it.

But who knows with MS. They could of purchased the papers along with rights to them. Look at the people working at Pixar.