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(



for (all links





gather(

gather(

gather(

gather(

Push-Pull
pushpull(

if (

push
















recurse
pushpull(

pushpull(

pushpull(

pushpull(

pull

else
convert incoming to outgoing radiance


Flashcard info:
Author: janisborn
Main topic: Informatik
Topic: Computergrafik
School / Univ.: RWTH Aachen
City: Aachen
Published: 18.05.2022