[GSoC 2012 - Accepted] Improve and Demo the Terrain System

Threads related to Google Summer of Code
Post Reply
User avatar
Assaf Raman
OGRE Team Member
OGRE Team Member
Posts: 3092
Joined: Tue Apr 11, 2006 3:58 pm
Location: TLV, Israel
x 76

Re: [GSoC 2012 - Accepted] Improve and Demo the Terrain Syst

Post by Assaf Raman »

Can you fill this form and send it to e-mail at the end of the forum - so we can merge your work to the main repo?

Post on this thread after doing it - so I will know that you have.
Watch out for my OGRE related tweets here.
xiaoxiangquan
Google Summer of Code Student
Google Summer of Code Student
Posts: 102
Joined: Tue Mar 20, 2012 3:20 am
Location: China
x 13

Re: [GSoC 2012 - Accepted] Improve and Demo the Terrain Syst

Post by xiaoxiangquan »

Assaf Raman wrote:Can you fill this forum and send it to e-mail at the end of the forum - so we can merge your work to the main repo?
Post on this thread after doing it - so I will know that you have.
Of course :D.
I'll do it after posting this week's progress report.
Google Summer of Code 2012 Student
Topic: "Improve and Demo the Terrain System"
Project links: Project thread, WIKI page, Code fork for the project
Mentor: masterfalcon
User avatar
Assaf Raman
OGRE Team Member
OGRE Team Member
Posts: 3092
Joined: Tue Apr 11, 2006 3:58 pm
Location: TLV, Israel
x 76

Re: [GSoC 2012 - Accepted] Improve and Demo the Terrain Syst

Post by Assaf Raman »

This is the last week of the project, mentor and student - try to finish this project this week and merge it into the trunk if the code it ready for it.
Watch out for my OGRE related tweets here.
xiaoxiangquan
Google Summer of Code Student
Google Summer of Code Student
Posts: 102
Joined: Tue Mar 20, 2012 3:20 am
Location: China
x 13

Re: [GSoC 2012 - Accepted] Improve and Demo the Terrain Syst

Post by xiaoxiangquan »

Weekly Progress:
Almost finished the EndlessWorld sample.
Known issues:
The perlin-noise terrain looks unnatural. Need some time to adjust the factors.
Crack when shutdown the SampleBrowser, which must be some destruction problem.

I'll deal with them in one or two days, and then make another screen record to show my work.
I think it will be ready to be merged into trunk at the end of gsoc.
Google Summer of Code 2012 Student
Topic: "Improve and Demo the Terrain System"
Project links: Project thread, WIKI page, Code fork for the project
Mentor: masterfalcon
User avatar
Assaf Raman
OGRE Team Member
OGRE Team Member
Posts: 3092
Joined: Tue Apr 11, 2006 3:58 pm
Location: TLV, Israel
x 76

Re: [GSoC 2012 - Accepted] Improve and Demo the Terrain Syst

Post by Assaf Raman »

xiaoxiangquan wrote: I think it will be ready to be merged into trunk at the end of gsoc.
Can you give me a date when the work will be finished and the code merged?
Watch out for my OGRE related tweets here.
xiaoxiangquan
Google Summer of Code Student
Google Summer of Code Student
Posts: 102
Joined: Tue Mar 20, 2012 3:20 am
Location: China
x 13

Re: [GSoC 2012 - Accepted] Improve and Demo the Terrain Syst

Post by xiaoxiangquan »

Assaf Raman wrote:Can you give me a date when the work will be finished and the code merged?
Before the "Firm Pencils Down" date, August 20.
Google Summer of Code 2012 Student
Topic: "Improve and Demo the Terrain System"
Project links: Project thread, WIKI page, Code fork for the project
Mentor: masterfalcon
User avatar
masterfalcon
OGRE Team Member
OGRE Team Member
Posts: 4270
Joined: Sun Feb 25, 2007 4:56 am
Location: Bloomington, MN
x 126
Contact:

Re: [GSoC 2012 - Accepted] Improve and Demo the Terrain Syst

Post by masterfalcon »

I was just going over the code and have a question.

In both TerrainLodManager::handleRequest and TerrainLodManager::handleResponse there is this code:

Code: Select all

			// skip re-assign
			if(lastTreeStart != lodinfo.treeStart)
Which is inside a for loop. However, lastTreeStart is signed and treeStart is not. Which causes the vertex data assignment to always happen the first time through the loop. Is this intentional?
xiaoxiangquan
Google Summer of Code Student
Google Summer of Code Student
Posts: 102
Joined: Tue Mar 20, 2012 3:20 am
Location: China
x 13

Re: [GSoC 2012 - Accepted] Improve and Demo the Terrain Syst

Post by xiaoxiangquan »

masterfalcon wrote:I was just going over the code and have a question.
In both TerrainLodManager::handleRequest and TerrainLodManager::handleResponse there is this code:

Code: Select all

			// skip re-assign
			if(lastTreeStart != lodinfo.treeStart)
Which is inside a for loop. However, lastTreeStart is signed and treeStart is not. Which causes the vertex data assignment to always happen the first time through the loop. Is this intentional?
Yes, some different LOD levels share the same quad-tree level ranges. For example:
LOD 0: need to assign vertex to quadtree[0,2]
LOD 1: need to assign vertex to quadtree[0,2]
LOD 2: need to assign vertex to quadtree[2,4]
LOD 3: need to assign vertex to quadtree[2,4]
...
So if we are loading several LODs, like [LOD0-LOD3], it will be:
Loading LOD3: assign vertex to quadtree[2,4]
Loading LOD2: have been loaded, skip
Loading LOD1: assign vertex to quadtree[0,2]
Loading LOD0: have been loaded, skip

buildLodInfoTable() tells how the ranges are calculated.
Google Summer of Code 2012 Student
Topic: "Improve and Demo the Terrain System"
Project links: Project thread, WIKI page, Code fork for the project
Mentor: masterfalcon
xiaoxiangquan
Google Summer of Code Student
Google Summer of Code Student
Posts: 102
Joined: Tue Mar 20, 2012 3:20 am
Location: China
x 13

Re: [GSoC 2012 - Accepted] Improve and Demo the Terrain Syst

Post by xiaoxiangquan »

I have finished the EndlessWorld sample, but with a known bug:
If you quit the SampleBrowser without stopping the EndlessWorld sample when it is still generating and building terrains, an exception may occur.

Here is a screen record.
Google Summer of Code 2012 Student
Topic: "Improve and Demo the Terrain System"
Project links: Project thread, WIKI page, Code fork for the project
Mentor: masterfalcon
User avatar
masterfalcon
OGRE Team Member
OGRE Team Member
Posts: 4270
Joined: Sun Feb 25, 2007 4:56 am
Location: Bloomington, MN
x 126
Contact:

Re: [GSoC 2012 - Accepted] Improve and Demo the Terrain Syst

Post by masterfalcon »

This is looking pretty great! I was able to reproduce the crash here too. For me it happened in Root during destruction of the WorkQueue.
xiaoxiangquan
Google Summer of Code Student
Google Summer of Code Student
Posts: 102
Joined: Tue Mar 20, 2012 3:20 am
Location: China
x 13

Re: [GSoC 2012 - Accepted] Improve and Demo the Terrain Syst

Post by xiaoxiangquan »

masterfalcon wrote:This is looking pretty great! I was able to reproduce the crash here too. For me it happened in Root during destruction of the WorkQueue.
Yes, that's the problem. I'm confused that why it works well when hit Stoped first. Maybe there are some steps skiped when hit Quit directly.
Google Summer of Code 2012 Student
Topic: "Improve and Demo the Terrain System"
Project links: Project thread, WIKI page, Code fork for the project
Mentor: masterfalcon
User avatar
masterfalcon
OGRE Team Member
OGRE Team Member
Posts: 4270
Joined: Sun Feb 25, 2007 4:56 am
Location: Bloomington, MN
x 126
Contact:

Re: [GSoC 2012 - Accepted] Improve and Demo the Terrain Syst

Post by masterfalcon »

I haven't tried it yet but perhaps we need to abort the work queue requests when we shut down the sample or the terrain system?
xiaoxiangquan
Google Summer of Code Student
Google Summer of Code Student
Posts: 102
Joined: Tue Mar 20, 2012 3:20 am
Location: China
x 13

Re: [GSoC 2012 - Accepted] Improve and Demo the Terrain Syst

Post by xiaoxiangquan »

masterfalcon wrote:I haven't tried it yet but perhaps we need to abort the work queue requests when we shut down the sample or the terrain system?
Yeah, I tried aborting it, and also removing the channel, but nothing changed.
Google Summer of Code 2012 Student
Topic: "Improve and Demo the Terrain System"
Project links: Project thread, WIKI page, Code fork for the project
Mentor: masterfalcon
User avatar
duststorm
Minaton
Posts: 921
Joined: Sat Jul 31, 2010 6:29 pm
Location: Belgium
x 80
Contact:

Re: [GSoC 2012 - Accepted] Improve and Demo the Terrain Syst

Post by duststorm »

Congratulations! That looks really promising! :)
Developer @ MakeHuman.org
xiaoxiangquan
Google Summer of Code Student
Google Summer of Code Student
Posts: 102
Joined: Tue Mar 20, 2012 3:20 am
Location: China
x 13

Re: [GSoC 2012 - Accepted] Improve and Demo the Terrain Syst

Post by xiaoxiangquan »

Assaf Raman wrote:Can you fill this form and send it to e-mail at the end of the forum - so we can merge your work to the main repo?

Post on this thread after doing it - so I will know that you have.
Hi, I have done it.The subject is OGRE_Contributor_License from Xiao Xiangquan.
Google Summer of Code 2012 Student
Topic: "Improve and Demo the Terrain System"
Project links: Project thread, WIKI page, Code fork for the project
Mentor: masterfalcon
xiaoxiangquan
Google Summer of Code Student
Google Summer of Code Student
Posts: 102
Joined: Tue Mar 20, 2012 3:20 am
Location: China
x 13

Re: [GSoC 2012 - Accepted] Improve and Demo the Terrain Syst

Post by xiaoxiangquan »

masterfalcon wrote:This is looking pretty great! I was able to reproduce the crash here too. For me it happened in Root during destruction of the WorkQueue.
Seems fixed.
Derived classes didn't declare destructor as virtual, which is a common bug in the terrain component.

My work is almost done. I'll merge with trunk and complete wiki next.
Google Summer of Code 2012 Student
Topic: "Improve and Demo the Terrain System"
Project links: Project thread, WIKI page, Code fork for the project
Mentor: masterfalcon
xiaoxiangquan
Google Summer of Code Student
Google Summer of Code Student
Posts: 102
Joined: Tue Mar 20, 2012 3:20 am
Location: China
x 13

Re: [GSoC 2012 - Accepted] Improve and Demo the Terrain Syst

Post by xiaoxiangquan »

Assaf Raman wrote:Can you give me a date when the work will be finished and the code merged?
I have merged with the trunk default.
I hope it could catch up with v1.9 :D
Google Summer of Code 2012 Student
Topic: "Improve and Demo the Terrain System"
Project links: Project thread, WIKI page, Code fork for the project
Mentor: masterfalcon
User avatar
Assaf Raman
OGRE Team Member
OGRE Team Member
Posts: 3092
Joined: Tue Apr 11, 2006 3:58 pm
Location: TLV, Israel
x 76

Re: [GSoC 2012 - Accepted] Improve and Demo the Terrain Syst

Post by Assaf Raman »

@masterfalcon - when do you guys plan to actually merge to the trunk?
Watch out for my OGRE related tweets here.
User avatar
duststorm
Minaton
Posts: 921
Joined: Sat Jul 31, 2010 6:29 pm
Location: Belgium
x 80
Contact:

Re: [GSoC 2012 - Accepted] Improve and Demo the Terrain Syst

Post by duststorm »

I'm very happy to see the project got finished. I haven't really got the time to test it out yet but I will try to do it soon. (and hopefully integrate it with the other terrain experiments I've been doing) :)
Good job!
Developer @ MakeHuman.org
xiaoxiangquan
Google Summer of Code Student
Google Summer of Code Student
Posts: 102
Joined: Tue Mar 20, 2012 3:20 am
Location: China
x 13

Re: [GSoC 2012 - Accepted] Improve and Demo the Terrain Syst

Post by xiaoxiangquan »

Weekly Progress
  • Finish the EndlessWorld sample, resolve bugs
    Merge with trunk default
    Update wiki
This is the last report. I think I have already met most of my goals in the proposal. Really thank you all, without you it would be very tough for me. The help is invaluable, especially the bug reports and suggestions on resolving terrain paging hiccups.
Next I'll keep on maintaining my fork and try my best to help merge it into trunk earlier.
Google Summer of Code 2012 Student
Topic: "Improve and Demo the Terrain System"
Project links: Project thread, WIKI page, Code fork for the project
Mentor: masterfalcon
User avatar
masterfalcon
OGRE Team Member
OGRE Team Member
Posts: 4270
Joined: Sun Feb 25, 2007 4:56 am
Location: Bloomington, MN
x 126
Contact:

Re: [GSoC 2012 - Accepted] Improve and Demo the Terrain Syst

Post by masterfalcon »

Thanks for all your hard work! Did you ever get that contributor agreement filled out and sent in?
xiaoxiangquan
Google Summer of Code Student
Google Summer of Code Student
Posts: 102
Joined: Tue Mar 20, 2012 3:20 am
Location: China
x 13

Re: [GSoC 2012 - Accepted] Improve and Demo the Terrain Syst

Post by xiaoxiangquan »

masterfalcon wrote:Thanks for all your hard work! Did you ever get that contributor agreement filled out and sent in?
Yes, I have sent it to licensing@ogre3d.org.
Google Summer of Code 2012 Student
Topic: "Improve and Demo the Terrain System"
Project links: Project thread, WIKI page, Code fork for the project
Mentor: masterfalcon
User avatar
masterfalcon
OGRE Team Member
OGRE Team Member
Posts: 4270
Joined: Sun Feb 25, 2007 4:56 am
Location: Bloomington, MN
x 126
Contact:

Re: [GSoC 2012 - Accepted] Improve and Demo the Terrain Syst

Post by masterfalcon »

Perfect, thanks!
User avatar
masterfalcon
OGRE Team Member
OGRE Team Member
Posts: 4270
Joined: Sun Feb 25, 2007 4:56 am
Location: Bloomington, MN
x 126
Contact:

Re: [GSoC 2012 - Accepted] Improve and Demo the Terrain Syst

Post by masterfalcon »

Oh, almost forgot. Were there any patches or bugs that you addressed?
xiaoxiangquan
Google Summer of Code Student
Google Summer of Code Student
Posts: 102
Joined: Tue Mar 20, 2012 3:20 am
Location: China
x 13

Re: [GSoC 2012 - Accepted] Improve and Demo the Terrain Syst

Post by xiaoxiangquan »

masterfalcon wrote:Oh, almost forgot. Were there any patches or bugs that you addressed?
Ehh...I forgot it, too. So sorry, I'll check it right now.
Google Summer of Code 2012 Student
Topic: "Improve and Demo the Terrain System"
Project links: Project thread, WIKI page, Code fork for the project
Mentor: masterfalcon
Post Reply