It is currently Sat Aug 22, 2020 4:29 am


All times are UTC




Post new topic Reply to topic  [ 5 posts ] 
Author Message
 Post subject: What data does LargeVolume page?
PostPosted: Fri May 17, 2013 1:23 am 
User avatar

Joined: Wed Feb 06, 2013 4:06 pm
Posts: 20
What data does LargeVolume page?

From a cursory glance over the code, LargeVolume appears to only page volume data. The surface is extracted anew each time, with no buffering of mesh or other data. Is this correct?

If so, Marching Cubes must be faster than I originally thought because after initially loading a 128x128x128 volume, when I return to it later the surface only takes a fraction of a second (~0.5-0.75 s) to finish extracting. This seems too fast, so I am guessing preservation of triangle data is occurring at some level and I am missing it. Is the PolyVox implementation of Marching Cubes really so good that the only thing buffered during paging is volume data?

I am travelling at aircraft speed high over my endless terrain and I never notice popping or stuttering while paging. 8-)

specs:
Intel i5-2550k
AMD HD 6950


Top
Offline Profile  
Reply with quote  
 Post subject: Re: What data does LargeVolume page?
PostPosted: Fri May 17, 2013 8:45 am 
Developer
User avatar

Joined: Sun May 04, 2008 6:35 pm
Posts: 1827
Yep, that's correct, it's just that fast 8-)

Ok, to be honest I don't know how fast this is compared to other Marching Cubes implementations. I believe ours is fairly decent and it uses some nice tricks to speed up the processing of a given cell. But there's no SIMD or space skipping structures, and it also works best on smaller regions rather than larger ones (I think?).

I have thought about a mesh caching system but not as part of the large volume. My idea would be to compute a checksum or hash of a given region and then check whether we already have a mesh with a matching checksum. This might be at a higher level than PolyVox though, and I haven't really thought about it in detail.


Top
Offline Profile  
Reply with quote  
 Post subject: Re: What data does LargeVolume page?
PostPosted: Fri May 17, 2013 12:21 pm 
User avatar

Joined: Wed Feb 06, 2013 4:06 pm
Posts: 20
David Williams wrote:
I have thought about a mesh caching system but not as part of the large volume. My idea would be to compute a checksum or hash of a given region and then check whether we already have a mesh with a matching checksum. This might be at a higher level than PolyVox though, and I haven't really thought about it in detail.


Since Marching Cubes is so fast, I am not sure mesh caching is even necessary. However, after seeing the terrain work done by forum user GM_Riscvul which performs mesh caching outside PolyVox, I might try caching the mesh as an optimization. However, I see no reason triangle caching shouldn't be added to LargeVolume as an option. This allows maximum user laziness. ;)


Top
Offline Profile  
Reply with quote  
 Post subject: Re: What data does LargeVolume page?
PostPosted: Fri May 17, 2013 3:04 pm 
Developer
User avatar

Joined: Sun May 04, 2008 6:35 pm
Posts: 1827
I don't think that any caching system would need to be specific to the LargeVolume, and perhaps it shouldn't even be restricted to meshes. For example, rather than downsampling a volume for LOD purposes you might be able to reuse a previously downsampled version. Or existing ambient occlusion results? These would again rely on some kind of checksum on the original data.


Top
Offline Profile  
Reply with quote  
 Post subject: Re: What data does LargeVolume page?
PostPosted: Fri May 17, 2013 9:58 pm 
User avatar

Joined: Wed Feb 06, 2013 4:06 pm
Posts: 20
I had not considered a generic caching system. Sounds like a great idea!


Top
Offline Profile  
Reply with quote  
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 5 posts ] 

All times are UTC


Who is online

Users browsing this forum: No registered users and 3 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Theme created StylerBB.net