[Submitted](PCG) Procedural Content Generation
-
- Goblin
- Posts: 225
- Joined: Mon May 01, 2006 12:03 am
- Location: Germany
- x 5
[Submitted](PCG) Procedural Content Generation
I'm interested in PCG since half a year and read some paper about it, thought about uses for game devlopment and now i think it is quiet usefull.
I would love to create an addon for Ogre which enables the user to use PCG and the SoC is a great oppertunity for this.
This addon would includes some Randomnumbergenerator, different Noisealgos and some other Algos needed to create worlds combined in an simply interface/Manager.
With this i would writte following world generators to show the use of algos
-Landscape(Lakes,Hills, Mountains,etc.)
-Cities(Buildinges,Streets
-Universe(Planets,etc)
If there still more time, this points would be interesting
-Plants,Trees
-Textures
-Combining the Landscape,Cities and Univeres generators.
What do you think? Any more good ideas what could be done wiht PCG?
I would love to create an addon for Ogre which enables the user to use PCG and the SoC is a great oppertunity for this.
This addon would includes some Randomnumbergenerator, different Noisealgos and some other Algos needed to create worlds combined in an simply interface/Manager.
With this i would writte following world generators to show the use of algos
-Landscape(Lakes,Hills, Mountains,etc.)
-Cities(Buildinges,Streets
-Universe(Planets,etc)
If there still more time, this points would be interesting
-Plants,Trees
-Textures
-Combining the Landscape,Cities and Univeres generators.
What do you think? Any more good ideas what could be done wiht PCG?
Last edited by mirlix on Tue Mar 20, 2007 12:05 am, edited 1 time in total.
- sinbad
- OGRE Retired Team Member
- Posts: 19269
- Joined: Sun Oct 06, 2002 11:19 pm
- Location: Guernsey, Channel Islands
- x 66
- Contact:
- Alexander
- Gremlin
- Posts: 175
- Joined: Sat Aug 05, 2006 3:55 am
- Kencho
- OGRE Retired Moderator
- Posts: 4011
- Joined: Fri Sep 19, 2003 6:28 pm
- Location: Burgos, Spain
- x 2
- Contact:
What makes you think that? Underestimating people's abilities is an error in my opinion. Take a look to Windward Mark's products and let's talk about Ogre capabilities I've seen those results in realtime only in Silicon Graphics' stations before...Alexander wrote:I agree that it's very interesting, but there's a plethora of off-line tools which do a fantastic job of this (World Machine comes to mind). I can't help but think that an Ogre version of procedural terrain generation would simply pale in comparison to what's already out there.
Procedural content is just another field where one's knowledge and imagination can show their true potential.
Also, generating it is not the final goal of this. This is about doing it in run time and with no disk space
-
- Goblin
- Posts: 225
- Joined: Mon May 01, 2006 12:03 am
- Location: Germany
- x 5
This would be my final goal, using the project to create infinite landscape in run time, otherwise i think i need a really big harddisk . The hard part is not to create landscape, but make it look interesting and not all the same.Kencho wrote:Also, generating it is not the final goal of this. This is about doing it in run time and with no disk space
I think this project could be usefull for prototyping. The programmer can just fire up the landscape generator and implement the core gameplay features to test the game idea.
- Alexander
- Gremlin
- Posts: 175
- Joined: Sat Aug 05, 2006 3:55 am
As for underestimating, it's not a matter of ability but of time research and resources. There's no way that any single coder is going to knock out anything nearly as rich or robust as WM in the time SoC runs for, and with real-time constraints.Kencho wrote: What makes you think that? Underestimating people's abilities is an error in my opinion. Take a look to Windward Mark's products and let's talk about Ogre capabilities I've seen those results in realtime only in Silicon Graphics' stations before...
Procedural content is just another field where one's knowledge and imagination can show their true potential.
Also, generating it is not the final goal of this. This is about doing it in run time and with no disk space
My only question is whether or not this is a needed feature for many users. I think we can agree that it's not going to be more effective than offline tools, but the question is whether it's needed for terrain. It seems very specialized to me. I didn't mean to imply that mirlix isn't capable, though!
- pekar
- Halfling
- Posts: 92
- Joined: Sun Mar 04, 2007 2:56 pm
- Location: Belgium
I have some questions regarding this project.
Because it is breaking new ground for Ogre, what would the aim of the project be?
Is it to provide a demo, to show in which way the community can approach the topic in the future, or is it really aiming to provide a starting point for more functionality in the future?
What is the target environment?
I think the real value would be real-time capabilities, because artists already have a lot of off-line capabilities to generate procedural content. However, Blender 3d is lacking support of procedural content (if I'm not mistaking, it's all down to scripting). Maybe we can meet in the middle?
This argument is of course not completely valid. There is , of course some value in creating off line content if you think small file size for this content is important (and once Ogre makes the move to cell phones, this would be VERY important ).
Who is the target user?
Simply put, are we making a tool for the programmer, or for the artists (of course, often these two are one and the same person) ? I think this decision is still an important one, because it defines the interaction between the project and the user. Artists generally don't like playing with a parameter "cragginess", while programmers generally don't like to leave there IDE .
Because it is breaking new ground for Ogre, what would the aim of the project be?
Is it to provide a demo, to show in which way the community can approach the topic in the future, or is it really aiming to provide a starting point for more functionality in the future?
What is the target environment?
I think the real value would be real-time capabilities, because artists already have a lot of off-line capabilities to generate procedural content. However, Blender 3d is lacking support of procedural content (if I'm not mistaking, it's all down to scripting). Maybe we can meet in the middle?
This argument is of course not completely valid. There is , of course some value in creating off line content if you think small file size for this content is important (and once Ogre makes the move to cell phones, this would be VERY important ).
Who is the target user?
Simply put, are we making a tool for the programmer, or for the artists (of course, often these two are one and the same person) ? I think this decision is still an important one, because it defines the interaction between the project and the user. Artists generally don't like playing with a parameter "cragginess", while programmers generally don't like to leave there IDE .
-
- Goblin
- Posts: 225
- Joined: Mon May 01, 2006 12:03 am
- Location: Germany
- x 5
There would be a demo, but the demo would only be used to present the result. The main part of the project is a "starting point". This means i create a set of classes needed for PCG.pekar wrote:Is it to provide a demo, to show in which way the community can approach the topic in the future, or is it really aiming to provide a starting point for more functionality in the future?
The frist step would be to write a Manager for Randomnumbers and Noisevalues. This Manager would create and update these generator, every generator would have a one update rate to enable the user to use different frequencies, needed by many PCG algos. Also combining some of the generators in one value would be needed and managed by the Manager.
The next step would be to write a Landscapegenerator. These generator can be configured with some value to modify the output and the textures.
One import fact is that Procedural Content doesn't replace all the content greated by artist, this is just unrealistic at this moment and would result in very boring gameworlds. Procedural Content should replace the "fill" content created by artist to fill the world with object, but aren't importend to the game. The best way is a symbiosis between both, procedural and artist made, content. One Example would be that the Artist creates a Model of a City and places this in the landscape generated by the computer. I think this is the good way to dealing with PCG, because you can create a unique gameworld but save work using because you dont have to create everything.
One good paper about this is from intel
http://www.intel.com/cd/ids/developer/a ... /20247.htm
Controlling the landscapegenerator over parameters in the code will be the first possible way, but enabling the generator to read a xml file isnt that difficult and using this xmlfile for an editor should be possible. But i dont now if i make it in the SoC project or afterwards, depends on the time which is left.[/url]pekar wrote:Who is the target user?
- tuan kuranes
- OGRE Retired Moderator
- Posts: 2653
- Joined: Wed Sep 24, 2003 8:07 am
- Location: Haute Garonne, France
- x 4
- Contact:
libnoise does a very good job at generating procedural content for landscape.
Perhaps you should go another step further and propose a tools based on libnoise that generates landscape + complete nature coverage (with some user parameters as in libnoise tutorials), all that exported in ogre compatible formats.
Perhaps you should go another step further and propose a tools based on libnoise that generates landscape + complete nature coverage (with some user parameters as in libnoise tutorials), all that exported in ogre compatible formats.
-
- Goblin
- Posts: 225
- Joined: Mon May 01, 2006 12:03 am
- Location: Germany
- x 5
- pekar
- Halfling
- Posts: 92
- Joined: Sun Mar 04, 2007 2:56 pm
- Location: Belgium
Finally, it arrived! It's pricey, but from what I can tell by skimming it, it could be an excellent resource. It's been called the 'bible of procedural generation', and I'm not arguing .
Texturing and Modeling : A Procedural Approach
I think I want to be alone for a while now .
Texturing and Modeling : A Procedural Approach
I think I want to be alone for a while now .
- Aladrin
- Orc
- Posts: 465
- Joined: Fri Mar 10, 2006 10:22 pm
There's 2 views of this so far... Creating a starting point for a scene, or creating a scene intended to be used right-away, without human interaction before-hand.
libnoise creates great terrain for the pre-generated type... It's a great starting point.
But any realistic scenes would also have to take into account other things, such as the natural smoothing effects of weather, water, wildlife, people, etc. There would be an awful lot to take into account, even for the relatively 'simple' job of procedural landscapes.
I'm not arguing against the project, just adding my $.02 worth. I would love to see a whole slew of PCG utilities. Pre-generated and realtime-generated both.
libnoise creates great terrain for the pre-generated type... It's a great starting point.
But any realistic scenes would also have to take into account other things, such as the natural smoothing effects of weather, water, wildlife, people, etc. There would be an awful lot to take into account, even for the relatively 'simple' job of procedural landscapes.
I'm not arguing against the project, just adding my $.02 worth. I would love to see a whole slew of PCG utilities. Pre-generated and realtime-generated both.
- pekar
- Halfling
- Posts: 92
- Joined: Sun Mar 04, 2007 2:56 pm
- Location: Belgium
If you don't mind, I'll really annoy you:
On generating planets:
http://www.gamasutra.com/features/20060 ... l_01.shtml
http://www.gameprogrammer.com/fractal.html
A surprisingly honest development diary on Introverion's Darwinia. It also shows how they used procedural generation
http://www.darwinia.co.uk/extras/development.html
Will Wright discusses Spore (requires registration)
http://www.pqhp.com/cmp/gdctv/
Outdated now, (doesn't show texturing, but incredible): Will Wright gives a Spore showcase
http://video.google.com/videoplay?docid ... 98&q=spore
And a simply amazing collection of links
http://www.efg2.com/Lab/Library/Simulat ... .htm#Games
Goodbye time off
On generating planets:
http://www.gamasutra.com/features/20060 ... l_01.shtml
http://www.gameprogrammer.com/fractal.html
A surprisingly honest development diary on Introverion's Darwinia. It also shows how they used procedural generation
http://www.darwinia.co.uk/extras/development.html
Will Wright discusses Spore (requires registration)
http://www.pqhp.com/cmp/gdctv/
Outdated now, (doesn't show texturing, but incredible): Will Wright gives a Spore showcase
http://video.google.com/videoplay?docid ... 98&q=spore
And a simply amazing collection of links
http://www.efg2.com/Lab/Library/Simulat ... .htm#Games
Goodbye time off
-
- Goblin
- Posts: 225
- Joined: Mon May 01, 2006 12:03 am
- Location: Germany
- x 5