Celledor
Community Member

Posts: 156
|
 |
« on: May 17, 2008, 08:34:38 AM » |
|
I saw this game project and wow... you can fly from space down to the planet’s surface in one seamless go. http://www.infinity-universe.com/InfinityForums/viewtopic.php?t=7385The question is how is it done... sure there are several landscapes put together with extensive LOD and I guess you could use an editor like L3DT for the heightmaps and textures and so. But how do they the curved horizon? As far as I know you can't create a sphere from squares.
|
|
|
|
|
Logged
|
Projects right now: Prytorian Defender & Colony
|
|
|
Lenn
Customers
Community Member
    
Posts: 390
Ivan Miskelic
|
 |
« Reply #1 on: May 17, 2008, 11:21:09 AM » |
|
Well my guess would be that they slowly alpha-fade in/out the more detailed LOD versions of the terrain as you get closer. This can be done so if you had like 4 versions of the whole planet and 4 versions of the detailed terrain, the last version of the planet segment would be curved but before you switched slowly (by alpha fading) to the flat terrain, the curvature would be almost non-noticable. Anyway, we don't know if it's seamless entirely until we see an actual video. I don't see any video posts or demos in that journal so, how can you know what he claims is even true?  Of course having (in my example) 8 versions of a particular part of segment of terrain would need a lot of system resrources in the first place. But it can be done.
|
|
|
|
|
Logged
|
|
|
|
|
|
|
Lordtek
|
 |
« Reply #3 on: May 18, 2008, 10:33:47 PM » |
|
I'm not sure how they did it but i know with good programming it can be done quite easily using landscapes. No matter how round a sphere appears to be, computers use triangles to make them. Landscapes can be be made to simulate these triangles and the pipeline will only draw half of the landscapes anyway.
|
|
|
|
|
Logged
|
common sense isn't common anymore
|
|
|
|
|
|
Zaknafein
|
 |
« Reply #5 on: May 19, 2008, 06:31:02 PM » |
|
@Toaster As far as I know, that nVidia demo uses geometry shaders, so DirectX 10 and GeForce 8000 Series or better... and Vista. Infinity has screenshots dating from 2003 and 2005, so I doubt that they're using such cutting-edge technology. Also using geometry shaders restricts your target audience quite a bit, especially if you're making an MMO.
But it's definitely procedural content generation, and some of it may be done on the GPU, using texture shaders for example (tx_1_0, TV3D supports that), just probably not using geometry shaders.
|
|
|
|
|
Logged
|
|
|
|
Lenn
Customers
Community Member
    
Posts: 390
Ivan Miskelic
|
 |
« Reply #6 on: May 20, 2008, 09:10:50 AM » |
|
whoa @ that video  I wanna make something like that 
|
|
|
|
|
Logged
|
|
|
|
petroz
Community Member

Posts: 603
|
 |
« Reply #7 on: May 21, 2008, 04:40:58 PM » |
|
I think they're not using a flat landscape at all. probably made their own custom landscape object which is spherical. I been thinking of doing this.. spherical geometry is sort of mind-bending but i might get back to it.
Very impressive video!!
-Petroz
|
|
|
|
|
Logged
|
|
|
|
|
Raine
|
 |
« Reply #8 on: May 21, 2008, 05:39:56 PM » |
|
That vid is awesome. Could it be that they're bending the landscape with a simple vertex shader? The higher you are, the more the bending effect.. but this is just a guess.
Then, at some treshold, the landscapes are substituted by a spherical mesh, textured with a low-fi merged texture. It would make sense since I guess they have to dynamically load / unload stuff depending on your position.
|
|
|
|
|
Logged
|
|
|
|
Maroonhawk
Community Member

Posts: 99
|
 |
« Reply #9 on: May 21, 2008, 10:31:48 PM » |
|
Flavien Brebion, the game's producer/programmer/director and just about everything else, has written iNovae, the graphics engine and game engine from scratch using DirectX (a lot of the earlier work was written in OpenGL, however, so some ports may be possible later on - see here: http://www.infinity-universe.com/InfinityForums/viewtopic.php?t=21750 ) Therefore, I think it's pretty fair to say he's probably come up with his own clever solution that seems to work quite good  I'm somewhat active in the Infinity community, have been for about a year now, so I like to keep track of all this stuff. It's amazing to see how far its come in just the year since I've signed up. I knew this game would pop up here eventually 
|
|
|
|
|
Logged
|
Useless applications by a bored teenager
|
|
|
|
|
AriusEso
Customers
Community Member
    
Posts: 376
Esoteric
|
 |
« Reply #11 on: June 14, 2008, 08:53:28 AM » |
|
Procedurally generated landscapes on the GPU - this is still a relatively new field and is generally unexplored. Even GPU Gems 3 says there is a lot of work to be done and people working in that field are breaking new ground - even indies. However, I've never been that huge a fan of procedural content( purely because, unless it makes LOGICAL sense to do so, procedural is not the way to go imo, doing it when it makes no sense for a cookie on indie forums is moronic imo ). For example, most games need to know the layout of a map, and doing so realtime can be cumbersome. However, I do like the results of procedural landscapes - afterall, one could claim our own sphere is generated randomly. Unless we specifically changed our environment we pretty much just built villages, towns and cities where it was appropriate. I think we are still a few years away from this however, but if you're like me( not all that interested in games development, but rather what I can push in realtime on the latest tech for game development purposes ), it is surely an interesting topic. I am waiting until I can afford duel GeForce 9800 GX2 1024MB cards before I start messing with DX10 and SM4. But the first thing on my list is procedurally generated terrains. My main reason, is because it is quite rare for something to be so unexplored - so unexplored that an indie can actually play around with it and break ground. We ALL like to pretend it's the 80's and something we do can be new, but I feel those days are over - unless you're a graphics programmer. Because of the instruction limit( plug, see zaks site  ) it is entirely possible that visual and procedural breakthroughs can be made by the indie programmer - if they're dealing with graphics. So yea, in any case, once I get my DX10 cards this is top of my list... mainly because I want this screenshot to have my children.  I know this post was mildly off-topic, but someone mentioned it. I think it was Toaster, landscapes on GPU etc. So I wanted too add my 2 cents  .
|
|
|
|
|
Logged
|
|
|
|
Lenn
Customers
Community Member
    
Posts: 390
Ivan Miskelic
|
 |
« Reply #12 on: June 23, 2008, 11:04:57 AM » |
|
Contrary to your opinion, I believe procedural content is the future. The next big MMOG will be able to create solar systems, planets, continents and cities by the millions and still be unique. It just takes a lot of figuring out to make it all logical and realistic looking, the designer would have to have a very specific mindset. It will also make economical sense to move away from purely custom created art to a mixutre of procedural and custom (or modular). This is why I think Infinity is great.
|
|
|
|
|
Logged
|
|
|
|
|
Makubab
|
 |
« Reply #13 on: June 23, 2008, 04:14:49 PM » |
|
believe it or not, on that game's site the guy has TONS of info that basically says how he does everything. He uses perlin noise to generate the landscape and through math and coordinates he projects a cube to a sphere and does that to every landscape he loads up. Its not complex if your a math person, its just curving a flat surface.
I agree with Arius though, procedural is not the way to go. The key to procedural content is that it is pseudo random. A seed number is used to generate the exact same results every time. If you want to change a single hill on a landscape to be larger that is impossible though without making NON procedural. The only procedural future there is for most games is animations so that the same animation isn't done the same way every time and very specific games (like Spore, which everything is procedurally created). Every detail you change on a procedural piece of content (a landscape for example) adds to the data of modifications needed after the base generation, which is slow.
|
|
|
|
|
Logged
|
|
|
|
ZaPPZion
Community Member

Posts: 329
|
 |
« Reply #14 on: June 24, 2008, 01:51:17 AM » |
|
We're going slightly off topic I believe, but i want to add a remark to the procedural discussion. I think procedural is part of the future, but not entirely THE future. I think RTS games can't live without procedurally created levels and so. I'd also love to see procedurally created dungeons in MMORPG's. Or maybe even in FPS multiplayer maps. That would really test the intelligence of the people, since you never know what's behind the corner. But yea, i don't like the thought of everything always being random. I think there will be a lot of non-procedural games in the future, simply because it's easier to create a story-line with it.
Just my 2 cents.
|
|
|
|
|
Logged
|
|
|
|
Celledor
Community Member

Posts: 156
|
 |
« Reply #15 on: June 28, 2008, 09:38:05 AM » |
|
This dosen't really have to do with infinity but as they will use a huge world and there is a discussion on procedural generation I though that I should post this link. It is a program that generates a galaxy that renders about 1000 billion stars in realtime. Really cool stuff. http://dmytry.pandromeda.com/galaxy/index.html
|
|
|
|
|
Logged
|
Projects right now: Prytorian Defender & Colony
|
|
|
AriusEso
Customers
Community Member
    
Posts: 376
Esoteric
|
 |
« Reply #16 on: June 28, 2008, 09:47:00 AM » |
|
Contrary to your opinion, I believe procedural content is the future. The next big MMOG will be able to create solar systems, planets, continents and cities by the millions and still be unique.
So, yes, that will be possible. But answer me this, once it is spread across an MMOG, how is it unique? - everyone on that server requires the same playing field. My problem is not with procedural content. It will play a large part in our future and people should look into it now, then when it becomes common place they will be somewhat accustomed. However, it must make logical sense. Using it in an MMO does not - unless the procedural nature of it is done at design time, in which case, as far as the end user is concerned it is not procedural. I'm probably explaining what I mean poorly, but in my head it makes sense.  Edit: lmao, I forgot to make my actual point  . My point was, procedural is a great thing, but it must make /logical/ sense to implement. Just making a city procedural because you can is stupid. In MMO terms you need to do this in design time anyway, in which case, you might aswell have a few human hands and eys watching over it to ensure it's viability to begin with.
|
|
|
|
« Last Edit: June 28, 2008, 10:00:19 AM by AriusEso »
|
Logged
|
|
|
|
AriusEso
Customers
Community Member
    
Posts: 376
Esoteric
|
 |
« Reply #17 on: June 28, 2008, 09:53:12 AM » |
|
Just as a sidenote, this thread has taken a tangent, which is probably my fault. I apologise to the OP but I find procedural, and infinity an interesting top. 
|
|
|
|
|
Logged
|
|
|
|
Lenn
Customers
Community Member
    
Posts: 390
Ivan Miskelic
|
 |
« Reply #18 on: June 30, 2008, 10:59:31 AM » |
|
I agree with Arius though, procedural is not the way to go. The key to procedural content is that it is pseudo random. A seed number is used to generate the exact same results every time. If you want to change a single hill on a landscape to be larger that is impossible though without making NON procedural.
There is one seed to create continents. Then adjust the ocean level to 70%. Then, if there are too many hills/mountains on the planet based on the needs of the design, reduce them. Mountains to hills, hills to grassland. Then if any of the areas are too big and cause resource imbalance in terms of RTS move them around. Create initial locations of mountain chains based on a second seed, and actual shapes of mountains based on a third seed. Blend the mountains and hills together. If you need more grassland to balance the starting locations in an rts, use a fourth seed to randomise them logically. In the end, calculate each tile's starting position attractability by surrounding resources - resources which are scattered based on a seed of its own - so each starting point on the planet has pretty much the same access and chance of success. Once you create cities, you can't expect the player to place each house if he is running an empire on a huge planet. Let him define zones if he wants, and then connect them intelligently and proceduraly using roads and some randomness in house/factory/whatever shape, texture, and other cosmetics, and place residential zones in logical places, for example. Roads between cities which will exist will be created based on terrain, direction, and some randomness. And so on and so forth. That was just an example in terms of how you could create a planet step by step, and each time it would be different but playable.
|
|
|
|
|
Logged
|
|
|
|
|