• Nebyly nalezeny žádné výsledky

frames / sec.

N/A
N/A
Protected

Academic year: 2022

Podíl "frames / sec."

Copied!
23
0
0

Načítání.... (zobrazit plný text nyní)

Fulltext

(1)

Dynamic Mesh Refinement on GPU using Geometry Shaders

Haik Lorenz and Jürgen Döllner Hasso-Plattner-Institute

University of Potsdam, Germany

(2)

2

Outline

1. Introduction

2. Dynamic Mesh Refinement 3. Results

4. Conclusions

(3)

3

Introduction – About me

Research assistant at Hasso-Plattner-Institute, University of Potsdam, Germany

Member of the research group “3D Geoinformation”

Focus subject: Textured virtual 3D city models

Creation: Automatic texturing using oblique aerial imagery

Storage: Open Geospatial Consortium (OGC) standard “CityGML”

for rich city models

Visualization: Effective presentation of large-scale virtual 3D city models

(4)

4

Introduction – Motivation

■ Enable non-planar projections &

deformations in object space for arbitrary objects

□ Provide better quality than screen space operations

□ Require sufficient vertex density in screen space

■ Basic operation: (View dependent) mesh refinement

Closeup of an object-space cylindrical projection

Closeup of a screen-space cylindrical projection

[Trapp & Döllner 2008: “A Generalization Approach for 3D Viewing Deformations of Single- Center Projections”

(5)

5

Introduction – Examples

360° cylindrical projection in object space

(6)

6

Introduction – Examples

360° cylindrical projection in object space

Original mesh – 34596 triangles

(7)

7

Introduction – Examples

360° cylindrical projection in object space

Original mesh – 34596 triangles

(8)

8

Introduction – Examples

360° cylindrical projection in object space

View-dependently refined mesh – 39721 triangles

(9)

9

Introduction – Examples

360° cylindrical projection in object space

View-dependently refined mesh – 39721 triangles

(10)

10

Introduction – Examples

360° cylindrical projection in object space

Comparison between original and refined mesh (34596 vs. 39721 triangles)

(11)

11

Introduction – Examples

Geometry

synthesis using PN-triangles

(12)

12

Introduction – Existing techniques

Adaptive tessellation of subdivision surfaces [Bunnell ’05]

■ For subdivision surfaces only

Adaptive Mesh Refinement [Boubekeur and Schlick ’07]

■ Barycentric refinement patterns replace input triangles

■ Low technical requirements (VS1)

■ One shader setup + render call per input triangle

■ Focusing on geometry synthesis with large refinement ratio

(13)

13

Outline

1. Introduction

2. Dynamic Mesh Refinement 3. Results

4. Conclusions

(14)

14

Dynamic Mesh Refinement – Overview

Input: Triangles without specific connectivity or topology Design goals

1. View-dependency

□ Overall low refinement ratio, but “unlimited” peak ref.

□ Per-frame refinement changes 2. Substantial input triangle count

□ Minimize communication between CPU and GPU Approach

■ Use barycentric refinement patterns

■ Use geometry shaders for “pattern instantiation” on GPU

□ Implies storage of an intermediate refined mesh

(15)

15

Dynamic Mesh Refinement – Geometry Shaders

■ Geometry shaders can change, drop, or amplify primitives between vertex processing and before rendering

■ Ideal for mesh refinement: Simply tessellate triangles on GPU on the fly…

■ BUT: Output limited and extremely output sensitive

0 50 100 150

frames / sec.

(16)

16

Dynamic Mesh Refinement – Sketch

Key idea: Incrementally update intermediate mesh

(17)

17

Dynamic Mesh Refinement – Incremental update

■ Replaces repeated refinement passes

□ One update pass per frame

■ Intermediate mesh concatenates pattern copies

■ For each input triangle:

□ Goal: Overwrite existing pattern copy with new one

□ Each existing subtriangle is replaced by a few subtriangles of the new refinement pattern

□ Excess subtriangles are dropped

■ Allows for arbitrary pattern size, but limits per-frame pattern growth

(18)

18

Dynamic Mesh Refinement – Comparison

Comparison to [Boubekeur & Schlick ‘07] for cylindrical projection (~13500 triangles in mesh, ~1050 fps w/o refinement)

Suitable for view-dependent refinement and large number of triangles

0 200000 400000 600000 800000 1000000

1 10 100

max. horizontal edge length (pixels) average triangle count / frame

0 50 100 150 200 250

frames / sec.

av. tri count, small city DMR, small city ARP, small city

(19)

19

Outline

1. Introduction

2. Dynamic Mesh Refinement 3. Results

4. Conclusions

(20)

20

Results - Movie

(21)

21

Outline

1. Introduction

2. Dynamic Mesh Refinement 3. Results

4. Conclusions

(22)

22

Conclusions

Generic technique for dynamic mesh refinement Excellent for view-dependent rendering techniques Runs on the GPU exclusively

Applicable to any mesh

Future work:

■ Applications for mesh refinement:

□ General non-planar projections in object space

□ Per-vertex global illumination with guaranteed vertex density in image space

■ Unified approach to mesh refinement and simplification

(23)

23

The End

Thank you for your attention!

Contact:

haik.lorenz@hpi.uni-potsdam.de

supported by:

Odkazy

Související dokumenty

In the introduced multiresolution shape optimisation approach we use a fine control mesh for BEM discretisation and coarser control meshes for geometry modification.. More precisely,

First, simulations with high temporal resolution have been conducted using conductivity changes of the lung and geometry changes of the heart as phys- iological dynamic sources for

• Global-, local-, repeat- and overlap alignment of two sequences using dynamic programming... DNA Sequence Comparison: First

From this one obtains, using the category equivalence between coherent frames and bounded distributive lattices together with Stone Duality for the latter, that every coherent frame

In this paper, we present a new online approach for fast and effective completion of 3D animated models that estimates the position of the unknown vertices of the current frame

This means, if input of linear function has vertex frequency, its output has ver- tex frequency too, so it can be safely moved to the ver- tex shader.. Nonlinear functions

This work presents a methodology to create engineering vessel models using the MG (Mesh Generator) [8] and Sstab [7] software combined with automatic parametric geometry

The geometry of the coarse mesh is transmitted using the previously described method, and sub- sequently the inverse of the decimation follows, in each step adding a vertex into