์ด ๋ฌธ์„œ์˜ ์›๋ณธ์€ ์™ธ๋ถ€ ์œ„ํ‚ค์—์„œ ๊ฐ€์ ธ์™”์Šต๋‹ˆ๋‹ค.
AO์— ๋”ฐ๋ฅธ ๊ทธ๋ž˜ํ”ฝ ์ฐจ์ด. ์ถœ์ฒ˜
1. ๊ฐœ์š”2. ์ข…๋ฅ˜

1. ๊ฐœ์š”[ํŽธ์ง‘]

Ambient Occlusion
๋น›์˜ ์ฐจํ๋กœ ์ธํ•œ ๊ฐ์‡  ๊ทผ์‚ฌ์น˜๋ฅผ ๊ตฌํ•˜๋Š” ์ดํŽ™ํŠธ์ž…๋‹ˆ๋‹ค. ํ˜„์‹ค์—์„œ๋„ ๋ฐฉ์˜ ๊ตฌ์„ ๋ถ€๋ถ„์€ ํ›จ์”ฌ ๋” ์–ด๋‘ก๋“ฏ์ด, ๊ตฌ์„์ด๋‚˜ ํ‹ˆ ๊ฐ™์€ ๊ณณ์„ ๋” ์–ด๋‘ก๊ฒŒ ํ•˜์—ฌ ๋”์šฑ ์ž์—ฐ์Šค๋Ÿฝ๊ณ  ์‚ฌ์‹ค์ ์ธ ๋А๋‚Œ์„ ๋‚ผ ์ˆ˜ ์žˆ๋„๋ก, ํ‘œ์ค€ ๊ธ€๋กœ๋ฒŒ ์ผ๋ฃจ๋ฏธ๋„ค์ด์…˜์— ๋”ํ•ด ๋ฏธ๋ฌ˜ํ•œ ์ดํŽ™ํŠธ๋กœ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ๋ณดํ†ต ๊ฐ€์žฅ ์ข‹์Šต๋‹ˆ๋‹ค.
-์–ธ๋ฆฌ์–ผ ์—”์ง„ ๊ฐ€์ด๋“œ ์ค‘ SSAO์— ๋Œ€ํ•œ ์„ค๋ช…์—์„œ ๋ฐœ์ทŒ.

๋ Œ๋”๋ง ๊ณผ์ • ์ค‘ ์…ฐ์ด๋”ฉ์˜ ํ•œ ๋ฐฉ์‹. ๊ฐ๊ฐ์˜ ํ‘œ๋ฉด์ด ๊ด‘์›์— ์–ผ๋งˆ๋‚˜ ๋…ธ์ถœ๋˜์–ด ์žˆ๋Š”์ง€๋ฅผ ๊ณ„์‚ฐํ•˜์—ฌ ๊ทธ๋ฆผ์ž๋ฅผ ๋”ํ•ด์ฃผ๋Š” ๊ธฐ์ˆ ์ด๋‹ค. ์ผ๋ฐ˜์ ์œผ๋กœ ๊ด‘์›๊ณผ ๋ฌผ์ฒด๋ฅผ ๋˜์ ธ๋†“๊ณ  ์ง€์—ญ ์กฐ๋ช… ๋ฐฉ์‹[1]์œผ๋กœ ์ฒ˜๋ฆฌ๋ฅผ ์‹œํ–‰ํ•˜๋ฉด ๊ทธ๋ฆผ์ž๋Š” ์žˆ์ง€๋งŒ ์‹ค์ œ์™€ ๋ฏธ๋ฌ˜ํ•˜๊ฒŒ ๋‹ค๋ฅธ๋ฐ, AO๋Š” ์ด๋ฅผ ๋ณด์ •ํ•˜๊ณ  ์‹ค์ œ์— ๋” ๊ฐ€๊น๊ฒŒ ๋ณด์ด๋„๋ก ๋งŒ๋“ ๋‹ค. ๋ฆฌ์–ผํƒ€์ž„ ๋ ˆ์ด ํŠธ๋ ˆ์ด์‹ฑ์œผ๋กœ๋„ ๊ตฌํ˜„๋˜๊ณ  ์žˆ๋‹ค. HBAO์™€์˜ ๋น„๊ต์˜์ƒ

2. ์ข…๋ฅ˜[ํŽธ์ง‘]

  • SSAO - Screen Space Ambient Occlusion
    ๊ฐ€์žฅ ๋งŽ์ด ์“ฐ์ด๋Š” ์ „ํ†ต์žˆ๋Š” AO. ํ˜„์žฌ ๋ชจ๋‹ˆํ„ฐ์— ๋ Œ๋”๋ง๋˜๋Š” ์˜์—ญ๋งŒ์„ Screen Space๋กœ ์ธ์‹ํ•˜์—ฌ ํ•ด๋‹น ์˜์—ญ์—๋งŒ ์•ฐ๋น„์–ธํŠธ ์˜คํด๋ฃจ์ „์„ ์ ์šฉํ•จ์œผ๋กœ์จ ์ผ์ • ์ˆ˜์ค€ ์ตœ์ ํ™” ๋œ ๊ทธ๋ž˜ํ”ฝ์„ ์ œ๊ณตํ•œ๋‹ค. ํ›„์ˆ ํ•  HBAO+๊ฐ€ ๋ณด๊ธ‰๋œ ํ›„์—๋Š” ์œ„์ƒ์ด ์ข€ ๋–จ์–ด์กŒ์ง€๋งŒ ์—ฌ์ „ํžˆ ์˜ต์…˜ ํƒ€ํ˜‘์šฉ์œผ๋กœ ๋‘˜ ๋‹ค ์ง€์›ํ•˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ์ ˆ๋Œ€๋‹ค์ˆ˜์ด๋‹ค.[2]
  • NVIDIA Ambient Occlusion
    ์ •์‹ ๋ช…์นญ์€ ๊ทธ๋ƒฅ Ambient Occlusion์ด๋‹ค. SSAO๊ฐ€ ์ •์ฐฉ๋˜๊ธฐ ์ด์ „ ์ง€ํฌ์Šค ์ „์šฉ(...)์œผ๋กœ ๋…์ž ๊ตฌํ˜„ํ•œ ๋ฐฉ์‹์œผ๋กœ, ๋ฏธ๋ฆฌ ๊ตฌ์›Œ๋†“์€ ๋งต์„ ํ†ตํ•œ ๋ฐ˜์‹ค์‹œ๊ฐ„ ๊ตฌํ˜„์— ๊ฐ€๊นŒ์šด ๋ฐฉ์‹. ํŠนํžˆ ์ง€ํฌ์Šค์— ์ตœ์ ํ™”ํ•˜๊ธฐ ์œ ๋ฆฌํ•˜์ง€๋งŒ ๊ฐœ๋ฐœ์ž๊ฐ€ ๋…ธ๊ฐ€๋‹ค๋กœ ๋งต์„ ๊ตฌ์›Œ๋†”์•ผ ํ•˜๋Š” ์ธก๋ฉด ๋•Œ๋ฌธ์— AMD๊ฐ€ ๋ฐ€๋˜ SSAO์— ๋ฐ€๋ ค์„œ ์‚ฌ์žฅ๋˜์—ˆ๋‹ค. (SSAO๋ฅผ AMD๊ฐ€ ๊ฐœ๋ฐœํ•œ ๊ฒƒ์€ ์•„๋‹ˆ์ง€๋งŒ, ์ƒ๋Œ€์ ์œผ๋กœ ์‰์ด๋” ์„ฑ๋Šฅ์— ์น˜์ค‘ํ•˜๋Š” ๋ผ๋ฐ์˜จ ๊ฐœ๋ฐœ ์„ฑํ–ฅ์— ๋งž์•„์„œ ๋ฐ€์–ด์คฌ๋˜ ๊ฒƒ) ์ง€๊ธˆ์€ ํ•˜ํ”„๋ผ์ดํ”„ 2, ์›”๋“œ ์ธ ์ปจํ”Œ๋ฆญํŠธ, ํด์•„์›ƒ 3 ๋“ฑ ๊ทนํžˆ ๋ช‡๋ช‡ ๊ฒŒ์ž„๋งŒ ์ง€์›ํ•œ๋‹ค. # ํ•˜์ง€๋งŒ NVIDIA๋Š” ์ดํ›„ HBAO๋กœ AMD์˜ HDAO๋ฅผ ์ณ๋ฐœ๋ผ์„œ ๋Œ€์„ธ๋ฅผ ๋˜์ฐพ๋Š”๋‹ค.
  • HBAO+ - Horizon Based Ambient Occlusion+
    NVIDIA๊ฐ€ ์ œ๊ณตํ•˜๋Š” ๊ธฐ์ˆ . ์ตœ๊ทผ ๋“ค์–ด ์“ฐ์ด๋Š” ์ฐจ์„ธ๋Œ€ AO๋กœ ๋ฐฐํ‹€ํ•„๋“œ4, ์œ„์ณ3, ๋ผ์ด์ฆˆ ์˜ค๋ธŒ ํˆผ ๋ ˆ์ด๋” ๋“ฑ ๋งŽ์€ ๊ณณ์— ์ ์šฉ๋˜์—ˆ๋‹ค. SSAO๋ณด๋‹ค ์ข€ ๋” ๋†’์€ ์—ฐ์‚ฐ๋Šฅ๋ ฅ์„ ํ•„์š”๋กœ ํ•˜์ง€๋งŒ ๊ทธ๋ฆผ์ž์˜ ์ •ํ™•์„ฑ์ด ์ข€ ๋” ๋†’์•„์ง„๋‹ค.
  • HDAO - High Definition Ambient Occlusion
    AMD๊ฐ€ ๊ฐœ๋ฐœํ•˜๊ณ  ๋ฐ€์–ด์คฌ๋˜ SSAO์˜ ๊ฐœ๋Ÿ‰ํŒ. ๋‹จ์ˆœํžˆ SSAO๋ฅผ ๋” ์ •๊ตํ•˜๊ฒŒ ์—ฐ์‚ฐํ•ด์„œ ํ€„๋ฆฌํ‹ฐ๋ฅผ ์˜ฌ๋ฆฌ๋Š” ๋ฐฉ์‹์ด๋ผ ์„ฑ๋Šฅ ํ•˜๋ฝ ๋Œ€๋น„ ์“ฐ๋ ˆ๊ธฐ์ง€๋งŒ, ๋‹น์‹œ ๋ผ๋ฐ์˜จ์— ์ „์šฉ ๊ฐ€์† ๋ช…๋ น์–ด๋ฅผ ๋„ฃ์–ด์„œ ๊ทธ๊ฑธ ์“ฐ๋ฉด ์“ธ๋งŒํ•˜๊ฒŒ ํ•ด์ฃผ๋Š” ์‹์œผ๋กœ ๋ฐ€์–ด์คฌ๋Š”๋ฐ.....๊ทผ๋ณธ์ ์ธ ๊ฐœ์„ ์„ ํ•ด๋ฒ„๋ฆฐ HBAO์— ๋น„ํ•˜๋ฉด ๋ผ๋ฐ์˜จ ์ „์šฉ ๊ฐ€์† ๋ช…๋ น์–ด๋ฅผ ์จ์•ผ ๋ณธ์ „๋งŒ ๊ฐ„์‹ ํžˆ ์ฐพ๋Š” ์ˆ˜์ค€์ด๋ผ ๋ฐœ๋ ธ๋‹ค. ์ง€๊ธˆ์€ ํŒŒํฌ๋ผ์ด 3 ๋“ฑ ๊ทนํžˆ ๋ช‡๋ช‡ ๊ฒŒ์ž„๋งŒ ์ง€์›ํ•œ๋‹ค. #
  • VXAO - Voxel Accelerated Ambient Occlusion
    NVIDIA GameWorks์—์„œ ์ œ๊ณตํ•˜๋Š” ๊ธฐ์ˆ ๋กœ ๋ผ์ด์ฆˆ ์˜ค๋ธŒ ํˆผ ๋ ˆ์ด๋”์—์„œ ์“ฐ์˜€๋‹ค. ๋ง ๊ทธ๋Œ€๋กœ AO๋ฅผ ์ ์šฉํ•  ๋ถ€๋ถ„์„ ๋ณต์…€ ๋‹จ์œ„๋กœ ๊ณ„์‚ฐํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๊ฐ€์žฅ ์ •ํ™•์„ฑ์ด ๋†’์€ ์Œ์˜์„ ์ถœ๋ ฅํ•  ์ˆ˜ ์žˆ์ง€๋งŒ, ์ด์— ๋”ฐ๋ผ ์š”๊ตฌ๋˜๋Š” GPU์˜ ์—ฐ์‚ฐ๋Šฅ๋ ฅ์ด ๋งค์šฐ ๋†’๋‹ค.
  • SSDO - Screen Space Directional Occlusion
  • AAO - Alchemy Ambient Occlusion
  • ABAO - Angle Based Ambient Occlusion
  • PBAO
  • ASSAO - Adaptive Screen Space Ambient Occlusion, HBAO+์™€ ๋น„์Šทํ•˜๊ฒŒ SSAO๋ฅผ ๊ฐœ๋Ÿ‰ํ•œ ๊ธฐ์ˆ . F1 2018์—์„œ AMD ์ตœ์ ํ™” ์˜ต์…˜์œผ๋กœ ๋“ฑ์žฅํ•˜์—ฌ ๋น„๊ต ๋ฒค์น˜๊ฐ€ ๋‚˜์˜ค๊ธฐ๋„ ํ–ˆ๋‹ค.# ๋‹ค๋งŒ ๊ธฐ์ˆ  ์ž์ฒด๋Š” ์ธํ…”์ด ๋งŒ๋“  ๋“ฏ # (์ด์ „์—๋„ ์ธํ…”์ด ๋งŒ๋“  MLAA๋ฅผ ๋ผ๋ฐ์˜จ์—์„œ ๊ฐ€์ ธ๋‹ค ์“ด ์ ์ด ์žˆ์œผ๋‹ˆ ์ด์ƒํ•  ๊ฑด ์—†๋‹ค.)
  • CACAO - Combined Adaptive Compute Ambient Occlusion
    AMD FidelityFX์˜ AO ๊ตฌํ˜„๋ฐฉ์‹ ์ค‘ ํ•˜๋‚˜์˜ ํ’€๋„ค์ž„, ์ •์‹ ๋ช…์นญ์€ ์ฃผ๋กœ FidelityFX Ambient Occlusion.
  • DFAO - Distance Field Ambient Occlusion
    ์—ํ”ฝ๊ฒŒ์ž„์ฆˆ์˜ ์–ธ๋ฆฌ์–ผ ์—”์ง„ 4์—์„œ ์ œ๊ณตํ•˜๋Š” ๊ธฐ์ˆ . ๊ธฐ์กด์˜ ํ”„๋ฆฌ์ปดํ“จํ‹ฐ๋“œ AO๊ธฐ์ˆ ๊ณผ๋Š” ๋‹ค๋ฅด๊ฒŒ ์‹ค์‹œ๊ฐ„์œผ๋กœ ๊ตฌํ˜„๋˜๋Š” ๊ฒƒ์ด ํŠน์ง•์ด๋‹ค. ํŒŒ๊ดดํšจ๊ณผ๋กœ ๋ถ€์ˆด์ง€๋Š” ํŒŒํŽธ๋“ฑ์—๋„ ์Œ์˜ํšจ๊ณผ๋ฅผ ์‹ค์‹œ๊ฐ„์œผ๋กœ ์—…๋ฐ์ดํŠธํ•ด ๋”์šฑ ์‚ฌ์‹ค์ ์ธ ํ‘œํ˜„์ด ๊ฐ€๋Šฅํ•˜๋‹ค.
[1] ์ƒ‰์„ ์ž…ํžˆ๊ณ  ํ›„์ฒ˜๋ฆฌ๋กœ ์Œ์˜์„ ์ž…ํž˜.
[2] ๋ฐ˜๋ฉด์— SSAO ์˜ต์…˜ ์—†์ด HBAO+๋งŒ ์ง€์›ํ•˜๋Š” ๊ฒฝ์šฐ๋Š” ๊ทนํžˆ ๋“œ๋ฌผ๋‹ค.