ํฌ์ŠคํŠธ

๐ŸŒ” Gamma Correction

๋Œ€์ถฉ ์‚ด์•„๊ฐ€๋Š” ๊ฒŒ์ž„๊ฐœ๋ฐœ์ž : โ€˜Gamma Correction : ๊ฐ๋งˆ ์ฝ”๋ ‰์…˜โ€™
๋Œ€์ถฉ ์‚ด์•„๊ฐ€๋Š” ๊ฒŒ์ž„๊ฐœ๋ฐœ์ž : โ€˜Gamma Correction ๊ฐ๋งˆ ์ฝ”๋ ‰์…˜ : ์–ด์งธ์„œ?โ€™
๋Œ€์ถฉ ์‚ด์•„๊ฐ€๋Š” ๊ฒŒ์ž„๊ฐœ๋ฐœ์ž : โ€˜17.Gamma correction (๊ฐ๋งˆ ๋ณด์ •)โ€™
๋ฏธ์นด์ด๋‹˜์˜ Tistory ๋ธ”๋กœ๊ทธ : โ€˜๊ฐ๋งˆ ์ฝ”๋ ‰์…˜ : ๊ฐ๋งˆ ๋ณด์ • Gamma Correction ์— ๋Œ€ํ•œ ํ…์Šค์ณ ์˜ต์…˜ ์ •๋ฆฌโ€™
๋ถ•๋Œ€๋งˆ์Œ๋‹˜์˜ Tistory ๋ธ”๋กœ๊ทธ : โ€˜๊ฐ๋งˆ ๋ณด์ • (gamma correction)โ€™
์œ„ํ‚ค๋ฐฑ๊ณผ : โ€˜๊ฐ๋งˆ๋ณด์ •โ€™
๋‚˜๋ฌด์œ„ํ‚ค : โ€˜๊ฐ๋งˆโ€™

Contrast : ์ด๋ฏธ์ง€์˜ ๋ฐ๊ธฐ ์ฐจ์ด (๋Œ€๋น„)
๋ฐด๋”ฉ ํ˜„์ƒ (๋“ฑ๊ณ ์„  ํ˜„์ƒ) :

๐Ÿ’ซ ์š”์•ฝ


  • ์ธ๊ฐ„์˜ ์ธ์ง€ ๋Šฅ๋ ฅ์˜ ํŠน์„ฑ ๋•Œ๋ฌธ์—, ์–ด๋‘์šด ๋ถ€๋ถ„์˜ ์Œ์˜์„ ๋” ์ž˜ ๋Š๋‚€๋‹ค.

  • ๊ทธ๋ž˜์„œ ๋ชจ๋‹ˆํ„ฐ๋Š” ์–ด๋‘์šด ์˜์—ญ์— ์ง‘์ค‘๋˜์–ด ์ถœ๋ ฅ๋˜๋„๋ก ์„ธํŒ…๋˜์–ด ์žˆ๋‹ค. (๋” ์ข‹๊ฒŒ ๋ณด์ด๊ธฐ ์œ„ํ•ด, ๋ชจ๋‹ˆํ„ฐ๋งˆ๋‹ค ์ฐจ์ด๋Š” ์žˆ๋‹ค.)
  • ๊ทธ๋ž˜์„œ ์ด๋ฏธ์ง€๋ฅผ ๊ทธ๋Œ€๋กœ ์ถœ๋ ฅํ•˜๋ฉด ์›๋ณธ๋ณด๋‹ค ์–ด๋‘์›Œ์ง„๋‹ค.
  • ์ปดํ“จํ„ฐ ๋‚ด๋ถ€์ ์œผ๋กœ๋Š” ๊ฐ ์ด๋ฏธ์ง€๋ฅผ ๋ชจ๋‹ˆํ„ฐ์— ์ถœ๋ ฅํ•  ๋•Œ ์–ด๋‘์›Œ์ ธ๋„ ๊ดœ์ฐฎ๋„๋ก ์ผ๋ถ€๋Ÿฌ ๋ฐ๊ฒŒ ๋งŒ๋“ค์–ด์„œ ์ €์žฅํ•˜๊ณ  ์žˆ๋‹ค. (sRGB) (์–ด๋‘์šด ๋ถ€๋ถ„์˜ ๋ฐ€๋„๋ฅผ ์˜ฌ๋ฆฌ๊ธฐ ์œ„ํ•ด)

๐Ÿ’ซ Gamma Correction


๋ชจ๋‹ˆํ„ฐ๋Š” ์šฐ๋ฆฌ๊ฐ€ ์•Œ๊ณ  ์žˆ๋Š” ์ƒ‰์ƒ์„ ๊ทธ๋Œ€๋กœ ์ถœ๋ ฅํ•˜์ง€ ์•Š๋Š”๋‹ค.
๋ชจ๋‹ˆํ„ฐ๋Š” ๋ชจ๋‹ˆํ„ฐ์˜ ์ถœ๋ ฅ ํŠน์„ฑ์ƒ ์–ด๋‘์šด ์˜์—ญ์— ์ง‘์ค‘๋˜์–ด ์ถœ๋ ฅ๋˜๋„๋ก ์„ธํŒ…๋˜์–ด ์žˆ๋‹ค.

๋•Œ๋ฌธ์— ์ด๋ฏธ์ง€๋ฅผ ๊ทธ๋Œ€๋กœ ์ถœ๋ ฅํ•˜๋ฉด ์›๋ณธ๋ณด๋‹ค ์–ด๋‘์›Œ์ง„๋‹ค.
์‚ฌ์‹ค ์ปดํ“จํ„ฐ ๋‚ด๋ถ€์ ์œผ๋กœ๋Š” ๊ฐ ์ด๋ฏธ์ง€๋ฅผ ๋ชจ๋‹ˆํ„ฐ์— ์ถœ๋ ฅํ•  ๋•Œ ์–ด๋‘์›Œ์ ธ๋„ ๊ดœ์ฐฎ๋„๋ก ์ผ๋ถ€๋Ÿฌ ๋ฐ๊ฒŒ ๋งŒ๋“ค์–ด์„œ ์ €์žฅํ•˜๊ณ  ์žˆ๋‹ค.

๐Ÿ’ซ Linear Workflow


์ด๋ฏธ์ง€๋ฅผ ๋ฐ๊ฒŒ ๋งŒ๋“ค์–ด์„œ ์ €์žฅํ•˜๊ธฐ ๋•Œ๋ฌธ์—,
์‰์ด๋” ์—ฐ์‚ฐ์„ ํ•  ๋•Œ, ๋ฐ๊ฒŒ ๋ณด์ •๋œ ์ด๋ฏธ์ง€๋ผ๋ฆฌ ์—ฐ์‚ฐ๋˜๋ฉด ๊ธฐ๋Œ€ํ–ˆ๋˜ ์ •์ƒ์ ์ธ ๊ฒฐ๊ณผ๋ฌผ์ด ๋‚˜์˜ค์ง€ ์•Š๋Š”๋‹ค.

๋”ฐ๋ผ์„œ ์ด ๋ถ€๋ถ„์„ ๊ณ„์‚ฐํ•  ๋•Œ ์ž ์‹œ ์›๋ž˜์ฒ˜๋Ÿผ ์–ด๋‘ก๊ฒŒ ์กฐ์ ˆํ•ด์ฃผ๋Š” ๋‚ด๋ถ€ ๊ณผ์ •์ด ํ•„์š”ํ•˜๊ฒŒ ๋˜๊ณ , ๊ณ„์‚ฐ์ด ๋๋‚˜๋ฉด ๋‹ค์‹œ ์›๋ž˜์˜ ๋ฐ๊ธฐ๋กœ ๋Œ๋ ค์ค€๋‹ค.
์ด๋Ÿฌํ•œ ๊ณผ์ •์„ ๋ฆฌ๋‹ˆ์–ด ์›Œํฌํ”Œ๋กœ์šฐ (Linear Workflow) ๋ผ๊ณ  ํ•˜๋ฉฐ, ์‰์ด๋” ์—ฐ์‚ฐ์—์„œ๋Š” ๋งค์šฐ ์ค‘์š”ํ•œ ๋‹จ๊ณ„๋ผ๊ณ  ํ•  ์ˆ˜ ์žˆ๋‹ค.

๐Ÿ’ซ Why (์™œ ๋ชจ๋‹ˆํ„ฐ๋Š” ์–ด๋‘ก๊ฒŒ ์ถœ๋ ฅํ•˜๋Š”๊ฐ€?)


์ธ๊ฐ„์˜ ์ธ์ง€ ๋Šฅ๋ ฅ์˜ ํŠน์„ฑ ๋•Œ๋ฌธ์—,

โ€˜๋ฒ ๋ฒ„์˜ ๋ฒ•์น™โ€™
์ธ๊ฐ„์€ ์ž๊ทน์ด ์—†๋Š” ์ƒํ™ฉ์—์„œ ์ถ”๊ฐ€๋œ ์ž‘์€ ์ž๊ทน์€ ๋ฏผ๊ฐํ•˜๊ฒŒ ๋Š๋ผ๋ฉด์„œ,
์ด๋ฏธ ๋งŽ์€ ์ž๊ทน์ด ์žˆ๋Š” ์ƒํƒœ์—์„œ ์ถ”๊ฐ€๋˜๋Š” ์ž๊ทน์€ ๋‘”๊ฐํ•˜๊ฒŒ ๋Š๋‚€๋‹ค.

์ธ๊ฐ„์ด ์–ด๋‘์šด ๋ถ€๋ถ„์˜ ์Œ์˜์„ ๋” ์ž˜ ๋Š๋‚€๋‹ค.

https://youtu.be/Xwlm5V-bnBc?si=1SdTDuif4-zSc0Gt&t=190
(Unity Korea : โ€˜Gamma Color space์™€ Linear Color space๋ž€?โ€™ 3๋ถ„ 10์ดˆ ~)

์œ„ ์˜์ƒ 3๋ถ„ 10์ดˆ์˜ ๋‘ ๊ทธ๋ผ๋ฐ์ด์…˜ ์ค‘, ์–ด๋Š ๊ฒƒ์ด ์ •์ƒ์œผ๋กœ ๋ณด์ด๋Š”๊ฐ€?
๋ผ๊ณ  ํ•œ๋‹ค๋ฉด ๋Œ€๋ถ€๋ถ„ 1๋ฒˆ์ด๋ผ๊ณ  ๋‹ตํ•  ๊ฒƒ์ด๋‹ค.

ํšŒ์ƒ‰์€ ํฐ์ƒ‰๊ณผ ๊ฒ€์€์ƒ‰์˜ ์ค‘๊ฐ„๊ฐ’์ด๋‹ค.
๋•Œ๋ฌธ์— ์ธ๊ฐ„์ด ๋Š๋ผ๋Š” ์ž์—ฐ์Šค๋Ÿฌ์šด ํšŒ์ƒ‰์€ 1๋ฒˆ ๊ทธ๋ผ๋ฐ์ด์…˜์˜ ๊ฐ€์šด๋ฐ ๊ฐ’์ด๋ผ๊ณ  ๋ณผ ์ˆ˜ ์žˆ๋‹ค.

ํ•˜์ง€๋งŒ !
1๋ฒˆ ๊ทธ๋ผ๋ฐ์ด์…˜์˜ ๊ฐ€์šด๋ฐ ๊ฐ’์€ ์ •ํ™•ํ•œ ํšŒ์ƒ‰์ด ์•„๋‹ˆ๋‹ค.

์ •ํ™•ํ•œ ํšŒ์ƒ‰์€ 187

ํฐ์ƒ‰ ์ค„๊ณผ ๊ฒ€์€์ƒ‰ ์ค„์„ ๋ฒˆ๊ฐˆ์•„๊ฐ€๋ฉฐ ๋†“์€ ์™ผ์ชฝ โ€˜Grayโ€™ ์˜์—ญ์˜ ์ƒ‰์€,

1๋ฒˆ ๊ทธ๋ผ๋ฐ์ด์…˜์˜ ๊ฐ€์šด๋ฐ ๊ฐ’ 128์ด ์•„๋‹ˆ๋ผ,
2๋ฒˆ ๊ทธ๋ผ๋ฐ์ด์…˜์˜ ๊ฐ€์šด๋ฐ ๊ฐ’ 187์— ๊ฐ€๊นŒ์›Œ ๋ณด์ธ๋‹ค.

(ํ™˜๊ฒฝ์— ๋”ฐ๋ผ ๋ณด์ด๋Š” ๊ฒƒ์— ์ฐจ์ด๊ฐ€ ์žˆ์„ ์ˆ˜ ์žˆ์Œ, ์ง์ ‘ ํฌํ† ์ƒต ๋“ฑ์˜ ํˆด์„ ์ด์šฉํ•ด ๊ทธ๋ฆผ์„ ๊ทธ๋ ค 100% ๋ฐฐ์œจ๋กœ ํ™•์ธํ•ด๋ณด๋Š” ๊ฒƒ์ด ์ •ํ™•ํ•˜๋‹ค.)

์ฆ‰, ์ •ํ™•ํ•œ ํšŒ์ƒ‰์€ 187์ด๊ณ , ์ •ํ™•ํ•œ ๊ทธ๋ผ๋ฐ์ด์…˜์€ 2๋ฒˆ ๊ทธ๋ผ๋ฐ์ด์…˜์ด๋‹ค.
2๋ฒˆ ๊ทธ๋ผ๋ฐ์ด์…˜์ด ์–ด์ƒ‰ํ•˜๊ฒŒ ๋ฐ์•„๋ณด์˜€๋˜ ์ด์œ ๋Š”, ๋ฒ ๋ฒ„์˜ ๋ฒ•์น™ ๋•Œ๋ฌธ์ด๋‹ค.

์ธ๊ฐ„์€ ์ธ์ง€ ๋Šฅ๋ ฅ์˜ ํŠน์„ฑ (๋ฒ ๋ฒ„์˜ ๋ฒ•์น™) ๋•Œ๋ฌธ์—, ์–ด๋‘๋ถ„ ๋ถ€๋ถ„์˜ ์Œ์˜์„ ๋” ์ž˜ ๋Š๋‚€๋‹ค.
๊ทธ๋ผ๋ฐ์ด์…˜์˜ ๋ฐด๋”ฉ ํ˜„์ƒ์ด ์–ด๋‘์šด ๋ถ€๋ถ„์—์„œ๋Š” ์ž˜ ๋ณด์ด์ง€๋งŒ, ๋ฐ์€ ๋ถ€๋ถ„์—์„œ๋Š” ์ž˜ ๋ณด์ด์ง€ ์•Š๋Š”๋‹ค.

๊ทธ๋ž˜์„œ ๋ชจ๋‹ˆํ„ฐ๋Š”, ์–ด๋‘์šด ๊ณณ์— ๋ฏผ๊ฐํ•œ ์ธ๊ฐ„์˜ ๊ฐ๊ฐ์— ๋งž์ถฐ ์–ด๋‘์šด ๋ถ€๋ถ„์˜ ๋ฐ€๋„๋ฅผ ์˜ฌ๋ฆฌ๊ธฐ๋กœ ํ–ˆ๋‹ค.

์ด๋ฏธ์ง€๋ฅผ ๋ฉ”๋ชจ๋ฆฌ์— ์ €์žฅํ•  ๋•Œ ์ผ๋ถ€๋Ÿฌ ๋ฐ๊ฒŒ ์ €์žฅํ•˜๊ณ , (์–ด๋‘์šด ๋ถ€๋ถ„์˜ ๋ฐ€๋„๋ฅผ ์˜ฌ๋ฆฌ๊ธฐ ์œ„ํ•ด)
๋ชจ๋‹ˆํ„ฐ์— ์ถœ๋ ฅ ํ•  ๋•Œ์—๋Š” ๋ฐ์•„์ง„ ์ด๋ฏธ์ง€๋ฅผ ์–ด๋‘ก๊ฒŒ ์ถœ๋ ฅํ•œ๋‹ค.

์ด๋ฏธ์ง€๋Š” ์šฐ๋ฆฌ ์ƒ๊ฐ๋ณด๋‹ค ๋ฐ๊ฒŒ ์ €์žฅ๋œ๋‹ค. (sRGB, ๊ฐ๋งˆ ๊ณต๊ฐ„์— ์žˆ๋‹ค.)

๐Ÿ’ซ Memo


์™œ โ€˜๊ฐ๋งˆโ€™ ๋ณด์ •์ด๋ผ๊ณ  ํ•˜๋Š”๊ฐ€?

๋น„์„ ํ˜• ์ „๋‹ฌ ํ•จ์ˆ˜์˜ ์ง€์ˆ˜ ๊ณ„์ˆ˜๊ฐ€ ๊ฐ๋งˆ (ฮณ) ์ด๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.
๊ฐ๋งˆ๋Š” 2.2๊ฐ€ ๊ฐ€์žฅ ๊ทผ์ ‘ํ•œ ๊ฐ’์œผ๋กœ ์•Œ๋ ค์ ธ ์žˆ๋Š”๋ฐ, 2.0์„ ์“ฐ๋Š” ๊ฒƒ์ด ์—ฐ์‚ฐ ์†๋„๊ฐ€ ๋น ๋ฅธ ๊ด€๊ณ„๋กœ 2.0์„ ์“ฐ๋Š” ๊ฒฝ์šฐ๋„ ์žˆ๋‹ค.

In Unity

URP๋กœ ๋„˜์–ด์˜ค๋ฉด์„œ ๊ธฐ๋ณธ์ ์œผ๋กœ ๋ฆฌ๋‹ˆ์–ด ์›Œํฌํ”Œ๋กœ์šฐ๊ฐ€ ์ ์šฉ๋˜์–ด ์žˆ๋‹ค. (2020 ์˜์ƒ ๊ธฐ์ค€)
-> ๊ฐ๋งˆ ๋ณด์ •์„ ์ž˜ ์ดํ•ดํ•˜๊ณ  ์žˆ์–ด์•ผ ํ•œ๋‹ค.

์˜ˆ์ „์—” ๋ชจ๋ฐ”์ผ์—์„œ ๋ฆฌ๋‹ˆ์–ด ๋ Œ๋”๋ง์„ ์“ฐ์ง€ ์•Š์•˜๋Š”๋ฐ, ์ตœ๊ทผ์—” ๋ชจ๋ฐ”์ผ์—์„œ๋„ ๋ฆฌ๋‹ˆ์–ด ๋ Œ๋”๋ง์ด โ€˜๊ธฐ๋ณธโ€™์ด ๋˜์–ด๊ฐ€๋Š” ์ถ”์„ธ. (2020 ์˜์ƒ ๊ธฐ์ค€)
์œ ๋‹ˆํ‹ฐ ๊ธฐ๋ณธ ์„ค์ •์ด โ€˜Gammaโ€™

์œ ๋‹ˆํ‹ฐ ์—”์ง„์€ ๊ธฐ๋ณธ์ ์œผ๋กœ Gamma๋กœ ์„ค์ •๋˜์–ด ์žˆ๋‹ค. (Project Settings/Player/Rendering/ColorSpace) (2020 ์˜์ƒ ๊ธฐ์ค€, 2017 ๋ฒ„์ „)
-> ๋ฆฌ๋‹ˆ์–ด ํŒŒ์ดํ”„๋ผ์ธ์„ ๊ตฌํ˜„๋ชปํ•˜๋Š” ๊ตฌํ˜• ๊ธฐ๊ธฐ๋ฅผ ์ง€์›ํ•˜๊ธฐ ์œ„ํ•ด์„œ, ํ˜ธํ™˜์„ฑ์„ ์œ„ํ•ด์„œ

๊ฐ๋งˆ ํŒŒ์ดํ”„๋ผ์ธ์—์„œ์˜ ADD ์ดํŽ™ํŠธ
-> ๋ฐ๊ฒŒ ์ €์žฅ๋œ ์ด๋ฏธ์ง€๋ฅผ ๊ทธ๋Œ€๋กœ ๋”ํ•œ๋‹ค.
-> ๊ณผ๋„ํ•˜๊ฒŒ ๋ฐ์•„์ง€๋Š” ๋ถ€๋ถ„์€ ๋ฐ์ดํ„ฐ๊ฐ€ ๋‚ ๋ผ๊ฐ„๋‹ค.

๋ฆฌ๋‹ˆ์–ด ํŒŒ์ดํ”„๋ผ์ธ์—์„œ์˜ ADD ์ดํŽ™ํŠธ
-> ์—ฐ์‚ฐํ•˜๊ธฐ ์ „์— ๋‹ค์‹œ ์–ด๋‘ก๊ฒŒ ์ƒ˜ํ”Œ๋ง (์ง€์›ํ•˜๋Š” ํ•˜๋“œ์›จ์–ด์—์„œ๋Š” ์ƒ˜ํ”Œ๋ง ์‹œ์— ์ด ์ž‘์—…์ด ๊ณต์งœ)
-> ์„ ํ˜• ์˜์—ญ์œผ๋กœ ๋‚ด๋ฆฐ ์ƒํƒœ์—์„œ ์—ฐ์‚ฐํ•˜๊ณ , ๊ทธ ๊ฒฐ๊ณผ๋ฅผ sRGB๋กœ ๋ฐ๊ฒŒ ์ €์žฅ
-> ์ด๋ฅผ ๋””์Šคํ”Œ๋ ˆ์ด๋กœ ์ถœ๋ ฅ (๋‹ค์‹œ ์–ด๋‘ก๊ฒŒ, ๊ฐ๋งˆ ๋ณด์ •)

์–ด๋””์„œ ๊ณ„์‚ฐํ•˜๋ƒ์˜ ์ฐจ์ด

์ด ๊ธฐ์‚ฌ๋Š” ์ €์ž‘๊ถŒ์ž์˜ CC BY 4.0 ๋ผ์ด์„ผ์Šค๋ฅผ ๋”ฐ๋ฆ…๋‹ˆ๋‹ค.