adaptive streaming and rendering of large terrains: a generic solution wscg 2009 raphaël lerbour...
Post on 15-Jan-2016
219 views
TRANSCRIPT
Adaptive Streaming and Rendering of Large Terrains: a Generic Solution
WSCG 2009
Raphaël LerbourJean-Eudes Marvie
Pascal GautronTHOMSON R&D, Rennes, France
2
Objectives
Render large remote terrain datasets– Applications: GPS, games, weather…
– 2D maps of samples: elevation (relief) and color
– Gigabytes of data
On multiple target devices and networks– Desktop PCs, handhelds…
– Cannot transmit or display the dataset as a whole
With good interactivity– Unpredicted user viewpoint moves
– Rendering quality and speed requirements
3
Overview
Solutions– Network limitations: adaptive client-server streaming
– Graphics hardware limitations: adaptive rendering
We propose– A generic system for adaptive streaming and rendering
– Single data structure suited for both parts
– Favor speed from one end to the other
4
Adaptive Streaming and Rendering ofLarge Terrains: a Generic Solution
Data Structure
Measure of importance
Adaptive streaming
Adaptive rendering
5
Multi-resolution grid of square blocks of samples– Can be progressively loaded as a tree, starting with the root
– Hierarchical block selection minimize amount of rendered blocks
Blocks have levels of detail (LOD) of increasing resolution– Adaptive LOD selection minimize amount of structure operations
Data structure
6
Data structure
No data redundancy– LODs of a block share data (common sample array)
– Parent and children share one LOD (local copy when split/merge)
New LOD: samples interleaved between existing ones– Possible to render a block with not all LODs loaded
– Possible to render a block and load one of its LODs in parallel
7
Adaptive Streaming and Rendering ofLarge Terrains: a Generic Solution
Data Structure
Measure of importance
Adaptive streaming
Adaptive rendering
8
Measure of importance
The base for adaptivity in both streaming and rendering– Importance represents desired quality for a block
– We select LODs using importance thresholds
Any formula may be used– Based on application
– Typical variables:Distance from viewpointAreaRoughness
9
Adaptive Streaming and Rendering ofLarge Terrains: a Generic Solution
Data Structure
Measure of importance
Adaptive streaming
Adaptive rendering
10
Adaptive streaming
Pre-computed server database for minimal activity– Only one file read per LOD request
– File position for any LOD computed in constant time
Data are transmitted “as-is”– Conversion (ex: elevation 3D vertices) on the client
– Less data transmitted (quantization)
– Same server and data with any client type
We always transmit the most important data– Solution implicitly adapts to the network speed
– Rendering quality constantly improves
0 s
10 s
40 s
11
Adaptive streaming
Potential LOD requests come with an importance value Restricted number of pending requests
– Potential request with highest importance is transmitted to server
– Others need to update their importance for next time
– At reception, another request can be transmitted
Server
Requestsmanagement
NetworkClient
Adaptivestreaming
Adaptiverendering
Renderingsystem
Partialdatabase
Completedatabase
Importance
New LOD
Request
Reply (data)
12
Adaptive Streaming and Rendering ofLarge Terrains: a Generic Solution
Data Structure
Measure of importance
Adaptive streaming
Adaptive rendering
13
Adaptive rendering
Client database: incomplete tree of blocks– Dynamic and asynchronous update operations
– Data on all leaves entire terrain can be rendered
User selects desired rendering speed– Adaptive “quality factor” in importance formula
– Importance triggers update operations
50 fps
100 fps
150 fps
14
At each frame, we first:– Hierarchically cull invisible blocks
– Compute importance to select a LOD for each block
Then we trigger update operations
Finally, we render visible leaves at selected LOD– With pre-computed masks to extract LOD samples
Adaptive rendering
LOD0
Importance
LOD1LOD1
LOD0 usedLOD1 requested, LOD0 used
SplitMergeLOD1 usedChildren used
15
Application: 3D rendering
LOD masks as triangle strips– Applied directly in hardware, no additional data copy
Streamed data: elevation and color values– Bounded “flat” terrains: relative to a plane
– Planets: relative to an ellipsoid
Rendered data: textured 3D polygonal models
16
Video
17
Adaptive Streaming and Rendering ofLarge Terrains: a Generic Solution
Contributions– Single data structure, generic mechanisms
– Any network and rendering speeds
– Any terrain data and rendering routines
– Low CPU overhead
Future work– Rendering optimizations
– Validate the solution on handheld devices
– Areas with different maximum resolution
Acknowledgements– Kadi Bouatouch, IRISA