This flashcard is just one of a free flashcard set. See all flashcards!
75
Explain Hierarchical Radiosity!
Radiosity is very smooth across most patches. Use adaptive refinement to only subdivide where form factors change. Problem: Subdivision leads to complexity since each patch can interact with each other one.
Solution: Allow interactions across subdivision levels.
Adaptive Refinement
Idea: where form factors are large, subdivide the larger patch
refine(, ):
if ( && )
link(, )
else if ()
if (subdivide() > )
refine(, )
refine(, )
refine(, )
refine(, )
else
link(, )
else
if (subdivide() > )
refine(, )
refine(, )
refine(, )
refine(, )
else
link(, )
Solution
Alternatingly, apply to all unsubdivided patches
Gather
gather():
.in
for (all links )
.in .in + .out
gather()
gather()
gather()
gather()
Push-Pull
pushpull()
if ( has children)
push
in in .in
in in .in
in in .in
in in .in
recurse
pushpull()
pushpull()
pushpull()
pushpull()
pull
else
convert incoming to outgoing radiance
in
Solution: Allow interactions across subdivision levels.
Adaptive Refinement
Idea: where form factors are large, subdivide the larger patch
refine(, ):
if ( && )
link(, )
else if ()
if (subdivide() > )
refine(, )
refine(, )
refine(, )
refine(, )
else
link(, )
else
if (subdivide() > )
refine(, )
refine(, )
refine(, )
refine(, )
else
link(, )
Solution
Alternatingly, apply to all unsubdivided patches
- Gathering Step
- Push-Pull Step
Gather
gather():
.in
for (all links )
.in .in + .out
gather()
gather()
gather()
gather()
Push-Pull
pushpull()
if ( has children)
push
in in .in
in in .in
in in .in
in in .in
recurse
pushpull()
pushpull()
pushpull()
pushpull()
pull
else
convert incoming to outgoing radiance
in
Flashcard info:
Author: janisborn
Main topic: Informatik
Topic: Computergrafik
School / Univ.: RWTH Aachen
City: Aachen
Published: 18.05.2022