Rendering Pipeline
๐ซ Q
- ๊ทธ๋ํฝ์ค API ์ดํด: OpenGL, DirectX, Vulkan ๋ฑ์ ๊ทธ๋ํฝ์ค API์ ๋ํ ๊น์ ์ดํด.
- 3D ์ํ: ๋ฒกํฐ, ํ๋ ฌ, ํํฐ๋์ธ ๋ฑ์ ์ฌ์ฉํ 3D ๋ณํ๊ณผ ๊ด๋ จ๋ ์ํ์ ์ดํด.
- ๋ ๋๋ง ๊ธฐ์ : ๋ฆฌ์ผํ์ ๋ ๋๋ง, ๋ ์ด ํธ๋ ์ด์ฑ, ํฌ์คํธ ํ๋ก์ธ์ฑ ๋ฑ์ ๊ธฐ์ ์ ๋ํ ์ง์.
- ํผํฌ๋จผ์ค ์ต์ ํ: ๊ทธ๋ํฝ์ค ์ฑ๋ฅ์ ๋ถ์ํ๊ณ ์ต์ ํํ๋ ๋ฅ๋ ฅ.
- ๊ทธ๋ํฝ api๋ฅผ ์ฐ๋๊ฑด ta๊ฐ ์ ์์์ผํ๋ ์์ญ์ด๊ณ
- ํด๋ผ์ชฝ์ 3d๋ฌผ์ฒด๊ฐ 2d์ขํ๋ก ์ด๋ป๊ฒ ๋ ๋๋ง ๋๋ ๊ณผ์ ํ๊ณ cpu์ ์ผ์ gpu๊ฐ ์ด๋ป๊ฒ ์ฒ๋ฆฌํ๊ณ ์๋ค ์ ๋ ์๋ฉด ๋๋๊ฑฐ์ง
๐ซ Rendering Pipeline
๊ทผ๋ณธ์ ์ผ๋ก ์์ด๋์ ์์์ ์๋ โ๊ทธ๋ํฝ ์ํฐ์คํธ๋ค์ด ์ํ๋ 3D์ ์ง๊ฐ์ ์์ ๋กญ๊ฒ ์ ์ดํ๋๋ก ํ์โ ๋ผ๋ ๊ฒ์ด ๋ชฉํ ์ปดํจํฐ ๊ทธ๋ํฝ์ค (Computer Graphics) ๋ ๋๋ง ํ์ดํ๋ผ์ธ (Rendering Pipeline : ๋ ๋๋ง ์์) ์ด๊ฒ์ ์ดํดํ๋ฉฐ ์์ด๋์ ์ ์ ํ๋ฆ์ ์๊ฒ ๋๊ณ , ์ฌ๋ฌ ๊ฐ์ง ๋ฐ์ํ ์ ์๋ ๋ฌธ์ ์ ํด๊ฒฐ, ์ต์ ํ์๋ ๋์์ด ๋ฉ๋๋ค
๐ซง ์ค๋ธ์ ํธ ๋ฐ์ดํฐ ๋ฐ์์ค๊ธฐ
GPU๋ ๋ฒํ
์ค (Vertex : ์ ์ ) ๋ก ์ด๋ฃจ์ด์ง ๋ฌผ์ฒด์ ๋ฐ์ดํฐ ๊ฐ์ ๋ฐ์์ต๋๋ค.
์์ง ํ๋ฉด์๋ ์๋ฌด๊ฒ๋ ์กด์ฌํ์ง ์๊ณ , ๊ทธ๋ํฝ ์นด๋ ๋ด๋ถ์ ๊ฐ์ผ๋ก๋ง ์กด์ฌํ๋ ๋ฐ์ดํฐ์ผ ๋ฟ์
๋๋ค.
(์๋ฐํ ๋งํ๋ฉด, ์์ง์ผ๋ก ๋์ด๊ฐ๋ ๊ฒ์ ๋ฒํ
์ค ๋ฐ์ดํฐ ๋ฟ์ด๋ค. โ๋ฉด๊น์ง ์์ฑ๋ ๋ชจ๋ธ๋งโ ๋ชจ์ต์ผ๋ก 3D ๋ชจ๋ธ๋ง ๋ฐ์ดํฐ๊ฐ ๋์ด๊ฐ๋ ๊ฒ์ด ์๋๋ค.)
๋ฒํ
์ค๋ ์ธ๋ฑ์ค ๋๋ฒ (Index number), ํฌ์ง์
(Position), ๋
ธ๋ฉ (Normal), ์ปฌ๋ฌ (Color) ๋ฑ์ ์ ๋ณด๋ฅผ ๊ฐ์ง๊ณ ์๋ค.
GPU๋ ๋ฒํ
์ค์ ์ ๋ณด๋ค์ ๊ฐ์ง๊ณ ๋ฒํ
์ค๋ค์ด ์ด์ด์ง ์ผ๊ฐํ ๋ฉด์ ์์ฑํ๊ฒ ๋ ๊ฒ์
๋๋ค.
์ค๋ธ์ ํธ์ ๊ธฐ๋ณธ์ ์ธ ํํ๊ฐ ๊ฐ์ถ์ด์ก๊ณ , ์ด ์ ๋ณด๋ค์ ๋ฒํ
์ค ์์ด๋๋ก ๋๊ธธ ์ค๋น๊ฐ ๋์์ต๋๋ค.
๐ซง ๋ฒํ ์ค ์์ด๋ (์ ์ ์์ด๋)
์ด ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ง๊ณ ๋ณธ๊ฒฉ์ ์ธ ์์ด๋ฉ ์์
์ด ๊ฐ๋๋๊ธฐ ์์ํฉ๋๋ค.
์ด ์์ด๋์์๋ ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ง๊ณ ์ขํ ๋ณํ์ ํ๊ฒ ๋ฉ๋๋ค.
์ด ๋๊ฐ ๊ทธ๋ํฝ ์ํฐ์คํธ๋ค์ด ์ฒ์์ผ๋ก ์์ด๋๋ฅผ ์ ์ดํ๋ ๋ฐ์ดํฐ์ ์ ๊ทผํ๊ฒ ๋๋ ๊ฒ
๊ฐ์ข
๋ฒํ
์ค ์ฐ์ฐ์ ์์ ๋กญ๊ฒ ์กฐ์ ํ ์ ์๊ฒ ๋ฉ๋๋ค.
2.1
๋ฒํ
์ค์ ์์น ๊ฐ์ ํ์ฌ ๋ก์ปฌ (Local) ์ขํ๊ณ ์ํ์
๋๋ค.
๋ก์ปฌ ์ขํ๊ณ๋ ๋ฌผ์ฒด๊ฐ ๊ฐ์ง๊ณ ์๋ โ์๊ธฐ์ค์ฌ์ ์ธโ ์์น ๊ฐ์ ์๋ฏธํฉ๋๋ค.
์ค๋ธ์ ํธ ๋ณ๋ก ๊ฐ์ง๊ณ ์๋ ๋ณธ์ธ์ ํผ๋ด์ด 0, 0, 0 ์์น ๊ฐ (์ค์ฌ๊ฐ)์ธ ์ํ์
๋๋ค.
์ฌ๊ธฐ์์๋ ๊ฒ์ ์์ ์กด์ฌํ ์ ์๋ ๋ค๋ฅธ ์ค๋ธ์ ํธ์ ์์น๋ ์ ํ ๊ณ ๋ ค๋์ง ์์์ต๋๋ค.
์ฆ ๋ชจ๋ ์ค๋ธ์ ํธ๋ค์ ์๊ธฐ๊ฐ ์ธ์์ ์ค์ฌ์ธ ์ํ์
๋๋ค.
ํ์ฌ ์นด๋ฉ๋ผ๊ฐ ์์ด์ ๊ทธ๋ด ์ผ์ ์๊ฒ ์ง๋ง, ๋ง์ฝ ๊ทธ๋ฆผ๋๋ก ๋ชจ๋ํฐ์ ์ฌ๋ฌ ์ค๋ธ์ ํธ๋ค์ด ์ถ๋ ฅ๋๋ค๋ฉด ๋ง์น ๊ทธ๋ฆผ์ฒ๋ผ ์๋ก ํ ๊ณณ์ ๋์ ์์ฑ๋์ด ์ํจ ๋ชจ์ต์ผ ๊ฒ์
๋๋ค. ์๋ํ๋ฉด, ๋ชจ๋ ์ค๋ธ์ ํธ๋ค์ ์์ ์ด ์ธ๊ณ์ ์ค์ฌ์ด๋ฉฐ, ์์ ์ด ์๋ ๊ณณ์ด ์์ (0, 0, 0)์ด๋ผ๊ณ ์๊ฐํ๊ธฐ ๋๋ฌธ์
๋๋ค.
์ ๋ํฐ์์๋ ์ด ๋ก์ปฌ (Local) ์ขํ๊ณ๋ฅผ ์ค๋ธ์ ํธ (Object) ์ขํ๊ณ๋ผ๊ณ ๋ ๋ถ๋ฆ
๋๋ค.
2.2
์ด์ ์ฌ๊ธฐ์ โ์๋ ๋ณํ ํ๋ ฌ(์๋ ์ขํ๊ณ)(๋งคํธ๋ฆญ์ค : Martrix)โ ์ ๊ณฑํด์ค์ผ๋ก์จ, ๋ก์ปฌ ์ขํ๊ณ๋ฅผ ์๋ ์ขํ๊ณ๋ก ๋ณํํด์ค๋๋ค.
์๋ ์ขํ๊ณ๋, ์ ๋ ์ขํ์ธ ์๋ ์ขํ๊ณ์ ์์น๋ก๋ถํฐ ๊ฐ ๋ฌผ์ฒด์ ์๋์ ์์น ๊ฐ์ ์๋ฏธํฉ๋๋ค.
์๋ ์ขํ๊ณ์์๋ ์ค์ ์ด ์๋์ ์ค์ฌ์ ์ด 0, 0, 0์ด๋ฉฐ, ๋ค๋ฅธ ๋ฌผ์ฒด๋ค์ ์ฌ๊ธฐ์ ์ผ๋ง๋ ๋จ์ด์ ธ ์๋์ง๋ก ํํ๋ฉ๋๋ค.
์ฌ๊ธฐ์ ๊ฐ ์ค๋ธ์ ํธ๋ค์ ๋ ์ด์ ์๊ธฐ๊ฐ ์ธ์์ ์ค์ฌ์ด ์๋๋ ๊ฒ์ ์๊ฒ ๋ฉ๋๋ค.
์ ๋ํฐ์์๋ ์ด ์๋ (World) ์ขํ๊ณ๋ฅผ `๋ชจ๋ธ(Model)โ์ด๋ผ๊ณ ๋ถ๋ฆ
๋๋ค.
๊ทธ๋ ์ง๋ง ์ฌ์ ํ ์นด๋ฉ๋ผ๊ฐ ์๊ธฐ ๋๋ฌธ์ ํ๋ฉด์ ์ถ๋ ฅํ ์ ์๋ ์ํ์
๋๋ค.
๋จธ๋ฆฟ์์์๋ง ์กด์ฌํ๋ค๊ณ ์๊ฐํ๋ฉด ๋ฉ๋๋ค.
2.3
์๋ ํ๋ ฌ๋ก ๋ณํ๋ ๋ฌผ์ฒด๋ค์ ์ด์ ์ด ์๋์ ์์น ๊ฐ์ ๊ฐ์ง๊ฒ ๋์์ต๋๋ค.
๊ทธ๋ฌ๋ ์ฌ๊ธฐ์ ์์ง ๊ณ ๋ ค๋์ง ์์ ๊ฒ์ด ์๋๋ฐ, ๋ฐ๋ก โ์นด๋ฉ๋ผโ ์
๋๋ค.
์๋์ ์กด์ฌํ๋ ๊ฒ์ ์๊ฒ ์ง๋ง, ์นด๋ฉ๋ผ๊ฐ ์์ผ๋ฉด ํ๋ฉด์ ๋ณด์ผ ์ ์์ต๋๋ค.
๊ทธ๋์ ์๋ ์ขํ๊ณ์ ๋ฒํ
์ค๋ค์ ์ด์ ๋ค์ โ์นด๋ฉ๋ผ ํ๋ ฌโ ๋ก ๊ณฑํด์ ์๋ ์ขํ๊ณ์์ ์ด๊ณ ์๋ ์ค๋ธ์ ํธ์ ๋ฒํ
์ค ์์น ๊ฐ๋ค์ด ์นด๋ฉ๋ผ์ ์ค์ฌ์ ์ผ๋ก๋ถํฐ์ ์๋์ ๊ฑฐ๋ฆฌ๋ก ๋ค์ ์ฐ์ฐ๋ฉ๋๋ค.
์ฆ, ์ด ์ธ๊ณ์์๋ ์นด๋ฉ๋ผ์ ์ค์ฌ์ ์ด 0, 0, 0์ด๋ฉฐ, ๋ค๋ฅธ ๋ฌผ์ฒด๋ค์ ์ฌ๊ธฐ์์ ์ผ๋ง๋ ์๋์ ์ผ๋ก ๋จ์ด์ ธ ์๋์ง๋ก ํํ๋ฉ๋๋ค.
๋๋์ด ๋ฌผ์ฒด๋ค์ ํ๋ฉด์ ๋ณผ ์ ์๊ฒ ๋์์ง๋ง, ์๊ทผ๊ฐ์ ๊ณ ๋ ค๋์ด ์์ง ์์ต๋๋ค.
์นด๋ฉ๋ผ ํ๋ ฌ์ โ๋ทฐ (View)โ๋ผ๊ณ ๋ถ๋ฆฌ๋ฉฐ, ์ค์๊ทธ๋ํฝ ํ๋ก์ ์
(Orthographic Projection) ์ด๋ผ ๋ถ๋ฆฌ๊ธฐ๋ ํฉ๋๋ค.
๊ทธ๋ฆฌ๊ณ ์ด ์์ ๋ถํฐ ๋ชจ๋ํฐ์ ์ถ๋ ฅํ๋ ๊ฒ์ด ๊ฐ๋ฅํ ์ํ๊ฐ ๋ฉ๋๋ค. ์นด๋ฉ๋ผ๊ฐ ์์ผ๋ ๋ง์
๋๋ค.
ใด(๋ฌผ๋ก ์ถ๋ ฅ์ ์ํด์๋ ํฝ์
์์ด๋๊น์ง ์์๊ฐ ์งํ๋์ด์ผ ํฉ๋๋ค.)
2.4
์ด๋ ๊ฒ ์นด๋ฉ๋ผ ํ๋ ฌ๋ก ์ ๋ ฌ๋ ๋ฒํ
์ค๋ค์, ๋ค์ ํ๋ฒ โํ๋ก์ ์
(Projection) ํ๋ ฌโ๋ก ๊ณฑํด์ง๋๋ค.
ใด (์ด ๊ฒฝ์ฐ๋ ํผ์คํํฐ๋ธ (Perspective) ํ๋ก์ ์
์ผ ๊ฒฝ์ฐ์ ์ผ์ด๋๋ ์์์ด๊ณ , ์ค์๊ทธ๋ํฝ ํ๋ก์ ์
๋ฑ์ ๊ฒฝ์ฐ์์๋ ์ผ์ด๋์ง ์๋ ์์์
๋๋ค. ํผ์คํํฐ๋ธ ํ๋ก์ ์
์ ์ฌ์ฉํ๋ ๊ฒ์ด ์ผ๋ฐ์ ์ด๋ฏ๋ก ์ด๋ ๊ฒ ์ค๋ช
ํ์์ต๋๋ค. )
โํ๋ก์ ์
ํ๋ ฌโ ์ด๋ ์๊ทผ๊ฐ์ ๋ถ์ฌํด์ฃผ๊ธฐ ์ํ ๋ฐฉ๋ฒ์ผ๋ก, ์นด๋ฉ๋ผ์์ ๋จผ ๊ณณ์ ์ขํ์ง ๊ฒ์ฒ๋ผ ๋ฒํ
์ค ์์น๋ฅผ ์กฐ์ ํด์ฃผ๋ ๊ฒ์
๋๋ค. ์ฌ์ค์์ผ๋ก ์นด๋ฉ๋ผ์์ ๋ฉ์๋ก ํฌ๊ธฐ๊ฐ ์์์ง๋ ๋ฌผ์ฒด๊ฐ ๋๊ฒ ์ง์.
๊ทธ๋ฆฌ๊ณ ๋๋์ด ์ฐ๋ฆฌ๊ฐ ํํ ๋ณผ ์ ์๋ ๋ทฐ์ ๋ชจ์ต์ด ๋์์ต๋๋ค.
2.FIN
์ฌ๊ธฐ๊น์ง์ ์์ ์ ๊ทธ๋๋ก ๋ชจ๋ํฐ์ ์ถ๋ ฅํ๋ค๋ฉด ์ฌ์ ํ ํ ์ค์ณ๋ ์์๋ ์๋, ๋ง ๊ทธ๋๋ก์ ํด๋ฆฌ๊ณค ๋ฉ์ด๋ฆฌ๊ฐ ์์ฑ๋ฉ๋๋ค. ํ๋ฉด์ ์ฐํ ์ ์๋ ์ค๋น๋ ๋์์ง๋ง, ์ด ์ค๋ธ์ ํธ๋ ์์ง ํฝ์ ์์ด๋๋ฅผ ๊ฑฐ์น์ง ์์๊ธฐ ๋๋ฌธ์ ๊ฒฐ๊ณผ์ ์ผ๋ก ์ฐ๋ฆฌ๊ฐ ๋ชจ๋ํฐ๋ก ๋ณผ ์๋ ์๋ ๋จ์ง 3D ๊ณต๊ฐ์์ ์กด์ฌํ๋ ์ค๋ธ์ ํธ์ผ ๋ฟ์ ๋๋ค. ใด [๋ฌผ๋ก , ์ด ๋ฒํ ์ค ์์ด๋ ๋จ๊ณ์์ ๋ผ์ดํธ (Light : ์กฐ๋ช )๋ฅผ ์ฐ์ฐํ๋ฉด โ๋ฒํ ์ค ๋ผ์ดํธโ ๋ผ๋ ๋งค์ฐ ๊ฐ๋ณ๊ณ ๋ถ์ ํํ ๋ผ์ดํธ๊ฐ ์ฐ์ฐ๋ ์ ์๊ธด ํฉ๋๋ค. ์ด ๊ธฐ๋ฒ ์ค ๊ฐ์ฅ ์ ๋ช ํ ๊ฒ์ ๊ณ ๋ผ์ฐ๋ ์์ด๋ฉ (Gouraud Shading) ์ด๋ผ๋ ๊ฒ์ด ์์ผ๋ฉฐ ๊ฒฐ๊ณผ๋ฌผ์ 44p ๊ทธ๋ฆผ๊ณผ ๊ฐ์ต๋๋ค.]
๐ซง ๋์คํธ๋ผ์ด์ ธ (Rasterizer)
ใด [์ต๊ทผ Direct-X์์๋ ์ฌ๊ธฐ์ ์ฌ๋ฌ ๊ฐ์ง์ ์์ด๋๊ฐ ์ถ๊ฐ๋ก ๋ค์ด๊ฐ๋๋ค. ๋ฒํ ์ค ์์ด๋์ ํฝ์ ์์ด๋์ ์ค๊ฐ์ ์์นํ๋ ์ด ์์ด๋๋ ํ ์์ด๋ (Hull Shader), ํ ์ ธ๋ ์ดํฐ (Tessellator), ๋๋ฉ์ธ ์์ด๋ (Domain Shader), ์ง์ค๋ฉํธ๋ฆฌ ์์ด๋ (Geometry Shader), ์ปดํจํธ ์์ด๋ (Compute Shader) ๋ฑ์ด ์์ต๋๋ค. ํ์ง๋ง ์ด ์ฑ ์ ์ํฐ์คํธ๋ฅผ ์ํ ์ฑ ์ด๋ฏ๋ก, ์ผ๋จ ๋ค์ด๋ ํธX 9 ์ ๋์ ๊ธฐ์ด์ ์ธ ์์ค์ผ๋ก ๋ค๋ฃจ์์ต๋๋ค.] ์ด์จ๋ ์ฐ๋ฆฌ๋ ์ด๋ ๊ฒ ์ขํ๊ณ๊ฐ ์กฐ์ ๋ ๋ฒํ ์ค๋ฅผ ์ด์ฉํด์ ํ๋ฉด์ ์ค๋ธ์ ํธ๋ฅผ ์ถ๋ ฅํ ์ค๋น๊ฐ ๋์์ต๋๋ค. ์ด๋ฒ์๋ ๋ชจ๋ํฐ์ ์ด ์ค๋ธ์ ํธ๋ฅผ ์ถ๋ ฅํด์ค ๊ฒ์ ๋๋ค. ๊ทธ๋์ ์ด ์ค๋ธ์ ํฐ๊ฐ ๋ชจ๋ํฐ์์ ํํ๋ ๋ ์ด๋ ํฝ์ ๋ก ํํ๋ ๊ฒ์ธ์ง๋ฅผ ๋ํ๋ด๋ ์ฅ์น๋ฅผ ๊ฑฐ์น๊ฒ ๋๋๋ฐ ์ด๊ฑธ์ ๋์คํฐ๋ผ์ด์ ธ(Rasterizer)๋ผ ๋ถ๋ฅด๋ฉฐ, 2D ํฝ์ ๋ก ํํ๋๋ ์ธ๊ณ๋ก ๋์ด์ค๊ฒ ๋ฉ๋๋ค.
์ด์ 3D ์ค๋ธ์ ํธ๋ ๋ชจ๋ํฐ์ ๋ณด์ด๋๋ก โํฝ์ (Pixel)โ์ด ๋์๊ณ ์ด ๊ณผ์ ์ โ๋์คํฐํโ๋ผ๊ณ ํฉ๋๋ค. 3D๋ก ์๋ โ์๊ณ ์โ์ ์ดฌ์ํ๋ ์๊ฐ ๊ทธ ์๊ณ ์์ 2D ์ด๋ฏธ์ง๊ฐ ๋๋ฏ์ด, 3D ์ด๋ฏธ์ง๊ฐ 2D ์ด๋ฏธ์ง๊ฐ ๋๋ ์๊ฐ์ ๋๋ค. ๋ชจ๋ํฐ์ ๋ณด์ด๋ ค๋ฉด 2D ์ด๋ฏธ์ง๋ก ๋ง๋ค์ด์ผ ํ๋ ๋ง์ ๋๋ค. ใด ( ์ด ๋ชจ๋ ์์ ์ด ๋งค ํ๋ ์๋ง๋ค ์ผ์ด๋๋ ๊ฒ์ ๋๋ค, )
์ด๋ ๊ฒ ์ํ์ ์ธ ๊ฐ์ ๊ณต๊ฐ ์์์ ์ ์ฒด๋ก ๋ ๋๋ ์ค๋ธ์ ํธ๋ ํฝ์ ์ด ๋๊ณ , ๋๋์ด ํฝ์ ์์ด๋์์ ์ด ํฝ์ ์ ์ ๊ทผํ ์ ์๊ฒ ๋์์ต๋๋ค.
๐ซง ํฝ์ ์์ด๋ (Pixel Shader) / ํ๋ ๊ทธ๋จผํธ ์์ด๋ (Fragment Shader)
์ด๋ ๊ฒ ๋ชจ๋ํฐ๊น์ง ๋์ด์จ 3D ๊ทธ๋ํฝ ๋ฐ์ดํฐ๋ ๋ณธ๊ฒฉ์ ์ผ๋ก ํ๋ฉด์ ํฝ์ ๋ก ์ฐํ๊ฒ ๋ฉ๋๋ค. ๋ฌผ๋ก ์์ง ํ ์ค์ณ๋ ์๊ณ ๋ผ์ดํ ๋ ์๋ ์ํ์ ๋๋ค. ใด (๋ฒํ ์ค ์์ดํฐ ๋จ๊ณ์์ ๋ผ์ดํ ์ ์ฐ์ฐํ์ง ์์๋ค๋ฉด ๋ง์ ๋๋ค.) ์ด์ ์ฌ๊ธฐ์์ ํฝ์ ์์ด๋๊ฐ ๊ฐ๋๋๋ฉด์ ์กฐ๋ช ๊ณผ ํ ์ค์ณ, ๊ทธ๋ฆผ์์ ๊ฐ์ข ํน์ํจ๊ณผ ๋ฑ์ ์ฐ์ฐํ๊ฒ ๋๋ ๊ฒ์ ๋๋ค.
๊ทธ๋ฌ๋ฏ๋ก ์ด ํ๋ก์ธ์ค๋ฅผ ์์ฐ ๊ฐ๋ตํ๊ฒ ์ ๋ฆฌํด ๋ณด๋ฉด ๋ค์๊ณผ ๊ฐ์ต๋๋ค. ๋ฌผ๋ก ์ค์ ๋ ๋๋ง ํ๋ก์ธ์ค๊ฐ ์ด๋ ๊ฒ ๊ฐ๋ตํ์ง ์์ต๋๋ค๋ง, ๊ทธ๋ํฝ ์ํฐ์คํธ ์ ์ฅ์์๋ ์ฐ์ ์ฌ๊ธฐ๊น์ง๋ง ์์๋์ด๋ ํฐ ๋์์ด ๋ ๊ฒ์ ๋๋ค. ์ ์ ๋ฐ์ดํฐ => [GPU (๋ฒํ ์ค ์ ฐ์ด๋ - ์ ์ ์ขํ ๋ณํ) = ์ ์ ์์น > (๋ ์คํฐ๋ผ์ด์ ) = ํฝ์ ์์น > (ํฝ์ ์ ฐ์ด๋ - ํฝ์ ์์๊ฒฐ์ )] => ํฝ์ ์์=
๋ค๋ ์์ ๋ ๋๋ง ํ์ดํ๋ผ์ธ ๊ณต๋ถ๊ฐ
๋ก์ปฌ ๋ทฐ - ์๋ ๋ทฐ - ์นด๋ฉ๋ผ ๋ทฐ ์ ํ ๊ณผ์ ?
๊ทธ๋ฆผ์ ๋ง๋ค๊ธฐ?
์ ฐ์ด๋์์ ์ ์ ์ด๋ ํฝ์ ๊ณ์ฐ. ex) ์ ์ ์ ฐ์ด๋์์ ๋ชจ๋ธ ์ด๋ป๊ฒ ๋ง๋ค๊ณ , ํ๋ฉด์ ๋์ฐ๊ธฐ ์ ์ ํฝ์ ๋ง๋ค ๊น์ด ๊ฐ์๊ฑฐ ์๊ฒจ์ ๋ ธ๋ฉ ๋งตํ ํ๋๊ฑฐ.
๋์ถฉ ์ด๋ฐ ๊ฒ๋ค ์ดํดํ๋ฉด ๋ ๋๋ง ํ์ดํ ๋ผ์ธ ์ผ์ถ ์ดํดํ๋ค๊ณ ์๊ฐํ๋ฉด ๋จ?
๋ค ์ขํ๊ณ๊ฐ ๊ณ์ ๋ณํ๋๋ฐ ๊ทธ ๋ช ์นญ๋ค์ด๋ ์ํํ๋ ์์ ๋ค ์๋ฉด๋ ๊บผ๊ฐ์์ ๋์ฐจ์ขํ๊ณ๋ ํผ์คํํฐ๋ธ ๋๋ฐ์ด๋์ ํ xyzw๊ฐ์ด ๋ญ์ง ์๋๊ฒ ์ค์ํ๋ฏ