이종협 - SGLab

birdsowlΛογισμικό & κατασκευή λογ/κού

2 Δεκ 2013 (πριν από 3 χρόνια και 4 μήνες)

76 εμφανίσεις

Paper Presentation

-

An Efficient GPU
-
based Approach for Interactive Global Illumination
-

Rui Wang, Rui Wang, Kun Zhou, Minghao Pan, Hujun Bao

Presenter : Jong Hyeob Lee

2010. 11. 23


2

Overview


Previous work



Main Algorithm


GPU
-
based KD
-
Tree


Selecting Irradiance Sample Points


Reducing the Cost of Final Gather



Results



Conclusion


3

Overview


Previous work



Main Algorithm


GPU
-
based KD
-
Tree


Selecting Irradiance Sample Points


Reducing the Cost of Final Gather



Results



Conclusion


4

Previous work


CPU
-
based global illumination


Instant radiosity [Keller 1997]


Photon mapping [Jensen 2001]


Interactive global illumination using fast ray
tracing [Wald et al. 2002]


LightCuts [Walter et al. 2005]







Radiosity Photon mapping



5

Previous work


GPU
-
based global illumination


Reflective shadow maps [Dachsbacher and
Stamminger 2005]


Radiance Cache Splatting [Gautron et al. 2005]


Matrix row
-
column sampling [Hasan et al.
2007]


Imperfect shadow maps [Ritschel et al. 2008]


GPU KD
-
Tree construction [Zhou et al. 2008]



6

Overview


Previous work



Main Algorithm


GPU
-
based KD
-
Tree


Selecting Irradiance Sample Points


Reducing the Cost of Final Gather



Results



Conclusion


7

System Overview



8

Overview


Previous work



Main Algorithm


GPU
-
based KD
-
Tree


Selecting Irradiance Sample Points


Reducing the Cost of Final Gather



Results



Conclusion


9

GPU
-
based KD
-
Tree


Use method in “Real
-
time kd
-
tree
construction on graphics hardware” [Zhou
et al. 2008]


To build kd
-
trees in real
-
time using NVIDIA’s
CUDA



Direct Lighting

1) Build a kd
-
tree of the scene, and trace eye rays in parallel

2) Collect rays that hit non
-
specular surfaces using a parallel list compaction [Harris et al. 2007]

3) Collect rays that hit specular surfaces, and spawn reflected and refracted rays for them

4) Repeat steps 2 and 3 for additional bounces

5) For all non
-
specular hit points, perform shadow tests and compute direct shading in parallel


10

Overview


Previous work



Main Algorithm


GPU
-
based KD
-
Tree


Selecting Irradiance Sample Points


Reducing the Cost of Final Gather



Results



Conclusion


11

A parallel view space sampling
strategy


The goal of view space sampling:


Select sample points that best approximate the
actual (ir)radiance changes in view space.


12

A parallel view space sampling
strategy


Irradiance caching [Ward et al. 1998]


Progressively inserting sample points into an
existing set.


Decision to insert more samples is based on the
local variations of irradiance samples.



13

A parallel view space sampling
strategy


Clustering optimization


14

A parallel view space sampling
strategy


Clustering optimization


Error metric :



15

A parallel view space sampling
strategy


Temporal coherence


Fix cluster centers computed from the previous
frame.


Classify shading points to these clusters.


Collect points with large errors.


Create new cluster for these unclassified
shading points and remove null clusters.



16

Result



17

Overview


Previous work



Main Algorithm


GPU
-
based KD
-
Tree


Selecting Irradiance Sample Points


Reducing the Cost of Final Gather



Results



Conclusion


18

A cut approximation on photon
map


Computing an illumination cut from the
photon tree.


Typical approach: density estimation for each
photon


too costly



Estimate an illumination cut from the
photon map directly, without density
estimation at each photon.


19

A cut approximation on photon
map



20

A cut approximation on photon
map


Select node which E
p

is larger than E
min


21

A cut approximation on photon
map


Refinement with threshold


22

Result



23

Overview


Previous work



Main Algorithm


GPU
-
based KD
-
Tree


Selecting Irradiance Sample Points


Reducing the Cost of Final Gather



Results



Conclusion


24

Results


Implemented on BGSP [Hou et al. 2008]


A general purpose C programming interface
suitable for many core architecture such as the
GPU



Point or spot cone lights



3 bounces (2 photon bounces and final
gather)



250 ~ 500 final gather rays


25

Results









Ours Reference 8 times error Image


26

Results









27

Overview


Previous work



Main Algorithm


GPU
-
based KD
-
Tree


Selecting Irradiance Sample Points


Reducing the Cost of Final Gather



Results



Conclusion


28

Conclusion


An efficient GPU
-
based method for
interactive global illumination is presented.


Sparse view space (ir)radiance sampling


A cut approximation of the photon map


A GPU approach of interactive global
illumination



Limitations


Only glossy materials for final gather


Missing small geometric details


With some temporal flickering artifacts


29

Q&A


Thank you.