ROAM Planet rendering

A place to show off your latest screenshots and for people to comment on them. Only start a new thread here if you have some nice images to show off!
User avatar
DavlexDesign
Orc
Posts: 400
Joined: Thu Apr 23, 2009 7:23 am
Location: Australia
x 19

Re: ROAM Planet rendering

Post by DavlexDesign »

G'day Lord Lorik,
Sorry about the lack of posts, I've been quite busy on the engine, because the lack of feedback I got from posting the demo sort of concerned me. So I decided to add in a few of the eye candy things before I post a new demo for you guys to play with.

I've got my mathematics better now, so I can have a planet the actual scale of Jupiter( approximately 75,000 km radius) and everything is rock steady while on the surface, the mesh scales better now, I can produce an asteroid 500m across to the size of the Sun and the mesh that is produced doesn't blow out to something unusable.

The paging has come up nicely, and culling of the mesh is allot nicer, I can now spin on the spot and not get too much rubber banding.

I fixed my Horizon culling algorithm so that when on really large planets, I'm not drawing too much detail in the way too far distance.

I'm working on shaders at the moment, and see how I can get this thing looking (learning process for me)

So the engine hasn't stopped, it's just that I'm slack keeping the info' flowing,
sorry

regards

Alex
User avatar
aguru
Goblin
Posts: 236
Joined: Tue Feb 26, 2008 5:48 pm
x 3

Re: ROAM Planet rendering

Post by aguru »

This is all sounding marvelous! :) Really great to hear you are making progress.
User avatar
trilobite
Silver Sponsor
Silver Sponsor
Posts: 135
Joined: Thu Jul 13, 2006 9:16 pm
Location: San Juan Capistrano, CA, USA
x 1

Re: ROAM Planet rendering

Post by trilobite »

Alex:

I finally checked out your latest demo and it is AMAZING!
I'm very excited about it!
Lord LoriK
Goblin
Posts: 254
Joined: Tue Feb 13, 2007 5:33 am

Re: ROAM Planet rendering

Post by Lord LoriK »

Great to know that the engine is still being developed. Thanks for the update!

If you manage to get some screenshots we can drool about, please upload them. :D
User avatar
Jabberwocky
OGRE Moderator
OGRE Moderator
Posts: 2819
Joined: Mon Mar 05, 2007 11:17 pm
Location: Canada
x 218

Re: ROAM Planet rendering

Post by Jabberwocky »

Checked out the demo. Very cool to be able to transition from space seamlessly down to the planet surface. Nice work!

I notice when the terrain LOD increases, and a terrain quad is subdivided, the subdivided quad is originally flat, then morphs into the proper detail. That's a huge improvement over "popping" into the new LOD level. This transition time seems to always be constant, taking about half second or so. One thing I'd consider is making the transition distance based - so the detail morphs in over some threshold distance range from the camera. This would have a huge impact, especially for a slow-moving camera, as the terrain LOD morphing would be much more gradual, and less noticeable.

This might cause complications with how objects placed on the terrain, having to align them with the morphing LOD, but that's an issue that would need to be worked out anyway.
DavlexDesign wrote: I want to incorporate Sinbads' new terrain engine as a small area section (like for towns and cities) that will blend into my terrain mesh, mainly due to the fact that allot of people are working on terrain editors for it, and my terrain engine will just merge its mesh into those areas seamlessly.
That would be a huge selling point for your terrain engine.
Image
User avatar
DavlexDesign
Orc
Posts: 400
Joined: Thu Apr 23, 2009 7:23 am
Location: Australia
x 19

Re: ROAM Planet rendering

Post by DavlexDesign »

G'day guys,

Great to here some comments about this thing, thanks.
with regards to ....
One thing I'd consider is making the transition distance based - so the detail morphs in over some threshold distance range from the camera.
I'll have a look into this, it will probably make tho whole thing look a little less rubbery I think too.
I am working on a cache buffer for the vertices that have been created and are being removed because of camera angles and such(out to a certain distance) and that should remove the need to regenerate heights, uv's , normals and all manner of other info each time I turn the camera, so while on approach to the surface, you will still see the morphing, but once on the ground and running, allot of that should virtually be gone, still working on it though.

This engine has gone though a number of incarnations since the last pics you've seen, I'll have to upload some more stuff for you guys to look at.
I'm still trying to get my head around the shader language as well, Thinking of doing a few things inside it as well (to do with close terrain mesh detail).

I'll have to start entering info into my Development blog as well, so you can get an idea of the processes I'm working on and with.

Once again, Thank's for the feedback, the next demo will be a doozy !!!

regards

Alex
User avatar
DavlexDesign
Orc
Posts: 400
Joined: Thu Apr 23, 2009 7:23 am
Location: Australia
x 19

Re: ROAM Planet rendering

Post by DavlexDesign »

Jabberwocky wrote: One thing I'd consider is making the transition distance based - so the detail morphs in over some threshold distance range from the camera. This would have a huge impact, especially for a slow-moving camera, as the terrain LOD morphing would be much more gradual, and less noticeable.
I Implemented this idea, and I have to say, It makes a really big difference, I've implemented 4 stages of morph speed ...
closest vertices move slower than the farther ones, and after around 2 km distance, I just pop them in.

It makes the whole thing look almost rock steady, still get a bit of rubbery popping when on approach from space though,
I have a couple of ideas about that, but it will come ( when time permits ).

thanks for the idea Jabberwocky

Alex
User avatar
DavlexDesign
Orc
Posts: 400
Joined: Thu Apr 23, 2009 7:23 am
Location: Australia
x 19

Re: ROAM Planet rendering

Post by DavlexDesign »

G'day guys,

Here's a little update on the progress of prettying this thing up for the next release ....
highorbit.jpg
closerorbit.jpg
no clouds, so you can see the detail generated by this thing, and finally ...
ontheground.jpg
It really is starting to take shape, love this Ogre system, I'm starting to come to grips with it now
I'll keep you posted on a couple of the new things coming up.

And if you want to see a couple more pics of this thing, go over to the dev site on the banner bellow.

Oh yeah, I will be starting to put some helpful info into my dev blog shortly, as it is starting to look interesting enough to warrant it now.

regards

Alex
You do not have the required permissions to view the files attached to this post.
User avatar
xadhoom
Minaton
Posts: 973
Joined: Fri Dec 28, 2007 4:35 pm
Location: Germany
x 1

Re: ROAM Planet rendering

Post by xadhoom »

Hey!

Looks pretty nice! :)

Just two points:
1. As many implementations like this the planet is very small compared to the terrains/trees etc. But I think thats just style!
2. The horizon and atmosphere looks like plastic spheres. Maybe you are interested in these approaches: http://www.vterrain.org/Atmosphere/

xad
ImpScary
Gnoblar
Posts: 21
Joined: Sun Feb 04, 2007 9:32 am

Re: ROAM Planet rendering

Post by ImpScary »

Looks great!
How about a new demo? :)
User avatar
DavlexDesign
Orc
Posts: 400
Joined: Thu Apr 23, 2009 7:23 am
Location: Australia
x 19

Re: ROAM Planet rendering

Post by DavlexDesign »

Thanks for the comments,

As for ...
xadhoom wrote:1. As many implementations like this the planet is very small compared to the terrains/trees etc. But I think thats just style!
This planet in this picture is 6378000 meters in radius scaled down by 10, so every 0.1 of a unit is 1 meter in game space, and everything else is scaled down to suit, the scale in the old demo was allot less, but I have got the scale allot more real now, had some real fun getting it nice and steady at ground level while rotating around the sun, when you move the light source in the demo, you were actually rotating the planet, not rotating the sun around the planet, and the camera was a child of the planet, (I had some accuracy issues earlier on).

and with regards to ....
2. The horizon and atmosphere looks like plastic spheres. Maybe you are interested in these approaches: http://www.vterrain.org/Atmosphere/
I'm working on it, needed to get the terrain right (to a point) first, and I'm reasonably happy with it now.

A new demo will be forthcoming, just toying around with the shaders for the atmosphere and cloud layer.

regards

Alex
User avatar
DavlexDesign
Orc
Posts: 400
Joined: Thu Apr 23, 2009 7:23 am
Location: Australia
x 19

Re: ROAM Planet rendering

Post by DavlexDesign »

G'day guys,
I just wanted to clear up the scale issue, If you look at the following pics, it sort of shows that things are a little better now ....
ScalePic1.jpg
ScalePic2.jpg
ScalePic3.jpg
As you can see, I think the scale is a little more the way it should be now,
You do not have the required permissions to view the files attached to this post.
User avatar
DavlexDesign
Orc
Posts: 400
Joined: Thu Apr 23, 2009 7:23 am
Location: Australia
x 19

Re: ROAM Planet rendering

Post by DavlexDesign »

G'day again,

and if you look to the top left corner of the top image (prev post), you will notice a landing pad there (white dome) it's not textured or anything yet, but it is just a proof of concept (thanks to Suvaka for this one)
geodome_outside.jpg
geodome_inside.jpg
geodome_outside2.jpg
don't forget that it is a work in progress, great though, I think

p.s. The trees in and around the building aren't supposed to be there, they are a remnant from the little shack we had there before (in prev posts) in case you were wondering

p.p.s. Those trees are offset from the building (move the building and they follow), while the trees out and about on the terrain are placed by the terrain itself

regards

Alex
You do not have the required permissions to view the files attached to this post.
User avatar
xadhoom
Minaton
Posts: 973
Joined: Fri Dec 28, 2007 4:35 pm
Location: Germany
x 1

Re: ROAM Planet rendering

Post by xadhoom »

Yay! Looks very good! The small house gives a nice impression of the overall feeling for size. :D

My size/scale issue raised in my previous post can be seen when using google earth. If you zoom in e.g. to the himalaya (very large mountains!!) you can easily see how small they are compared to the earth diameter though.

xad
User avatar
Sovaka
Greenskin
Posts: 109
Joined: Sat Dec 20, 2008 6:26 am
Location: QLD, Australia
x 3

Re: ROAM Planet rendering

Post by Sovaka »

At one point we actually had the planet rendering at a 1:1 scale.
It was HUGE! I mean crazy big... Way too big for any real application in a game environment.

It works, at the time, it only impacted on the FPS by maybe 10%? It is possible, but so much landmass...

We are looking into the feasibility of having larger planets that can be colonized, but at this stage, we may go for a scaled down version.
User avatar
DanielSefton
Ogre Magi
Posts: 1235
Joined: Fri Oct 26, 2007 12:36 am
Location: Mountain View, CA
x 10

Re: ROAM Planet rendering

Post by DanielSefton »

Wow, nice work. :)
xadhoom wrote:My size/scale issue raised in my previous post can be seen when using google earth. If you zoom in e.g. to the himalaya (very large mountains!!) you can easily see how small they are compared to the earth diameter though.
Seriously? The data required for populating even a pixel of something earth-size would be mind blowing - nice for impressing, but not really practical. :P

Would be a very desolate and lonely planet. :mrgreen:
User avatar
Sovaka
Greenskin
Posts: 109
Joined: Sat Dec 20, 2008 6:26 am
Location: QLD, Australia
x 3

Re: ROAM Planet rendering

Post by Sovaka »

DanielSefton wrote:Wow, nice work. :)
xadhoom wrote:My size/scale issue raised in my previous post can be seen when using google earth. If you zoom in e.g. to the himalaya (very large mountains!!) you can easily see how small they are compared to the earth diameter though.
Seriously? The data required for populating even a pixel of something earth-size would be mind blowing - nice for impressing, but not really practical. :P

Would be a very desolate and lonely planet. :mrgreen:
Actually the data requirement isn't as much as you'd think. Especially if you approach the object design like Maxis did with Spore.
You have instanced geometry that is calculated when needed to from a config text file that is only KB big.
Then it pieces it together, skins and places it where it needs to be and viola.

In combination with a portalized world, your framerate should stay fairly high while maintaining a highly graphical environment.
And you can easily turn any city layout into a multi billboarded layout when you pull away from the planet.
Then once far enough away, its just a bit of extra texturing on the overall texture of the planet.
Looks real enough :)
User avatar
DanielSefton
Ogre Magi
Posts: 1235
Joined: Fri Oct 26, 2007 12:36 am
Location: Mountain View, CA
x 10

Re: ROAM Planet rendering

Post by DanielSefton »

Sovaka wrote:You have instanced geometry that is calculated when needed to from a config text file that is only KB big.
A few models duplicated however many times, sure, i.e. foliage or repetitive sci-fi mega cities like this, but in terms of unique elements there would be very little variation. You'd never produce enough assets to populate even a tiny fraction of the earth, so gameplay wise it's pretty pointless IMO. :P
User avatar
xadhoom
Minaton
Posts: 973
Joined: Fri Dec 28, 2007 4:35 pm
Location: Germany
x 1

Re: ROAM Planet rendering

Post by xadhoom »

If you want to go down this road you would use procedural objects. E.g. something like this but in realtime on demand...

As you might do this with the terrain already you could handle many objects the same way. Although the effort to provide a database of procedural descriptions for all (many) objects would be quite high.

xad
User avatar
Sovaka
Greenskin
Posts: 109
Joined: Sat Dec 20, 2008 6:26 am
Location: QLD, Australia
x 3

Re: ROAM Planet rendering

Post by Sovaka »

Exactly, as to the reason why we aren't going with a true scale universe.

Was just pointing out tho that you can still have a high quality game with a great amount of diversity with procedural content.
User avatar
DavlexDesign
Orc
Posts: 400
Joined: Thu Apr 23, 2009 7:23 am
Location: Australia
x 19

Re: ROAM Planet rendering

Post by DavlexDesign »

G'day guys,

Just an update to show that this thing is still moving along ....

I've been playing with shaders for a little bit, just to break the monotony...
ShaderUpdate.jpg
It might be a little over the top, but I like the idea of parallax mapping close up, and the settings I set up for this shot are over exaggerated, but It is easy to tone down with just a small tweak.
next effort will go into an atlas of normal maps, no diffuse maps needed, as the terrain only uses one small lookup colour map for the whole planet (at the moment) and it is working a treat, the only gripe I have is that as you approach some areas, you see some colour shifting (I use a colour morph to lessen the effect), if walking or running at a real world pace, all it looks like, is that the detail is becoming clearer as you approach, but if you come in at warp 1, you can really notice it.

Anyway, the planet as a whole ... water clouds trees and terrain as well as a landing pad use a grand total of 50mb GPU Memory, and around 100mb Including Ogre and dependencies. So it is not very hungry YET.

just thought I'd let you know that this project is still running.

regards

Alex
You do not have the required permissions to view the files attached to this post.
User avatar
Xypher
Gremlin
Posts: 180
Joined: Tue Jun 29, 2004 1:35 am
Location: Richmond, IN; USA

Re: ROAM Planet rendering

Post by Xypher »

Man, I have to say! I've been loosely following your project nearly since its inception and it has turned out HOT.
Really looking forward to checking it out once I get internet back at home!
Keep it up!
Ubuntu Studio 13.04 64-bit
GCC 4.8.1
Ogre3D 1.8.1
AMD Athlon FX 8120 @4Ghz
16Gb G.Skill Ripjaws (PC3-12800)
EVGA GeForce 560 Ti FTW

http://www.hellbatgames.com
User avatar
Zonder
Ogre Magi
Posts: 1172
Joined: Mon Aug 04, 2008 7:51 pm
Location: Manchester - England
x 76

Re: ROAM Planet rendering

Post by Zonder »

Progress is looking good have been following this quietly from the start ;)

With your planet generation it might be worth contacting the guy who wrote world machine he might be able to offer a special indie license. the reason I say world machine is you can customize your planets quite well while still maintaining the random generation and detail and having a unique planet would be a small foot print with a project file. Of course it's just an idea i'm not sure on it's real time performance but there is caching of course :)
There are 10 types of people in the world: Those who understand binary, and those who don't...
User avatar
DavlexDesign
Orc
Posts: 400
Joined: Thu Apr 23, 2009 7:23 am
Location: Australia
x 19

Re: ROAM Planet rendering

Post by DavlexDesign »

G'day Zonder,
I checked out world machine, very nice stuff that, I've noticed that all of these engines out there use a 2D layout, and also store allot of data for even just a small area of the terrain. What I'm trying to achieve is completely different, I'm trying to achieve the same kind of look as these other terrain engines, but only storing what's necessary, generated on the fly, no huge data repository for height data and the like, I know I'm gonna have to store some stuff, but mainly just basic objects as a frame of reference, and even procedurally modify those to give them individuality. I know it sounds like a big ask, but at the moment this engine uses only 1 seed number to generate the entire planets terrain,1 number for the maximum height of the terrain, 1 number indicating the radius of the planet, a roughness flag for the general noisiness of it, 1 for indicating if it has an atmosphere and water or not, and 1 for the water offset level...
0 = water level is at the radius.
+1 to maxheight (and more if you want) for above the radius
-1 to - radius for bellow radius

There will be a script option to drive the various fractal routines I've got, to allow for different topologies, but I'm trying to keep it simple.

The vegetation is placed according to height, topology and slope of terrain. Buildings get placed through a script at the moment, and the script sets a radius of influence around the building so that the terrain around it blends to it (stops the building floating off the terrain at parts and penetrating at others), allowing you to even assign a small traditional terrain Height map (if you wish, partially working) for that little bit of extra detail.

It's functioning quite nicely at the moment, but having some fun with shaders, getting my head around how they work.
One issue I'm having is that when I enable my parallax mapping feature, I get a dark silhouette where the terrain steeply slopes away from the camera, If you can imagine standing on a cliff edge looking out, and where the land drops off, I get a shadow on the rim.

I think it's something to do with the tangents of the triangles vertices forcing a shadow, but if I don't enable parallax and normal mapping, it looks fine, nice fine gradients of shadow, if anybody has an idea that would be much appreciated.

Anyway, getting back on subject....

So I'm trying to achieve something a little different here, allowing you to roam the planet as freely as possible, while still allowing traditional methods for key areas if needed ( for all you traditionalists out there ), with the least amount of effort possible, and still achieving a great look.

I do have some highly experimental stuff in there as well, to do with overhanging cliffs and caves, 3D procedural weather and cloud generation, river and ocean stuff, but still a ways to go with some of them, before I'll let those go live.

regards

Alex
User avatar
DavlexDesign
Orc
Posts: 400
Joined: Thu Apr 23, 2009 7:23 am
Location: Australia
x 19

Re: ROAM Planet rendering

Post by DavlexDesign »

G'day guys,

Just a screen y with a forest in it, around the landing pad, got no real batching in there yet, but I'm working on it.
Times been a bit hard to come by, and I need some better trees and stuff.
Forest.jpg
But I think Suvakas' landing pad is coming along nicely, (thank's mate for that model).

p.s if anybody is interested.... I've managed to fix the tangent problem, and I don't need to send stored tangents to the video card,
the tangents are created in shader , and it works a treat.
NormalMapping.jpg
and it's not too over the top now, next is a Normal map atlas lookup.

regards

Alex
You do not have the required permissions to view the files attached to this post.
Last edited by DavlexDesign on Sat Jan 23, 2010 6:45 am, edited 1 time in total.