Author Topic: Improveedterrain-optimisation+hint  (Read 1213 times)

Thomas Egi

  • Traveller
  • *
  • Posts: 11
    • View Profile
Improveedterrain-optimisation+hint
« on: May 04, 2006, 01:59:57 pm »
hi there,

my wish is a improved terrain renderer ( more precisely a better optimisation of the terrain before beeing rendered). my WHY reasons are:

-Performance : "having a terrain on screen let fps drops even on pretty good machines (on not so good even more, my 2ghz+gf4ti4k2 goes down to <15fps sometimes <7 )"
-can make the game more beautyful "would allow huge worlds with even more freedom where to go"
-might attract/inspire 3d-artists to contribute

optimisation is quite difficult i know(depending on used terrain-model-format even more, even if i am no programer i know about it, but a few month ago i found something intresting...).

my promised hint:
in case one of you programmers are intrested you should look at this one http://web.interware.hu/bandi/ranger.html.
even if you are not intrested it's worth looking at. 160x160km terrain while keeping 2.5m resolution+simple per pixel light on a today's mid-lower cost pc... realtime optimisation in perfection .. just add some npc's and vegetation :flowers:
no joke i tested it! i ran the binary's via wine on my linux box, it IS working.
full source is given.
lizence is :"You can do whatever you want with the code, free of charge, but if you use it for something cool, I'd really love to know about it!"
side also contains nice documents on how this thing is working.

i'd love to hear what you are thinking about it.
greetings
thommy e

ps: i know terrain optimisation is not your main problem but it would be nice to have something like this =)
ps:ps:.. dunno how close this wishlist is connected with engine devellopment but it's a wish after all, if i'm wrong here please drop me a line.
ps:ps:ps: no i am not requesting 160x160km terrains  ;).

ThomPhoenix

  • Testers
  • Forum Addict
  • *
  • Posts: 2678
  • A Phoenix, what'd you expect?
    • View Profile
Re: Improveedterrain-optimisation+hint
« Reply #1 on: May 04, 2006, 02:45:29 pm »
Planeshift's 3D engine is CrystalSpace, so if you want a better rendererer you should go talk with them. And I think a better rendererer is being developed or at least planned.

edit:
Yup, from their roadmap:

Step 4: Work on New Renderer
Status: IN PROGRESS
Mission: The old renderer has now been removed. This makes it easier for us to continue working on the new renderer architecture to add new features and improve the existing features. Work that still has to be done in this area is more work on lighting and renderloop stuff. See Lighting overhaul and Renderloop overhaul for more information.
« Last Edit: May 04, 2006, 02:47:26 pm by ThomPhoenix »
We're not evil. We're simply amazing.

Thomas Egi

  • Traveller
  • *
  • Posts: 11
    • View Profile
Re: Improveedterrain-optimisation+hint
« Reply #2 on: May 04, 2006, 04:46:08 pm »
i see.. so crystalspace is behind this, i guess i'm dump not having noticed it. thx for the answer.  then i'll try my luck in the crystalspace.
would be to lovely if they would include this =).
since they are rewriting the renderer anyway... maybe.... i just cant stop myself imagine what would be possible after that :D

greetigns
thommy

steuben

  • Veteran
  • *
  • Posts: 1834
    • View Profile
    • Myspace
Re: Improveedterrain-optimisation+hint
« Reply #3 on: May 04, 2006, 05:01:42 pm »
ps:ps:ps: no i am not requesting 160x160km terrains ;).

you may not be. but i'm hoping for them ;D
may laanx frighten the shadow from my path.
hardly because the shadow built the lexx.
the shadow will frighten laanx from my path.

LigH

  • Forum Legend
  • *
  • Posts: 7096
    • View Profile
Re: Improveedterrain-optimisation+hint
« Reply #4 on: May 05, 2006, 07:21:16 am »
I am quite lucky that my old PC (Duron-800, GeForce2 GTS) does not have any serious problems with the current terrain renderer; but I have to confess that I am also a bit used to ~5 fps while running (it is much better while standing), at 1280x960 pixels, hello - just a GF2GTS!

Relying that much on specific OpenGL extensions, would increase the hardware requirements further (which I circumvented in a specific case already: disabling multitexturing allows to use a Matrox G400 at a decent speed, just the textures are wrong then). But I have to upgrade my PC anyway, waiting eagerly for Gothic 3.

Gag Harmond
Knight and Ambassador
The Royal House of Purrty

Wired_Crawler

  • Hydlaa Citizen
  • *
  • Posts: 429
    • View Profile
Re: Improveedterrain-optimisation+hint
« Reply #5 on: May 05, 2006, 09:47:31 am »
ps:ps:ps: no i am not requesting 160x160km terrains ;).

you may not be. but i'm hoping for them ;D
First level of Yliakum has only 50 km in diameter, the terrain is around 10 km wide, so there is no need for such big terrains :) (look -> there)

The demo You mention, Thomas, only shows bare terrain, no plants, no monsters, no players etc. (but shadows look very good). AFAIK terrain engine in CS works in very similar way to that presented in your example. In Planeshift, however, there are additional elements: trees, foliage (small, dense plants), monsters, other players, items, labels above entities etc. Furthermore, collisions between objects and terrain must be checked continuously, it is time consuming and cpu intensive process. So - frame rate would be much higher if the only element to display would be bare terrain, but in a game many other factors cause lag.

Recently many changes were made in the terrain generator code. Some features were added, some were changed, maybe it will help a bit...
"Close the world, txEn eht nepO."

Thomas Egi

  • Traveller
  • *
  • Posts: 11
    • View Profile
Re: Improveedterrain-optimisation+hint
« Reply #6 on: May 06, 2006, 12:16:32 am »
Quote
The demo You mention, Thomas, only shows bare terrain, no plants, no monsters, no players etc. (but shadows look very good). AFAIK terrain engine in CS works in very similar way to that presented in your example.
i am aware of the fact that it shows simple terrain. but the fact that it shows 160 square km@2.5m resolution is almost unbeliveable, and it sitill has high fps on a average pc.
bdw.. this ranger mk2 thing uses a modified way of SOAR means it re-calculates the entire terrain for EVERY frame. since CS-engine shows popping and few other small things i would guess it to be a ROAM-like which uses single terrain-patches with differnet detail-levels and frustum-like culling.
//edit
i just read in the CS-engine docu that it uses a 4-level static LOD together with splitting the terrain in blocks, each block with independend LOD/texture etc) the visibility calculation is quad-tree based
-so it is somewhat ROAM-like
... come to think about it.-collision detection on such a terrain could be quite a challange.. using the 8*10^9 terrain= bad idea. this cries for somehting else .. well dosent belong here.. sry about that.
//edit end

if you think about... if the terrain showed in the demo i mentioned would be UNoptimised you would have 8.192.000.000 triangles (no this is not a calculation error). i know my graca works still pretty decent with several 10 thausends (guess 40-60k are still ok for realtime) but not 8*10^9. reducing those a little further and you can add lots of trees and houses and players.

Quote
Relying that much on specific OpenGL extensions, would increase the hardware requirements further
doing this with vertex shader is something nice but even if you dont have it you could use a software fallback.
using shaders would allow those massive terrains without wastin any cpu power you could use for other calculations.
lightning and shadows.. well per pixel light.. i think you'll have a hard job finding a pc these days without support for this (even most office pc's could do that)

well i dont like to strech this thread. ... crystal space forum dosn't seem to be very active.
i still like to say that this algorithm is ways better and more efficient than the terrain-puzzle blizzard used for WoW or the current CS-terrain optimisation (although already ways those are better than no optimisation).
a mix between puzling and this method to archieve best possible performance would beat anything ever seen.
if anyone is further intrested i like him to join the diskussion on the crystalspace board.
this here is a wishlist and this thread is drifting to a technical discussion which has nothing to do with wishes at all,
best greetings
thommy

ps: waching the long video is realls worth ;)
ps:ps: sry 4 the long post.. bad habbit of mine..
« Last Edit: May 06, 2006, 12:32:06 am by Thomas Egi »