Distributed Handling of large Level of Detail Surfaces Using binary triangle trees and progressive streaming. Rune Aasgaard Thomas Sevaldrud SINTEF Applied Mathematics
Several ways to the goal Centralized rendering, image distribution Client-server terrain database
Which data where? Client terrain database Near graphics system Some simple analysis functionality Fast updates Server terrain database Huge! Fast access Updateable / re-generateable?
Level of Detail A coarse model retained for the whole domain Use already transferred data Refinement until required quality obtained Coarsen when possible Keep recently coarsened data in cache
Requirements Client terrain model Closeness to graphics system Triangle sets 3D coordinates Texture coordinates Normal vectors
Requirements Client terrain model Simple analysis functionality Connectivity Single elevations Profiles Gradients
Requirements Client terrain model Updates from server when: Data becomes visible More detail is required Reduce to coarse level when: Data becomes invisible Less detail is required
Requirements Server terrain model Huge! Whole earth, 30” grid (DTED Level 0): 933.120.000 points! Whole earth, 3” grid (DTED Level 1): 93.312.000.000 points! Luckily, 2/3 of the earth is ocean Major parts of the land is relatively flat
Requirements Server terrain model Fast access, query expectations: Grouped Localized in area Similar resolution level
Requirements Server terrain model Model creation and editing, data sources Variable quality Variable density Variable complexity … integration…?
Selected solution - client Binary triangle trees Related to Lindström triangulations and ROAM algorithm Simple algorithm for triangle fan creation Simple relation between triangles and texture quads Error sphere tree instead of priority queues
Binary Triangle Trees - refinement split
Binary Triangle Trees - forced neighbor split
Error sphere tree Acceptance radius based on Angular resolution Triangle approximation error Centered at triangle split point May be common for triangle pair Uses maximum radius May contain child spheres Also contains object radius
Error sphere tree
Selected solution - server Quad trees Easily transformable to BTT Fast access system for disk based data Simple algorithm for creation and updating with more detailed data
Server Quad tree
Selected solution - communication Query indexed on coordinates collected as a query set Reply Elevations Approximation errors