๋ณธ๋ฌธ์œผ๋กœ ๋ฐ”๋กœ๊ฐ€๊ธฐ
728x90

*์ธํ”„๋Ÿฐ <๊ฒŒ์ž„ ์—”์ง„์„ ์ง€ํƒฑํ•˜๋Š” ๊ฒŒ์ž„์ˆ˜ํ•™, ์ด๋“์šฐ ๊ต์ˆ˜๋‹˜> ๊ฐ•์˜๋ฅผ ๋“ฃ๊ณ  ๊ณต๋ถ€ํ•œ ๊ธ€์ž…๋‹ˆ๋‹ค.

 

 

 

1. ๊นŠ์ด ๋ฒ„ํผ(Depth Buffer)

 

๊นŠ์ด ๋ฒ„ํผ(Depth Buffer)๋Š” ์นด๋ฉ”๋ผ๋กœ๋ถ€ํ„ฐ ์–ผ๋งˆ๋‚˜ ๊นŠ์€ ๊ณณ์— ์žˆ๋Š”์ง€๋Š” ํŒŒ์•…ํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐ์ดํ„ฐ๋ผ๊ณ  ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. 3์ฐจ์› ๊ณต๊ฐ„์—์„œ ๋‹ค์ˆ˜์˜ ๋ฌผ์ฒด๋“ค์„ ๊ทธ๋ฆด ๋•Œ, ๊ทธ๋ฆฌ๋Š” ์ˆœ์„œ๋ฅผ ๊ณ ๋ คํ•˜์ง€ ์•Š์œผ๋ฉด ์–ด๋–ค ๋ฌผ์ฒด๊ฐ€ ์•ž์— ์žˆ๊ณ  ๋’ค์— ์žˆ๋Š”์ง€ ๊ตฌ๋ถ„ํ•  ์ˆ˜๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ์•ž์— ์žˆ์–ด์•ผ ํ•  ๋ฌผ์ฒด(1)๊ฐ€ ๋จผ์ € ๊ทธ๋ ค์ง€๊ณ , ๋’ค์— ์žˆ์–ด์•ผ ํ•  ๋ฌผ์ฒด(2)๊ฐ€ ๋‚˜์ค‘์— ๊ทธ๋ ค์ง€๋ฉด, ์‚ฌ์‹ค์ƒ ์šฐ๋ฆฌ ๋ˆˆ์œผ๋กœ ๋ดค์„ ๋•Œ๋Š” (1) ๋ฌผ์ฒด๊ฐ€ (2) ๋’ค์— ์žˆ๋Š” ๊ฒƒ์ฒ˜๋Ÿผ ๋ณด์ด๊ธฐ ๋•Œ๋ฌธ์ด์ฃ .

 

๊นŠ์ด ๊ฐ’์„ ์ ์šฉํ•˜์ง€ ์•Š์•˜์„ ๋•Œ ๋ฐœ์ƒํ•˜๋Š” ๊ฒฐ๊ณผ

 

์ด๋Ÿฌํ•œ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•˜๋Š” ์ด์œ ๋Š” ๊ฐ ๋ฌผ์ฒด๋งˆ๋‹ค ์นด๋ฉ”๋ผ๋กœ๋ถ€ํ„ฐ ์–ผ๋งŒํผ ๋’ค์— ์žˆ๋Š”์ง€์— ๋Œ€ํ•œ ๊ธฐ์ค€์น˜๊ฐ€ ์—†๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๊ธฐ์ค€์น˜๋ฅผ ์ •ํ•˜๊ธฐ ์œ„ํ•ด ๊นŠ์ด ๋ฒ„ํผ๋ผ๋Š” ๊ฒƒ์„ ๋„์ž…ํ–ˆ์œผ๋ฉฐ, ์ด ๊นŠ์ด ๋ฒ„ํผ ๊ฐ’์— ๋”ฐ๋ผ ๋’ค์— ์žˆ๋Š” ๋ฌผ์ฒด๊ฐ€ ์•ž์— ์žˆ๋Š” ๋ฌผ์ฒด๋ฅผ ๋ฎ์–ด ์“ฐ์ง€ ์•Š๊ฒŒ ํ”ฝ์…€ ๋ณ„๋กœ ๊ณ„์‚ฐํ•ด ์ ์šฉํ•จ์œผ๋กœ์จ ์œ„ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

 

์ด๋Ÿฌํ•œ ๊นŠ์ด ๋ฒ„ํผ๋ฅผ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ๋Š” ๋Œ€ํ‘œ์ ์ธ ๋ฐฉ๋ฒ•์œผ๋กœ Z-Buffer ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ๊ธ€์—์„œ๋Š” ๊นŠ์ด ๋ฒ„ํผ ๊ตฌํ˜„ ๋‚ด์šฉ์— ๋Œ€ํ•ด์„  ๋‹ค๋ฃจ์ง€ ์•Š๊ณ , ๊นŠ์ด ๋ฒ„ํผ ๊ฐ’์„ ์–ด๋–ป๊ฒŒ ๊ณ„์‚ฐํ•˜๋Š” ์ง€์— ๋Œ€ํ•ด์„œ๋งŒ ์•Œ์•„๋ณด๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

 

1) ์ ˆ๋‘์ฒด(Frustum)

 

์นด๋ฉ”๋ผ์˜ ํ™”๊ฐ(Field of View)์ด ์ง€์ •๋˜๋ฉด, ์นด๋ฉ”๋ผ์—์„œ ํ™”๊ฐ์œผ๋กœ ๋ฌดํ•œ๋Œ€๋กœ ํŽผ์ณ์งˆ ๊ฒ๋‹ˆ๋‹ค. ์‚ฌ์˜ ๊ณต๊ฐ„(Projective Space)์—์„œ๋Š” \(z\) ๊ฐ’์ด \(x, \ y\) ๊ฐ’์— ์˜ํ–ฅ์„ ๋ฏธ์น˜๊ธฐ ๋•Œ๋ฌธ์—, \(z\) ๊ฐ’์ด ์ปค์ง์— ๋”ฐ๋ผ \(x, \ y\) ๊ฐ’๋„ ๋Š˜์–ด๋‚˜๊ธฐ ๋•Œ๋ฌธ์ด์ฃ .

 

์‚ฌ์‹ค ๋ฐ˜๋Œ€ํŽธ ์ชฝ์—์„  ์นด๋ฉ”๋ผ ์œ„์น˜(0, 0, 0)์œผ๋กœ ์ˆ˜๋ ดํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์‚ฌ์‹ค์ƒ ๋ฌดํ•œ๋Œ€ ~ ๋ฌดํ•œ๋Œ€ ๊ณต๊ฐ„์ด๋‹ค.

 

๊ทธ๋Ÿฐ๋ฐ ์ด๋ ‡๊ฒŒ ๋ฌดํ•œ๋Œ€์˜ ์˜์—ญ์—์„œ ๊นŠ์ด ๊ฐ’์„ ์‚ฐ์ถœํ•˜๊ธฐ ๋ณด๋‹ค๋Š”, NDC ์ขŒํ‘œ๊ณ„์ฒ˜๋Ÿผ ์ผ์ •ํ•œ ๋ฒ”์œ„๋ฅผ ๋‘๋Š” ๊ฒ๋‹ˆ๋‹ค. ๋ฌดํ•œ๋Œ€๋กœ ํŽผ์ณ์ง„ ์‚ฌ์˜ ๊ณต๊ฐ„์—์„œ ์‹œ์ž‘์ ๊ณผ ๋ ์ ์„ ์ฃผ๊ณ , ์ด ์˜์—ญ๋งŒ ๋”ฑ ์ž˜๋ผ์„œ ์ด ๊ณต๊ฐ„์— ์†ํ•œ ๋‚ด์šฉ๋“ค๋งŒ ๊ทธ๋ฆฌ๋Š” ๊ฒ๋‹ˆ๋‹ค. ์ด๋ ‡๊ฒŒ ์‹œ์ž‘์ ๊ณผ ๋ ์ ์„ ์ž๋ฅด๊ฒŒ ๋˜๋ฉด ํ”ผ๋ผ๋ฏธ๋“œ ๊ผญ๋Œ€๊ธฐ ๋ถ€๋ถ„์„ ๊ฐ€๋กœ๋กœ ์ž๋ฅธ ๋“ฏํ•œ ๋„ํ˜•์ด ๋‚˜์˜ค๊ฒŒ ๋˜๋Š”๋ฐ, ์ด๋ฅผ ์ ˆ๋‘์ฒด(Frustum)๋ผ๊ณ  ๋ถ€๋ฅด์ฃ .

 

์ด ์ ˆ๋‘์ฒด์˜ ์‹œ์ž‘์ ์„ ๊ทผ ํ‰๋ฉด(Near Plane), ๋ ์ ์„ ์› ํ‰๋ฉด(Far Plane) ์ด๋ผ๊ณ  ๋ถ€๋ฆ…๋‹ˆ๋‹ค.

์ผ๋ฐ˜์ ์œผ๋กœ ๊ทผ ํ‰๋ฉด์˜ ๊นŠ์ด ๊ฐ’์€ -1, ์› ํ‰๋ฉด์˜ ๊นŠ์ด ๊ฐ’์€ 1์„ ์ฃผ๊ธฐ์—, ์ด ์ ˆ๋‘์ฒด ๋‚ด์— ์†ํ•œ ๋ฌผ์ฒด๋“ค์˜ ๊นŠ์ด ๊ฐ’์€ \(-1 \sim \ 1\) ์˜ ๋ฒ”์œ„๋ฅผ ๊ฐ€์ง€๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

 

์ ˆ๋‘์ฒด(Frustum)

 

์ด๋Ÿฌํ•œ ์ ˆ๋‘์ฒด์˜ ๊ทผ ํ‰๋ฉด๊ณผ ์› ํ‰๋ฉด ๊ฐœ๋…์„ ๊ธฐ๋ฐ˜์œผ๋กœ NDC ์ขŒํ‘œ๊ณ„๋ฅผ ํ™•์žฅํ•˜๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋ชจ์–‘์ด ๋ฉ๋‹ˆ๋‹ค.

 

3์ฐจ์›์œผ๋กœ ๊ตฌ์„ฑํ•œ NDC ์ขŒํ‘œ ๊ณต๊ฐ„

 

๊ทธ๋Ÿฐ๋ฐ ๋ณดํ†ต ๊นŠ์ด ๊ฐ’์„ ๊ณ„์‚ฐํ•  ๋•Œ, ์ด๋ฏธ์ง€๋กœ ๋‚˜ํƒ€๋‚ด๋Š” ํ˜•ํƒœ๊ฐ€ ๋งŽ์Šต๋‹ˆ๋‹ค. ์ด๋ฏธ์ง€๋ผ๋Š” ๊ฒƒ์€ ๊ฒฐ๊ตญ์—๋Š” ์ƒ‰์ƒ ์ •๋ณด๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ๊ณ , ์ƒ‰์ƒ์€ ์ผ๋ฐ˜์ ์œผ๋กœ ๋งˆ์ด๋„ˆ์Šค(-) ๊ฐ’์ด๋ผ๋Š” ๊ฒŒ ์กด์žฌํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ด๋ฏธ์ง€์—์„œ 0์€ ์ฃผ๋กœ ๊ฒ€์€์ƒ‰, 1์€ ํฐ์ƒ‰์œผ๋กœ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์ ์—์„œ ๋น„๋กฏํ•˜์—ฌ, DirectX๋Š” 0 ~ 1๊นŒ์ง€์˜ ์ƒ‰์ƒ ํ‘œํ˜„์— ์œ ์šฉํ•˜๊ฒŒ ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•ด, ๊ทผ ํ‰๋ฉด ๊ฐ’์„ -1์ด ์•„๋‹Œ 0๋ถ€ํ„ฐ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค.

 

 

2) ๊ณต๊ฐ„์˜ ์ขŒํ‘œ๊ณ„

 

์˜ค๋ฅธ์† ์ขŒํ‘œ๊ณ„๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๋ทฐ ๊ณต๊ฐ„์˜ ๊ฒฝ์šฐ, ์นด๋ฉ”๋ผ ์•ž์— ์žˆ๋Š” ๋ฌผ์ฒด๋“ค์˜ \(z\) ์ถ• ๊ฐ’์€ ํ•ญ์ƒ ๋งˆ์ด๋„ˆ์Šค(-) ๊ฐ’์ด๋ฉฐ, ์นด๋ฉ”๋ผ๋กœ๋ถ€ํ„ฐ ๋ฉ€์–ด์งˆ์ˆ˜๋ก \(z\) ์ถ• ๊ฐ’์ด ์ž‘์•„์ง‘๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ, ์œ„์—์„œ ๊ตฌ์„ฑํ•œ 3์ฐจ์› NDC ๊ณต๊ฐ„์˜ ๊ฒฝ์šฐ์—๋Š” ๋ฌผ์ฒด๊ฐ€ ์นด๋ฉ”๋ผ๋ณด๋‹ค ์•ž์— ์žˆ์„ ๋•Œ ์–‘์ˆ˜์˜ \(z\) ๊ฐ’์„ ๊ฐ€์ง€๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

 

์ด ์ด์•ผ๊ธฐ๋Š” NDC ๊ณต๊ฐ„์—์„œ๋Š” ์™ผ์† ์ขŒํ‘œ๊ณ„๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค๋Š” ์˜๋ฏธ๋กœ ๋ฐ›์•„๋“ค์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

 

์ด ๋•Œ๊นŒ์ง€ ์‚ฌ์šฉํ–ˆ๋˜ ๊ณต๊ฐ„์— ๋Œ€ํ•œ ์ขŒํ‘œ๊ณ„ ๋ณต์Šต ์‹œ๊ฐ„

 

  • ๋กœ์ปฌ ๊ณต๊ฐ„(Local Space) : ๋ชจ๋ธ๋ง ํ”„๋กœ๊ทธ๋žจ์— ๋”ฐ๋ผ ์ดˆ๊ธฐ ์„ค์ •์ด ๋˜๊ณ , FBX๋กœ ๋ณ€ํ™˜๋˜์–ด ๊ฒŒ์ž„ ์—”์ง„์— ๋“ค์–ด์˜ค๋ฉด ๊ฒŒ์ž„ ์—”์ง„์ด ์ง€์ •ํ•œ ์ขŒํ‘œ๊ณ„๋กœ ๋ณ€๊ฒฝ๋œ๋‹ค.
  • ์›”๋“œ ๊ณต๊ฐ„(World Space) : ๊ฒŒ์ž„ ์—”์ง„์ด ์ง€์ •ํ•œ ์ขŒํ‘œ๊ณ„ ์‚ฌ์šฉ
  • ๋ทฐ ๊ณต๊ฐ„(View Space) : ๋Œ€๋ถ€๋ถ„์˜ ๊ฒŒ์ž„ ์—”์ง„๋“ค์€ ์˜ค๋ฅธ์† ์ขŒํ‘œ๊ณ„๋ฅผ ์‚ฌ์šฉ
  • ํด๋ฆฝ ๊ณต๊ฐ„(Clip Space) : ์™ผ์† ์ขŒํ‘œ๊ณ„ ์‚ฌ์šฉ
    ๐Ÿ‘‰๐Ÿป ์›๊ทผ ํˆฌ์˜ ํ–‰๋ ฌ์„ ์„ค๊ณ„ํ•  ๋•Œ \(z\) ๊ฐ’์—๋‹ค๊ฐ€ -1์„ ๊ณฑํ–ˆ๊ธฐ ๋•Œ๋ฌธ
  • NDC ๊ณต๊ฐ„(Normalized Device Coordinate Space) : ์™ผ์† ์ขŒํ‘œ๊ณ„ ์‚ฌ์šฉ

 

 


2. ์ตœ์ข… ์›๊ทผ ํˆฌ์˜ ํ–‰๋ ฌ

 

๊ธฐ์กด์— ์‚ฌ์šฉํ–ˆ๋˜ ํ–‰๋ ฌ์€ \(4 \times 4\) ํฌ๊ธฐ๋ฅผ ๋งž์ถฐ์ฃผ๊ธฐ ์œ„ํ•ด, ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š” ํ•œ ํ–‰(row)์„ ์‚ฌ์šฉํ•˜์—ฌ ์›๊ทผ ํˆฌ์˜ ํ–‰๋ ฌ์„ ๊ตฌ์„ฑํ•˜์˜€์Šต๋‹ˆ๋‹ค.

 

$$ P=\left[\begin{matrix}\frac{d}{a}&0&0&0\\0&d&0&0\\0&0&-1&0\\0&0&0&1\\\end{matrix}\right] $$

 

์ด์ œ ๊นŠ์ด ๊ฐ’์„ ๊ณ„์‚ฐํ•˜๊ธฐ ์œ„ํ•ด, \(z\) ์ถ• ํ–‰์— ํ•ด๋‹นํ•˜๋Š” 3๋ฒˆ์งธ ํ–‰์—๋‹ค๊ฐ€ ๋ฏธ์ง€์ˆ˜(\(i, \ j, \ k, \ l\))๋ฅผ ๋„ฃ์–ด๋ณด๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

 

$$ P\cdot\ v_{view}=\left[\begin{matrix}\frac{d}{a}&0&0&0\\0&d&0&0\\i&j&k&l\\0&0&-1&0\\\end{matrix}\right]\left[\begin{matrix}v_x\\v_y\\v_z\\1\\\end{matrix}\right]=\left[\begin{matrix}\frac{d}{a}\cdot v_x\\d\cdot v_y\\?\\-v_z\\\end{matrix}\right] $$

 

๊ทธ๋Ÿฐ๋ฐ ์šฐ๋ฆฌ๊ฐ€ ๊ณ„์‚ฐํ•˜๋Š” ๊ฒƒ์€ ๊นŠ์ด ๊ฐ’์ด์ฃ . ๊นŠ์ด ๊ฐ’์€ \(z\) ์ถ•์— ํ•ด๋‹นํ•˜๋ฉฐ, ์ด๋Š” \(x, \ y\) ์ถ•์— ์ง๊ตํ•˜๊ธฐ ๋•Œ๋ฌธ์— \(x, \ y\) ๊ฐ’๋“ค์€ ๊นŠ์ด ๊ฐ’์— ์ „ํ˜€ ์˜ํ–ฅ์„ ์ฃผ์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ, \(x, \ y\) ๊ฐ’๋“ค์€ 0์œผ๋กœ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ์ฃ .

 

$$ P\cdot\ v_{view}=\left[\begin{matrix}\frac{d}{a}&0&0&0\\0&d&0&0\\0&0&k&l\\0&0&-1&0\\\end{matrix}\right]\left[\begin{matrix}v_x\\v_y\\v_z\\1\\\end{matrix}\right]=\left[\begin{matrix}\frac{d}{a}\cdot v_x\\d\cdot v_y\\?\\-v_z\\\end{matrix}\right] $$

 

์ด์ œ \(k, \ l\) ๊ฐ’์„ ๊ตฌํ•ด์•ผ ํ•˜๋Š”๋ฐ, ์ด๊ฒƒ์€ ๊ทผ ํ‰๋ฉด๊ณผ ์› ํ‰๋ฉด์˜ ํŠน์ง•์„ ์‚ฌ์šฉํ•˜์—ฌ ๊ตฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. \(k, \ l\) ์„ ๊ตฌํ•  ์ˆ˜ ์žˆ๊ฒŒ, ๊ทผ ํ‰๋ฉด๊ณผ ์› ํ‰๋ฉด์—์„œ ์ƒ˜ํ”Œ ๋ฐ์ดํ„ฐ๋ฅผ ์–ป์–ด์ฃผ๋Š” ๊ฒƒ์ด์ฃ .

๊ทผ ํ‰๋ฉด๊ณผ ์› ํ‰๋ฉด์˜ ๊ฐ’๋“ค์€ ์‚ฌ์šฉ์ž๊ฐ€ ์ง€์ •ํ•ด์ฃผ๋Š” ๊ฐ’์ด๊ธฐ ๋•Œ๋ฌธ์— ์ƒ์ˆ˜๋ผ๊ณ  ๋ณผ ์ˆ˜ ์žˆ๊ณ , ๊ทผ ํ‰๋ฉด์— ๋Œ€ํ•œ ๊ฐ’์„ \(n\), ์› ํ‰๋ฉด์— ๋Œ€ํ•œ ๊ฐ’์„ \(f\) ๋กœ ์คฌ๋‹ค๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™์ด ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

 

๋ทฐ ์ขŒํ‘œ๊ณ„์—์„œ ์นด๋ฉ”๋ผ ์‹œ์„  ๋ฐฉํ–ฅ์€ -์ด๊ธฐ ๋•Œ๋ฌธ์— ๊ฐ๊ฐ -n, -f ๊ฐ€ ๋œ ๊ฒƒ

 

NDC ์ขŒํ‘œ๊ณ„์—์„œ๋Š” \(-1 \sim 1\) ์˜ ๋ฒ”์œ„๋ฅผ ๊ฐ€์ง€๊ธฐ ๋•Œ๋ฌธ์—, \( (0, \ 0, \ -n) \rightarrow (0, \ 0, \ -1) \) ์ด ๋˜๊ณ , \( (0, \ 0, \ -f) \rightarrow (0, \ 0, \ 1) \) ์ด ๋ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๊ธฐ๋ณธ ๋ฐ์ดํ„ฐ๋ฅผ ํ™œ์šฉํ•ด, \(k, \ l\) ์„ ๊ตฌํ•ด๋ด…์‹œ๋‹ค.

 

$$ P=\left[\begin{matrix}\frac{d}{a}&0&0&0\\0&d&0&0\\0&0&k&l\\0&0&-1&0\\\end{matrix}\right]\left[\begin{matrix}0\\0\\-n\\1\\\end{matrix}\right]=\left[\begin{matrix}0\\0\\?\\n\\\end{matrix}\right] $$

$$ P=\left[\begin{matrix}\frac{d}{a}&0&0&0\\0&d&0&0\\0&0&k&l\\0&0&-1&0\\\end{matrix}\right]\left[\begin{matrix}0\\0\\-f\\1\\\end{matrix}\right]=\left[\begin{matrix}0\\0\\?\\f\\\end{matrix}\right] $$

 

์œ„ ํ–‰๋ ฌ์„ ๊ณฑํ•ด์ ธ์„œ ๋‚˜์˜จ ๊ฒฐ๊ณผ์˜ ๋„ค ๋ฒˆ์งธ ์š”์†Œ๋Š” ํ–‰๋ ฌ ๊ณฑ์„ ํ†ตํ•ด ์–ป์€ ๊ฒฐ๊ณผ์ด๋‹ˆ, ๊ฐ๊ฐ \(n, \ f\) ์ธ ๊ฒƒ์€ ํ™•์‹คํ•ฉ๋‹ˆ๋‹ค.

๊ทธ๋ ‡๋‹ค๋ฉด, \( ? \) ํ‘œ์‹œ๋œ ๋ถ€๋ถ„์„ ๊ตฌํ•ด์•ผ ํ•˜๋Š”๋ฐ, ์—ฌ๊ธฐ์„œ ์ƒ๊ฐํ•ด ๋ณผ ๊ฒƒ์€ ์œ„ ํ–‰๋ ฌ์„ ๊ณฑํ•ด์„œ ๋‚˜์˜จ ๊ฒฐ๊ณผ๋Š” ํด๋ฆฝ ๊ณต๊ฐ„์˜ ์ขŒํ‘œ๋ผ๋Š” ๊ฒ๋‹ˆ๋‹ค.

 

์œ„์—์„œ ์–ป์—ˆ๋˜ ๊ทผ ํ‰๋ฉด๊ณผ ์› ํ‰๋ฉด์˜ ์ƒ˜ํ”Œ ๋ฐ์ดํ„ฐ์˜ NDC ๊ณต๊ฐ„ \(z\) ์ขŒํ‘œ๋Š” ๊ฐ๊ฐ \(-1, \ 1\) ์ด์—ˆ์Šต๋‹ˆ๋‹ค.

ํด๋ฆฝ ๊ณต๊ฐ„์—์„œ NDC ๊ณต๊ฐ„์œผ๋กœ ๋ณ€ํ™˜ํ•  ๋•Œ, ๋งˆ์ง€๋ง‰ ์ฐจ์›์˜ ๊ฐ’์œผ๋กœ ๋‚˜๋ˆ ์ฃผ์—ˆ๋˜ ๊ฑธ ๊ธฐ์–ตํ•˜์‹œ๋‚˜์š”? 

 

๊ทผ ํ‰๋ฉด์—์„œ๋Š” ๋งˆ์ง€๋ง‰ ์ฐจ์›์˜ ๊ฐ’์ธ \(n\) ์œผ๋กœ ๋‚˜๋ˆ„์—ˆ์„ ๋•Œ, \(z = -1\) ์ด ๋˜์–ด์•ผ ํ•˜๋‹ˆ, ์„ธ ๋ฒˆ์งธ ์š”์†Œ \(? = -n\) ์ด ๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

 

์› ํ‰๋ฉด์—์„œ๋„ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ, ๋งˆ์ง€๋ง‰ ์ฐจ์›์˜ ๊ฐ’์ธ \(f\) ๋กœ ๋‚˜๋ˆ„์—ˆ์„ ๋•Œ, \(z = 1\) ์ด ๋˜์–ด์•ผ ํ•˜๋‹ˆ, ์„ธ ๋ฒˆ์งธ ์š”์†Œ \( ? = f\) ๊ฐ€ ๋˜์–ด์•ผ ํ•˜์ฃ .

 

์ด์— ๋”ฐ๋ผ, ๊ทผ ํ‰๋ฉด๊ณผ ์› ํ‰๋ฉด์˜ ๊ฐ๊ฐ ํด๋ฆฝ ์ขŒํ‘œ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

 

$$ (0, \ 0, -n, \ n) $$

$$ (0, \ 0, \ f, \ f) $$

 

์ด์ œ ์ด๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ์›๊ทผ ํˆฌ์˜ ํ–‰๋ ฌ์„ ๊ตฌ์„ฑํ•˜๋Š” ๋‘ ๊ฐœ์˜ ๋ฏธ์ง€์ˆ˜ \(k, \ l\)์„ ๊ตฌํ•  ์ˆ˜ ์žˆ๋Š” ์‹์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

 

$$ P=\left[\begin{matrix}\frac{d}{a}&0&0&0\\0&d&0&0\\0&0&k&l\\0&0&-1&0\\\end{matrix}\right]\left[\begin{matrix}0\\0\\-n\\1\\\end{matrix}\right]=\left[\begin{matrix}0\\0\\-n\\n\\\end{matrix}\right] $$

$$ P=\left[\begin{matrix}\frac{d}{a}&0&0&0\\0&d&0&0\\0&0&k&l\\0&0&-1&0\\\end{matrix}\right]\left[\begin{matrix}0\\0\\-f\\1\\\end{matrix}\right]=\left[\begin{matrix}0\\0\\f\\f\\\end{matrix}\right] $$

 

์ด๋กœ๋ถ€ํ„ฐ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์—ฐ๋ฆฝ ๋ฐฉ์ •์‹์„ ๊ตฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

 

$$ \begin{cases} -kn + l = -n \\ -kf + l = f \end{cases} $$

 

๊ฐ๊ฐ์„ ํ’€๋ฉด, ๋‹ค์Œ๊ณผ ๊ฐ™์ด \(k, \ l\) ๊ฐ’์„ ๊ณ„์‚ฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

 

$$ k=\frac{-(n+f)}{(-n+f)}=\frac{n+f}{n-f} $$

$$ l=\frac{2nf}{(n-f)} $$

 

์ด๋ฅผ ํ–‰๋ ฌ์— ์ ์šฉํ•˜๋ฉด, ์ด์ œ ๊นŠ์ด ๊ฐ’์ด ์ ์šฉ๋œ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์›๊ทผ ํˆฌ์˜ ํ–‰๋ ฌ์„ ์–ป์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

 

$$ P=\left[\begin{matrix}\frac{d}{a}&0&0&0\\0&d&0&0\\0&0&\frac{n+f}{n-f}&\frac{2nf}{n-f}\\0&0&-1&0\\\end{matrix}\right] $$

 

 

728x90
๋ฐ˜์‘ํ˜•