Adaptive Streaming and Rendering of Large Terrains: a Generic Solution WSCG 2009 Raphaël Lerbour...

Post on 15-Jan-2016

219 views 0 download

Tags:

Transcript of Adaptive Streaming and Rendering of Large Terrains: a Generic Solution WSCG 2009 Raphaël Lerbour...

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