The Importance of Procedural Content Generation In Games 160
Gamasutra reports on a talk by Far Cry 2 developer Dominic Guay in which he discussed why procedural content generation is becoming more and more important as games get bigger and more complex. He also talks about some of the related difficulties, such as the amount of work required for the tools and the times when it's hard to retain control of the art direction. Quoting:
"Initially, the team created a procedural sky rendering approach based on algorithms — which led to a totally unconvincing skybox that was clearly inferior to what a hand-authored skybox would be. 'We considered it to be a total failure,' he said. He explained that a great deal of focus must be put on the tools that surround the algorithms, to allow the systems to be properly harnessed. In the end, the game shipped with a revamped procedural sky system that ended up much more effective than the first attempt."
Absolutely (Score:5, Interesting)
If you've never made a game yourself, you'd be amazed at how much work it is to create content. Speaking as someone who has made a game (see Game! - The Witty Online RPG [wittyrpg.com]), I'll tell you it's way way more work to create content than it is to create game engines or anything else code related. Try looking at the credits for most any game created in the last 10 years and you'll probably find at least 5 content creators (artist, story editor, copy writer, map/model creator, etc) for every 1 programmer, if not more.
So, absolutely, procedural content generation is a huge boon if you do it correctly, much like the "social" aspect of Web 2.0 was a boon for the web, when done correctly. Of course, it's also tricky to do correctly, very few games are there at the moment, and it'll probably take awhile until we have lots of good examples.
Re: (Score:2)
Ahhh but you forget that it costs a lot less to hire a few decent artists than a few decent programmers.
Re: (Score:2, Insightful)
Ahhh but you forget that it costs a lot less to hire a few decent artists than a few decent programmers.
Citation needed. My personal experience conflicts with your statement.
Re:Absolutely (Score:4, Interesting)
Trust me, art is expensive.
A good procedural system has tweakable values and seeds, and near-instant results (great for prototyping) so an artist won't spend several days or weeks developing a snazzy model only to see their hard work on the cutting room floor.
For professional games, art is much more expensive than code.
Re:Absolutely (Score:4, Funny)
Sorry, this might take a bit longer, I'm still working on that Procedural Game Generator. (but I think EA beat me to it)
Re: (Score:3, Funny)
I'm still working on that Procedural Game Generator. (but I think EA beat me to it)
s/2008/2009/g? Or I guess they have created a true prodcedural generator that backreferences last year and adds one, so they avoid the tedious yearly modifications.
Re: (Score:3, Interesting)
I recall the 8-bit game ELITE created 10 whole "galaxies" along with descriptions of each star's major food exports, population, et cetera using nothing more than a seed and an equation. The reason they did this was because they were limited to 48 kilobytes of RAM and had no room for an actual database. (That's 0.047 megabytes in today's terminology.) It was simply amazing to explore all that territory because it felt so realistic.
It was not so fun when the pirates attacked you 5 against 1. ;-) You migh
Elite (Score:3, Interesting)
I recall the 8-bit game ELITE created 10 whole "galaxies" along with descriptions of each star's major food exports, population, et cetera using nothing more than a seed and an equation. The reason they did this was because they were limited to 48 kilobytes of RAM and had no room for an actual database.
TFA says Elite had 8 galaxies of 256 planets each. I thought is was 8 galaxies of 1000 planets each. Whatever it was, it was a lot. And the Acorn Electron version had to fit it into only 32kB. And Frontier was even bigger. Well, it was only a single galaxy, but it had literally millions of stars, most of them orbited by several planets.
And now they come with a lame story about sky. That's not procedural content generation, it's procedural eye candy generation.
It was not so fun when the pirates attacked you 5 against 1. ;-) You might as well just quit the game at that point.
Get military lasers! Unfortunately the Acorn El
Re: (Score:2)
I guess you've never seen Beat'Em and Eat'Em. Or Custers' Revenge.
Re: (Score:2)
At least the old games didn't move like a grandma stuck in a spider web. Modern games like Vice City take forever to finally "get to the point". (half an hour later). You mean I haven't reached the first mission yet?!?!?
Re: (Score:2)
Yup, Elite was pretty amazing. The star locations, names, and commodity prices at every location were all generated algorithmically. Locations aren't too hard - it's just a 2D grid with a decision function weighted towards 'no' to decide if there's a star there. Names, as I recall, were composed from a shortish list of phonemes in a random order (just shuffling the order so you didn't get the same name for two stars). Commodity prices were generated from a small number of attributes like political struc
Re: (Score:2)
if anyone is interested, Nova has a pretty good documentary (Nova - Hunting the Hidden Dimension, aired on 2008/10/28) on the history and applications of fractals, which is often used for procedural content. for instance, they frequently use fractal algorithms for movie special effects. in the documentary they talk to a guy at ILM who explains how the lava fight scene between Anakin and Obiwan uses fractals to generate the splashes of lava seen in the background.
they also discussed the first time fractals w
Re: (Score:2)
Or have there be a star at each intersection of the grid, but tweak the position with a function which takes the x and y coordinates as input (and the seed, if you want to be able to generate different galaxies). As long as you limit the tweaking to less than half the size of a grid unit, there will neve be overlap, and it'll be random enough.
Re: (Score:3, Interesting)
EVE online used a proceedural world generator. Sometime midway through development, they realized they had to tear it all down so that the answer (seed) to the life the universe and everything would indeed be 42. Thus EVE was reborn, and it was... well its EVE.
Re:Absolutely (Score:5, Insightful)
"If you've never made a game yourself, you'd be amazed at how much work it is to create content."
And it's so much work because of the art, animation and effects, lets face this fact. Back in the 8-bit days the amount of work required was a lot but managable, you could put a lot more content into a 2D game in a lot less time then you can in a modern 3D rendered game in which the resolution is much higher and the more artists and designers you need just to get the most basic and mundane things done that existed in the 2D area. The same content in 2D that was easy, takes infinitely more time in the 3rd dimension just to get anywhere near the artistic quality of a good team of 2D artists. But this is something companies brought on themselves with their technolust, as we've seen with MegaMan 9 there are still people out there that like games for more then just their looks.
Fractal Generation (Score:5, Interesting)
Ever look at a city from the sky? No, not some 707 that jumps to 30,000 feet in a matter of seconds, but in a small plane? Google Earth is an approximation - but you lose the depth of everything, and all you see is rooftops. Go up in a small plane at 2000 feet above a medium-sized city (100,000 and up) or bigger. As a private pilot, I get plenty of chances to do so.
One of the things that never ceases to surprise me is just how... fractal most cities are. Houses are lined up in neat rows along streets that are usually either straight or follow some landmark, EG: a river. Most towns (in California) have an older "downtown" that is always a grid with closely packed, multi-story buildings, alongside an "uptown" that widely spread out, grid-shaped buildings with large parking lots, surrounded by the "burbs", older homes on wide, grid-shaped streets and newer homes on windy, curved streets that tend to roughly follow landmarks. New cities (built in the last 50 years or so) don't have a "downtown", just an "uptown", but they all have an uptown.
Freeways mostly go between the downtown/uptown areas, and then spread out in a roughly bicycle-wheel shape, towards the nearest large community. Like I said, it's not a great substitute, but ste here's a stereotype [google.com] California city.
I don't know, but these basic development patterns hold true down to the very substance of the buildings themselves... Older buildings use lots of brick or wood, newer buildings tend to be stucco and wood-based plywood paneling. Larger new buildings tend to be steel and concrete, larger old buildings tend to be... brick.
If you created a pattern based on the age of the parts of town, and then applied a fractal pattern based on age, you could probably come up with an extremely realistic-looking city with very little effort. Automatically, with roads that make sense (EG: don't lead nowhere) and houses that look like real neighborhoods, etc.
Combined with a bit of a "noise factor" and the results would likely be indistinguishable from a real city. Heck, you might not even need to save the actual city - if the results are generated by a fractal math function, you'd just need to store a seed, an integer or somesuch so that the city can be auto-generated on demand.
Re: (Score:3, Funny)
...an extremely realistic-looking city with very little effort. Automatically, with roads that make sense (EG: don't lead nowhere)
roads that lead somewhere...hmmm...it wouldn't be much good for simulating Ireland, then.
Re: (Score:1, Offtopic)
Re: (Score:2)
roads that lead somewhere...hmmm...it wouldn't be much good for simulating Ireland, then.
There's a purpose for that, though. It confuses the snakes.
Re: (Score:2)
Roundabouts aren't that common in Canada. It's been talked about for that particular intersection before but it would probably cause more frustration than needed for a city that's never had a roundabout.
Re:Fractal Generation (Score:4, Interesting)
I hear what you're saying we'll get to heavily auto-generated content sooner or later with simply advancements in math, science and technology.
Your post reminds me of midtown madness...
http://www.microsoft.com/games/midtown/default.htm [microsoft.com]
http://www.microsoft.com/games/midtown/screens/feb99/bacon0033.jpg [microsoft.com]
Midtown madness had a large play area and you could drive around and do whatever you wanted but it quickly got boring, we will still need developers to tune the experience and the content. I imagine autogenerated content will not be enough, there will always be tuning required and always the need for artists and animators for art direction, and such like.
But just generating content for contents sake today is not what is going to make a game, you have to have interesting things to do and interesting characters that inhabit them. There is one thing that makes game memorable are hitting all the notes, some games get it all right (god of war comes to mind) but most others get a few right (mainly visuals) and everything else barely passable.
I can only imagine how long it took to tune the game mechanics in a game like god of war, the settings, the camera angles, etc. It's not merely content generation, it's the experience that the developers create for the gamers themselves. Why should a gamer care about game x/y/z? what's the hook? whats the draw?
The thing I loved about 8-bit games was that developers had to find the fun and expression of meaning within constraints and not depend on merely flash to sell games.
Re:Fractal Generation (Score:5, Funny)
Automatic plot content? Let me help.
def generate_mmorpg_quest():
from random import choice as c
Compliment = c(['brave','noble','1337'])
PC = c(['warrior','chevalier','hunk'])
McGuffin = c(['baby','necklace','iPhone'])
Lost = c(['stolen','dropped','forgotten'])
Arena = c(['cave','forest','library'])
Reward = c(['baby','necklace','iPhone'].remove(McGuffin))
Enemy = c(['orcs','terrorists','street mimes'])
Dialogue = """Oh, %s %s. My %s has been
%s was %s in the %s! If you can bring it back
safely, I fill grant you this %s. Be careful,
I fear there may be %s!"""%(Compliment,PC,
McGuffin,Lost,Arena,Reward,Enemy)
return Dialogue
Real programmers will insist that a domain specific language gets used, so the interpreter can abstract the context handling, but it's good enough for the first version...
Re: (Score:2)
That reminds me of then automatic map generation of the early Elite versions. The C64 version did not only generate the map procedurally, but also the background info for the worlds on the map. This led to such things as "Planet XXX is known for its edible arts graduates" ;-)
Re: (Score:2)
Rewards = ['baby','necklace','iPhone']
Rewards.remove(McGuffin)
Reward = c(Rewards)
There's a TypeError in the dialogue, I have changed the second line to:
%s in the %s! If you can bring it back
Open source ftw.
Re: (Score:2)
Thanks, I saw the typo after I posted. I didn't catch the remove method ... that's embarrassing. I guess I should have tested it before committing.
Re: (Score:2, Interesting)
Oh hell, don't remind me. In history class we had to learn how to identify the age of city areas by their road organization style.
I don't think organizing the houses is the hard part in generating a city for a game, painting the individual houses is. Of course you can probably use procedural generation to increase the variety but you'll still have to feed a large number of basic elements into the system to get a good range of looks instead of copypasta buildings. The player won't see a large part of the cit
Useful as far as it goes (Score:2)
That's fine if you want to model a generic American city, but it's less useful if you want to set your story in a specific city (although maybe the broad strokes can be done manually and then the detail fractally) or in a European city, which being so much older tend to have pockets of non-gridded streets where villages or minor towns have been swallowed up by expansion.
ISTM, anyway, that fractal generation of the models of the houses themselves would be far more valuable. Laying out roads is a relatively m
Re: (Score:2)
Yes, any European city with some history behind it looks "organic" rather than designed.
Think about it. I'm living in a small city that was founded in 1190 and that for centuries had to withhold attacks from the Turks.
This doesn't mean that you can't generate cities using some fractal procedures though, it's just that depending on the setting, it might be more difficult.
Re: (Score:1)
Re:Fractal Generation (Score:5, Informative)
The guys at Introversion are already trying this:
http://uk.youtube.com/watch?v=_zluTvROHXA [youtube.com]
Re: (Score:2)
People can see patterns everywhere, but that doesn't mean it's easy to recreate the same effect just with a few basic maths equations. What you'd probably end up with is something that looks far too much like a fractal pattern, unless you added back in all the stuff that takes a lot of effort and looks real.
Starflight (Score:2)
The classic game Starflight used a fractal generation technique to populate the galaxy and create planet surfaces as I recall. They fit an incredible amount of depth into a game that fit on two low density 5.25" floppies and that was part of the way they did it.
Re: (Score:3, Interesting)
Ever look at a city from the sky? [...] One of the things that never ceases to surprise me is just how... fractal most cities are.
If this sort of thing holds your interest, you might want to spend a quarter of an hour on Ron Eglash's TED talk on African fractals [ted.com]. Just a thought.
Practical applications (Score:2)
You, sir, have just described my dream for Sim City 9000.
It is a dream that will almost certainly never come from EA/Maxis (due in no small part to the the new direction represented by Sim City Societies), but you lay out a very plausible methodology for procedural urban synthesis.
Combine this organic growth with user-directed constraints, and you could have a very compelling simulation.
Christopher Alexander's Patterns (Score:2)
Re: (Score:2)
Here are some screenshots and info [introversion.co.uk].
Re: (Score:2)
A real city in north america maybe (Score:2)
But most cities in the rest of the world arn't built on a grid system - they grew up at random and have completely random street patterns.
Re: (Score:1)
I don't think MM9 proves that there's a real market for 8bit stuff, just for big name brand stuff that was popular in the 8bit era being made in that style. A dev team that's not working with an existing, popular 8bit IP would have trouble selling an 8bit-like game simply because noone wants that when there's no nostalgia associated with it.
Of course from what I see even one man dev teams can handle 32 bit 2d graphics just fine.
Re: (Score:3, Informative)
You're partly right and partly wrong.
Originally, 3D was actually much better in terms of time requirements. It was much easier to create a 3D model and animate it than it was to draw sprites and every single animation for them frame by frame, particularly if you dared to have your character/whatever "turn around". This problem was exagerated for games like desert strike and command and conquer where things weren't straight 2D but were on a slight angle so you couldn't get away with simply rotating sprites a
Re: (Score:3, Informative)
I disagree on the point of 2D reaching its limit. There have been plenty of technologies that have been developed for 3d graphics that make significant improvements for 2D games as well.
If you haven't seen it before check out the game Oden Sphere. This is one have that took 3d technologies and using then to great effect in a 2D environment. Oden shpere used polygons on a 2 dimensional plane to stretch and distort the sprites textures allowing the game to have a more dynamic motion. it then used that technol
Re: (Score:2)
I'm talking about the type of game and not just merely the process of creating art. I'm talking about overall content creation for 2D games, not the process of creating 2D art and textures for a 3D game (which still requires more work then a 2D game). Things also have advanced considerably since then in terms of hardware horsepower and graphical resolution, thereby increasing demands in both domains. Consider the level of detail of old 8-bit and 16-bit games, you don't need anywhere near the texture deta
Re: (Score:1)
I'll tell you it's way way more work to create content than it is to create game engines or anything else code related.
I once programmed a simple MUD game from scratch, as part of a school project.
I only bothered to add about 15 locations to the game. The creativity is more tedious than the coding.
Wow.
Re: (Score:2)
> (...)
> I only bothered to add about 15 locations (...)
Yay, mine had 9, but had support for alternate realities, teleports, ground of varying height (hills, etc) and big open spaces ("you can see a tall tower on the north-east" -- created procedurally). My sister was supposed to add more content but I've lost interest in the project before it seriously took off from the ground.
Re:Absolutely (Score:4, Interesting)
If you've never made a game yourself, you'd be amazed at how much work it is to create content.
Oh yes!
In two or three working nights*, you can go from no OpenGL programming experience to having a working, near-complete version of tetris [and you could probably get the scoring and acceleration in there if you had coded things the right way in your first try].
*Unless you wait 15-30 minutes for your computer to boot and shutdown ;)
But blocks each in a single color, against a black background and some dark gray well walls... nuh-uh. You need a background texture, you need textures for all the pieces. You need to consider having multiple background textures---with and without drop hints, and with different kinds of drop hints.
If you want wells of more than one size, you need a background texture, plus some way of generating drop hint textures from some abstract description and sprites combined to form the real well texture. And maybe a nice low-alpha image of the current block at its fast-dropped position.
I'm doing this in 3d. Really it's 2d, but with a slightly tilted view so one can see the undersides of the blocks. Should the undersides have different textures? How should the camera control work--fixed, auto or manual? Do I need to make special overside textures as well? If you want to turn it into a tetrinet client, you need special textures (maybe overlaid textures) to indicate all the special weapon blocks.
And I need to consider what the background of the menu should be... some sort of demo mode, perhaps? Tetris Holding LLC has a sound trademark on using the song Korobeiniki in a video game. Should I find copyright-expired versions of some of the other songs used as background music for tetris? Should I record some myself? Should I cop out and just run ~/.mytetris/{pre,host}hook from a wrapper script, such that the user can easily load tetris.m3u, but on their own and not as a part of the game?
And that's just for frigging tetris, one of the simplest games imaginable.
Re: (Score:2)
[Plenty of decisions] And that's just for frigging tetris, one of the simplest games imaginable.
Tell me about it [pineight.com].
Re: (Score:2)
Yeah, one of the interesting things about procedural content generation is that it moves the emphasis from quantity of staff working on a project to quality. While it requires fewer lines of code, unless a programmer is at a certain level (PhD-capable, I'd say), they simply can't make a genuine contribution to the project. While not needing quite the same level, the other positions in the project also need higher levels of intellectual capability compared to their peers simply to be able to work with and ta
Re: (Score:2)
Of course, it's also tricky to do correctly, very few games are there at the moment
Come on, it's not that difficult to rotate the palette of the monsters. Or you can just give the same monsters a load of more hit points as you progress from normal to nightmare and hell. ;)
Another interesting idea is to create combinatorial mechanics. For instance, in One Must Fall, you can choose between 10 pilots and 10 robots, giving you 100 unique fighting styles for the cost of 20 pieces of artwork.
And there's of course the possibility of player-generated content in the style of Spore. I imagine it
Re: (Score:2)
Those same tricks, if overused, can make the game lifeless and boring. Palette swapping and combinatorial mechanics are ok, but you have to make sure that things remain fresh for the player.
Re: (Score:1)
Procedural content requires someone to have a grasp of both programming and art, those skills are usually mutually exclusive (different brain wiring) so finding someone who can work with procedural generation and make sure it looks good is going to be hard and expensive.
Re: (Score:2)
I'm both a (hobbyist) programmer and a (hobbyist) artist (I play guitar, draw comics, etc). Programming was always a kind of art to me, because coming up with a good solution to a problem often needs a lot of creative thinking. The copyright law applies to both programs and other works of art.
Once a girl (who was a cello player) asked me, why do I play guitar. I was very surprised by this question... I never really thought about it before. "Because I like it?
Re: (Score:1)
Personally, I don't find procedural content to be a savior here. It's most promising for automatic generation of large universes (see Elite, Elite Frontier,
Re: (Score:2)
You are aware of DarkTree [darksim.com], right ?
Re: (Score:2)
Re: (Score:2)
You have _clearly_ not used the program, you are _clearly_ misinterpreting the user interface screenshot, and you _clearly_ dont work as a 3D texture artist ( neither do i but i know a few of them who all consider procedural texture generators like DarkTree and Genetica valuable tools ).
A small clue: Just because something is on the left side of the screen in the user interface do
Re: (Score:2)
Its already being done too in simpler forms, to add modulated detail to texture etc. with fragment shaders essentially becoming part texture generators. There are different balance point on how much you want to let be pregenerated by CPU and cached, how much of it always recalculated on the fly, and how much simply streamed from th
Re: (Score:2)
Re: (Score:2)
What game project? I trained in art until I realized I could make good money mucking with computers (and enjoyed it almost as much), but I'd like to get back into some of the more arty stuff.
Re: (Score:2)
What game project? I trained in art until I realized I could make good money mucking with computers (and enjoyed it almost as much), but I'd like to get back into some of the more arty stuff.
Re: (Score:3, Insightful)
Man, I can't wait for "Average Mid-Sized City the RPG!" Procedural content is alright for some things, but where's the gameplay in it? People loved Grand Theft Auto in large part to the amount of care that went into each area that most players would never notice - such as the mural in an out of the way subway station. Also, the little differences in the various boroughs from the design to the locals that made it feel authentic. You could generate a thousand square miles of procedural city, but it will make
Re: (Score:2)
proceedural isnt synonymous with homogenous and flat. you can seed different attitude & parameters for different areas. rather than imagining a world comprised of a single function, it'd be closer to a world of aggregated functions where each area has stronger or weaker impact from the various functions. each "function" just describes a particular flavor of terrain.
Re: (Score:2)
Left4Dead (Score:2)
Left4Dead (4-player zombie survival co-op, released yesterday by Valve) deserves a mention. While not exactly procedural "content", it is perhaps one of the first examples of "procedural gameplay" (at least in a modern shooter).
For those who don't know, Valve built an algorithmic "pacing engine" into L4D called the Director, which has complete control of what enemies and items you encounter.
What this means is that every playthrough is completely different and you never know what to expect. It's exhilarati
Re: (Score:2, Flamebait)
You got paid for that copy already. Get over yourself. I'll keep buying used DVDs and games, just like I buy used cars. Maybe if you charged less than $50 for 4-5 hours of gameplay I'd consider buying new.
Quantity Vs Quality (Score:2, Interesting)
Re: (Score:3, Interesting)
http://www.barrys-rigs-n-reviews.com/reviews/2007/hardware/ev88gtx/images/game/oblivion01.jpg [barrys-rig...eviews.com]
Also, introversion is working on something: http://www.youtube.com/watch?v=yI5YOFR1Wus [youtube.com]
Re: (Score:1)
Yeah, and every single "piece" of a tree is exactly the same as the rest and moves at the same time and with the same speed as the rest. The end result is pretty disconcerting and not a little ugly. Procedural content has a strong tendency right now to also be ugly content that sticks out like a sore thumb compared to anything with even the remotest degree of human involvement.
Re: (Score:2, Interesting)
I played Oblivion extensively, and while it was very pretty when you got the huge 4GB texture packs - what was pretty was the landscape, the massive vistas, mountains and valleys. In Oblivion the farther you could see the prettier it was. Almost every random spot in the woods looked exactly like every other random spot in the woo
Handcrafting is a procedure, too (Score:3, Insightful)
Handcrafting a scenery is just another form of procedural generation, at the core. The crafter follows his or her own heuristics and combine them with specific content models and elements as a source, while remaining within the technical constraints projected for the end-result.
How do you make, say, a RTS map ? You start by stating your goals: there will be N starting bases, the landscape will include M ridges so that the length of path between each base is balanced, and each will have access to pretty much
Re: (Score:2)
While the RTS map layout could probably be easily generated it takes a human to make it look good. Computers tend to generate very unrealistic looking maps.
Re: (Score:3, Interesting)
I haven't played Oblivion, but as far as I know the terrain is all heightmap based. I think a large part of the boringness of the terrain is a direct result from that and not so much the procedural nature itself. A heightmap doesn't allow sudden changed in elevation and neither does it allow overhangs, so all the basic terrain looks pretty smooth and uninteresting and also pretty much all the same. Gothic2 is one of the few games I have seen with real 3D terrain, you have overhangs, cliffs, valleys and moun
Re: (Score:1)
Re: (Score:1)
http://www.infinity-universe.com/Infinity/index.php [infinity-universe.com]
Re: (Score:2)
A ten year W.I.P isn't a good example of procedual content generation in games. Yes it's a game, but if no one gets to play it then it's kinda pointless.
Re:Quantity Vs Quality (Score:4, Interesting)
It's generally a three stage process. You have something like a perlin noise function as input. Then you have a mapping function, which turns it in to something in your problem space, then you have a weighting function, which makes some things more likely than others (often the mapping and weighting functions are combined).
The hard bit to get right is the weighting function. A perlin noise function and a mapping function will give you a universe, randomly selected from the set of all possible universes. Making universes which look good and are fun to play in more likely to appear is the tricky bit. This requires a lot of fine tuning. Often it's just a matter of tweaking a few constants when you have the basic algorithm implemented, but it can be really time-consuming to do.
Re: (Score:2)
Using a single noise input and a single function is what I blame for proceedural generation getting a bad name: it makes terrain incredibly homogenous and bland in character. Real land is made up of faults and upswells and erosion and gulleys. Even quarter way decent proceedural generation needs the ability to mix and match different factors and features, otherwise you arrive at the same bland failure we've had for a dozen years.
Spell it out for me please (Score:1)
So just for a joke pretend that I'm an idiot for a second: This procedural generation is about generating landscapes or textures using mathematical algorithms or something?
So it's like Terragen [wikipedia.org] for they do more than landscapes... they generate buildings and clumps of grass and trees? And the textures on dirt have random mess on them to make less uniform and more believable? Something like that?
Are there screenshots of this?
Re: (Score:3, Interesting)
... they generate buildings and clumps of grass and trees? And the textures on dirt have random mess on them to make less uniform and more believable? Something like that? (..) Are there screenshots of this?
Just for kicks: a nice example came out of the demoscene a few years back: kkrieger [theprodukkt.com]
I'd call it a 'proof of concept' 3D shooter. Nothing challenging, just a few levels you can easily walk through. Nothing exceptional on the graphics side. Runs on Windows like so many games.
But: a true HW-accelerated 3D shooter. Has enemies that jump / try to hurt you if you let 'em. A few big spaces to walk around in and admire the artwork on the walls. And all of this packed in an amazing 97,280 bytes! Hell, each scree
Re: (Score:2)
That's not the kind of procedural generation that was talked about. kkrieger uses hand-designed assets but stores them in a format that takes only a tiny amount of space, the kind we're talking about gets some input parameters and generates a huge variety of assets to populate a world with. The goal is to reduce workload, not filesize.
Re: (Score:2)
The goal is to reduce workload, not filesize.
Tell that to Xbox 360 developers who bitch about having one-seventh the storage of a PS3 disc.
Re: (Score:2)
Yeah, pretty much. Here's [infinity-universe.com] a project that's attempting to create an entire universe in a similar fashion.
But don't think it's restricted to just landscapes and textures. Any content can potentially be generated procedurally - buildings, creatures, music, vehicles, whatever.
Re: (Score:1, Offtopic)
Dictionary.com: For: by reason of; because of.
Procedural? (Score:2, Informative)
Sounds like by "procedural" you mean "algorithmic". I guess the algorithm might be defined procedurally, but that's not really what is discussed here.
Re: (Score:3, Informative)
Yes, the actual term is "procedural", as in procedural textures [wikipedia.org] and procedural content generation [wikipedia.org].
No, this is not a discussion of procedural programming [wikipedia.org] vs object oriented vs functional, etc.
Re: (Score:2)
"Procedural" refers to the fact that content is being generated on-the-fly, rather than stored in giant texture files. It is derived from the procedural scripts used to define the parameters for the object to be created (although with the power of scripting languages today, one could argue that this no longer applies).
One of the coolest procedurally-generated demonstrations I have seen is .kkrieger [theprodukkt.com], which is a first-person shooter whose content is almost entirely procedurally generated. The effe
Re: (Score:1)
"Procedural" refers to the fact that content is being generated on-the-fly, rather than stored in giant texture files. It is derived from the procedural scripts used to define the parameters for the object to be created (although with the power of scripting languages today, one could argue that this no longer applies).
In fact, there's a wiki [wikidot.com] for this stuff.
Re: (Score:2)
Re: (Score:2)
Re: (Score:2)
Re: (Score:2)
Re: (Score:2)
That's what I said. It done by procedural programming = writing procedures.
The term has absolutely nothing to do with procedural programming vs. OOP. That would be an implementation issue that is far down into the weeds. The perm "procedure" here is meant much more generically to mean simply "not done by hand".
As an example, you could do procedural content generation using only OOP.
Point that the parent was making is that it doesn't have to be procedural; there are other ways of specifying algorithms
Re: (Score:2)
As in: the procedure we usually follow is that we get a graphics designer to make some sketches on paper, and if we like them, we give them to the 3D modelling people? Algorithmic is a much better term, I think.
I would agree, but for disambiguation purposes, I was trying to at least make clear to the confused that the term has nothing to do with the programming style used to generate the content. Which seems to be a point of great confusion.
Re: (Score:2)
Cloud rendering (Score:1)
I seem to remember somewhere in the commentary for Final Fantasy: The Spirits Within that they also spent a lot of effort on creating a computer generated sky, but it looked unconvincing. Eventually they gave up and did the clouds by hand.
Procedural Muscle (Score:2)
If you really want to see the extreme of what procedural generation can do, check out this 3D demo [pouet.net] of a tunnel fly-through written in 256 bytes (YES, THAT'S BYTES, not kilobytes)!!!
LS
Re: (Score:3, Interesting)
Procedural Generation: The latest thing (Score:3, Funny)
World simulation and crafting items (Score:2)
I find this aspect particularly interesting, because it promises more variety in games where you can build things. Like many MMORPGs. You could experiment with various materials and get believable results, maybe at a level of realism where it actually has educational value.
This could be done today at a simplified level, where the materials you use affect the stats of the items. Plus maybe textures that are swapped in depending on the material. But with serious simulation (maybe finite element analysis of ho
Procedural Generation wiki (Score:2, Interesting)
Procedural worlds from the creator of Bryce. (Score:2, Interesting)
Take a look to this http://www.uisoftware.com/Voyager/ [uisoftware.com]
Those are completely procedural worlds from the creator of Bryce.
It's based on Artmatics that can be used to generate fantastic textures and then there is a ray tracer that can use ray casting to create the landscape.
The latest move of Eric Wenger was to use that to generate procedural cities and the result to me is fantastic.