[GSoC 2011] Terrain improvements

Threads related to Google Summer of Code
Post Reply
User avatar
icepick
Gnoblar
Posts: 9
Joined: Tue Feb 08, 2011 7:44 am
Location: Utah
x 1

[GSoC 2011] Terrain improvements

Post by icepick »

Hey,

I am thinking the Terrain improvements request would be a good GSOC project. It could support multiple independent milestones allowing significant changes to be made without the do-or-die aspect of some of the other projects.

I would love to work on terrain generators and Rayleigh scattering.

I have no idea what vertex compression refers to at this point, but I'll find out. It sounds like a doable project also.
Last edited by spacegaier on Tue Mar 08, 2011 11:54 am, edited 1 time in total.
Reason: changed title
User avatar
Beauty
OGRE Community Helper
OGRE Community Helper
Posts: 767
Joined: Wed Oct 10, 2007 2:36 pm
Location: Germany
x 39
Contact:

Re: Terrain improvements

Post by Beauty »

As I read some months ago by Sindbad, the terrain and paging components needs optimisations.
I don't know the real current state. But I know, Sinbad has not as much time for Ogre development as some years ago. I suppose there are still some "bloody" points (maybe performance?) and improvement possibilities.
Additionally I think, the terrain and paging components are common used parts of Ogre.
So, icepick, you have my vote for your idea :D
Help to add information to the wiki. Also tiny edits will let it grow ... :idea:
Add your country to your profile ... it's interesting to know from where of the world you are.
User avatar
jacmoe
OGRE Retired Moderator
OGRE Retired Moderator
Posts: 20570
Joined: Thu Jan 22, 2004 10:13 am
Location: Denmark
x 179
Contact:

Re: Terrain improvements

Post by jacmoe »

+1 :)
/* Less noise. More signal. */
Ogitor Scenebuilder - powered by Ogre, presented by Qt, fueled by Passion.
OgreAddons - the Ogre code suppository.
User avatar
icepick
Gnoblar
Posts: 9
Joined: Tue Feb 08, 2011 7:44 am
Location: Utah
x 1

Re: Terrain improvements

Post by icepick »

Yay! Well hopefully I'll get my head around all this and won't get stolen away by an internship from Google or something. : )
CABAListic
OGRE Retired Team Member
OGRE Retired Team Member
Posts: 2903
Joined: Thu Jan 18, 2007 2:48 pm
x 58
Contact:

Re: Terrain improvements

Post by CABAListic »

You will have to provide a much more detailed suggestion, though. Many of the necessary improvements for the terrain component (e.g. making it more accessible) will not fill an entire summer and would therefore not make a GSoC project of their own.
User avatar
icepick
Gnoblar
Posts: 9
Joined: Tue Feb 08, 2011 7:44 am
Location: Utah
x 1

Re: Terrain improvements

Post by icepick »

CABAListic wrote:You will have to provide a much more detailed suggestion, though. Many of the necessary improvements for the terrain component (e.g. making it more accessible) will not fill an entire summer and would therefore not make a GSoC project of their own.
That makes sense. I imagine that it'll be a string of smaller projects, so I'd obviously need to make a sufficient list.

Would it be more useful to work on the Terrain part itself or the paging system? I know there was some unrest over that awhile back. Would I have time to work on both, even? These are the things I'm trying to figure out going into the Summer.
User avatar
Beauty
OGRE Community Helper
OGRE Community Helper
Posts: 767
Joined: Wed Oct 10, 2007 2:36 pm
Location: Germany
x 39
Contact:

Re: Terrain improvements

Post by Beauty »

CABAListic wrote:You will have to provide a much more detailed suggestion, though. Many of the necessary improvements ...
Useful would be if someone publishes an overview of the points, which needs an improvement.

I suppose this is special knowledge, because only a few people know the internals.
This open points also could be published in the ogre main forum. Maybe somebody wants to help even aside the GSOC.
Just as an idea.
Help to add information to the wiki. Also tiny edits will let it grow ... :idea:
Add your country to your profile ... it's interesting to know from where of the world you are.
User avatar
Noman
OGRE Retired Team Member
OGRE Retired Team Member
Posts: 714
Joined: Mon Jan 31, 2005 7:21 pm
Location: Israel
x 2
Contact:

Re: Terrain improvements

Post by Noman »

icepick wrote:Would it be more useful to work on the Terrain part itself or the paging system? I know there was some unrest over that awhile back. Would I have time to work on both, even? These are the things I'm trying to figure out going into the Summer.
Both components have many places where they can be improved, and both are legitimate subjects for a summer of code.
Try looking both in the code and in the community for ideas on what to do, and choose the one that interests you more and you feel will be a greater contribution. That will also tell you if you have time to improve both components or focus on one.
User avatar
icepick
Gnoblar
Posts: 9
Joined: Tue Feb 08, 2011 7:44 am
Location: Utah
x 1

Re: Terrain improvements

Post by icepick »

Sooooo I just got offered a job at Wahoo/Ninjabee. So between that and school I think I'm booked up for the summer. : /

They allow you to work on side projects though. So you can be sure of the engine I'll be using for my 3d stuff. : )
kuxv
Google Summer of Code Student
Google Summer of Code Student
Posts: 53
Joined: Wed Jan 09, 2008 7:51 pm
Location: Czech Republic
x 16

Re: [GSoC 2011] Terrain improvements

Post by kuxv »

Hello,
so as it looks that icepick is off this topic I would like to try this.

+ paging and terrain components
- there was new terrain component introduced in ogre 1.7
- it uses chunked LOD together with geomorphing to achieve continuous LOD for terrain rendering dependent on camera's position
- this terrain component performs very well on smaller sets of height data which is it's purpose
- however problems with limited size of memory come with larger sets of data
- paging of data is common solution for memory issues of this kind
- paging component already exists in ogre since 1.7
- however it's performance is very poor when used with terrain component

== task is to improve paging of terrain component
- main problem is loading of terrain tiles into memory is slow which makes noticeable slowdown during terrain rendering
- things to do:
- terrain component has to be modified to allow separate loading/unloading of individual terrain LOD
- load only low LOD level(s) for distant pages of terrain
- load/unload higher LOD levels as needed (ie page gets closer/further)

== other things to do in paging component
- default handlers for general Ogre objects
= Geometry (Entity/StaticGeometry?)
= Billboard, ParticleSystem
= Resource? (Material/Texture)

Please let me know what do you think. I was looking at the code of terrain and paging and it looks like work I can do and also learn something about internals of ogre. I'm going into bush now and will be back in a week so I will post more about my intensions and I will reformat this format post a little as well ;)
User avatar
stealth977
Gnoll
Posts: 638
Joined: Mon Dec 15, 2008 6:14 pm
Location: Istanbul, Turkey
x 42

Re: [GSoC 2011] Terrain improvements

Post by stealth977 »

Terrain component still has many problems, main problem being paging related, followed by composite map and shadowing problems, which need to be fixed but had no love since sinbad retired.

So, someone dedicated to work on it would be so cool since it can not be used AS IS for a real product.

For the paging part, the problem is scattered in various parts of the process:

1 - The LodStrategy: Terrain component needs a unique LodStrategy since 2DGrid is not effective when terrain has significant height variation
2 - Loading Stage (File Access) : As mentioned, disk access should be minimized for lower lods, preferably a separate terraingroup.dat file containing only lowest (or lowest few) data which is pre-loaded and prepared in memory to prevent any disk access/preperation for lowest few lods
3 - Loading Stage (Preparation): Preparation stage after disk access is also a lengthy process which needs improvements, for example pre-caching mentioned in 2

Also, paging component and terrain component needs callbacks to notify user of its stage, especially during async operations, for example user needs to know if a terrain page is fully loaded in order to initialize page dependent data like grass...
Ismail TARIM
Ogitor - Ogre Scene Editor
WWW:http://www.ogitor.org
Repository: https://bitbucket.org/ogitor
User avatar
Beauty
OGRE Community Helper
OGRE Community Helper
Posts: 767
Joined: Wed Oct 10, 2007 2:36 pm
Location: Germany
x 39
Contact:

Re: [GSoC 2011] Terrain improvements

Post by Beauty »

The reported problems let me assume that the current terrain component is more a beta release.
If this is right, maybe we should think about to idea to keep the Terrain Scene Manager in Ogre 1.8 (and remove it later in a future version). It's not as powerful as the new terrain component, but works well (at least in my application).
Help to add information to the wiki. Also tiny edits will let it grow ... :idea:
Add your country to your profile ... it's interesting to know from where of the world you are.
User avatar
Noman
OGRE Retired Team Member
OGRE Retired Team Member
Posts: 714
Joined: Mon Jan 31, 2005 7:21 pm
Location: Israel
x 2
Contact:

Re: [GSoC 2011] Terrain improvements

Post by Noman »

I think this can be an awesome GSoC project. The terrain component is indeed powerful but needs some polish, as people have said.

I think there can even be enough work for more than one student (if anyone who is viewing this thread is bummed that the subject is taken).
User avatar
Jabberwocky
OGRE Moderator
OGRE Moderator
Posts: 2819
Joined: Mon Mar 05, 2007 11:17 pm
Location: Canada
x 218
Contact:

Re: [GSoC 2011] Terrain improvements

Post by Jabberwocky »

Just a shout out to say this would be a great GSoC project.
Is there any consensus yet on who would mentor this?
Image
User avatar
stealth977
Gnoll
Posts: 638
Joined: Mon Dec 15, 2008 6:14 pm
Location: Istanbul, Turkey
x 42

Re: [GSoC 2011] Terrain improvements

Post by stealth977 »

Well, when its terrain improvements in question, IMO "tuan kuranes" should mentor it :)
Ismail TARIM
Ogitor - Ogre Scene Editor
WWW:http://www.ogitor.org
Repository: https://bitbucket.org/ogitor
User avatar
tuan kuranes
OGRE Retired Moderator
OGRE Retired Moderator
Posts: 2653
Joined: Wed Sep 24, 2003 8:07 am
Location: Haute Garonne, France
x 4
Contact:

Re: [GSoC 2011] Terrain improvements

Post by tuan kuranes »

@icepick Student proposals has to be much more precise and scoped than this, stealth977 gave a better and more focused proposition, that should be a start for any students willing to make a proposal
@kuxv each student has to make their own subjet/thread proposal in this forum (on thread/subject per student)

If any proposal has to be made, it needs to list the deliverables, and in this case, you should start with what you're demo will be able to do.

(@stealth977 I can mentor if need be, though I'm sure you or Jabberwocky could too )
User avatar
Jabberwocky
OGRE Moderator
OGRE Moderator
Posts: 2819
Joined: Mon Mar 05, 2007 11:17 pm
Location: Canada
x 218
Contact:

Re: [GSoC 2011] Terrain improvements

Post by Jabberwocky »

tuan kuranes wrote:though I'm sure you or Jabberwocky could too
Thanks for the vote of confidence! I know the terrain component API pretty well, and I understand the material generator and shaders. But not the "guts" of the terrain geometry or paging code like you or stealth, so you guys would certainly be better for project ideas listed here.
Image
User avatar
stealth977
Gnoll
Posts: 638
Joined: Mon Dec 15, 2008 6:14 pm
Location: Istanbul, Turkey
x 42

Re: [GSoC 2011] Terrain improvements

Post by stealth977 »

Both Paging component and the Terrain component are very important features imo. Just like Jabberwocky, i know them pretty well since i was spamming sinbad with both bug reports and feature requests during their development, but again, i also am not that familiar wih the terrain component's geometry part (never been good with geomipmapping anyway :) ) so i dont think i can qualify for mentoring it, yet i can test/comment on it.

Considering tuan's expertise on both paging and terrain, if someone picks this subject, it would be very nice if tuan mentors the student, since adequate improvements on such important features would benefit OGRE very much...
Ismail TARIM
Ogitor - Ogre Scene Editor
WWW:http://www.ogitor.org
Repository: https://bitbucket.org/ogitor
User avatar
boyamer
Orc
Posts: 459
Joined: Sat Jan 24, 2009 11:16 am
Location: Italy
x 6

Re: [GSoC 2011] Terrain improvements

Post by boyamer »

I agree with this, new terraing needs improvements with the paging component.

Thanks
User avatar
jacmoe
OGRE Retired Moderator
OGRE Retired Moderator
Posts: 20570
Joined: Thu Jan 22, 2004 10:13 am
Location: Denmark
x 179
Contact:

Re: [GSoC 2011] Terrain improvements

Post by jacmoe »

stealth977 wrote:Considering tuan's expertise on both paging and terrain, if someone picks this subject, it would be very nice if tuan mentors the student, since adequate improvements on such important features would benefit OGRE very much...
It would really rock if you became a mentor! :)
With Tuan as a backup, of course.
/* Less noise. More signal. */
Ogitor Scenebuilder - powered by Ogre, presented by Qt, fueled by Passion.
OgreAddons - the Ogre code suppository.
kuxv
Google Summer of Code Student
Google Summer of Code Student
Posts: 53
Joined: Wed Jan 09, 2008 7:51 pm
Location: Czech Republic
x 16

Re: [GSoC 2011] Terrain improvements

Post by kuxv »

I think stealth977 would be good mentor for this because of his experience with terrain and paging components especially in ogitor.
I believe he used terrain in a very strange corner cases and so knows more precisely what could be done to improve it.
Post Reply