DirectX12(5)
-
DirectX 12 ์ฅ์น ์ด๊ธฐํ ์ดํดํ๊ธฐ (5) - part 1
[ DirectX 12 ์ฅ์น ์ด๊ธฐํ ๋จ๊ณ ] 1 ๋จ๊ณ Device(๊ทธ๋ํฝ ๋๋ฐ์ด์ค) ์์ฑ. 2 ๋จ๊ณ CommandQueue์ CommandList ์์ฑ. 3 ๋จ๊ณ SwapChain ์์ฑ. 4 ๋จ๊ณ FenceObject ์์ฑ. 5 ๋จ๊ณ ๋ ๋ํ๊ฒ(RenderTarget)๊ณผ ๊น์ด/์คํ ์ค(Depth/Stencil) ๋ฒํผ ์์ฑ. ๋ ๋ํ๊ฒ ๋ฒํผ์ ๊น์ด/์คํ ์ค ๋ฒํผ๋ฅผ ๋ง๋ค๊ธฐ ์ ์ ๋จผ์ ๋ฆฌ์์ค(Resource) & ๋ฆฌ์์ค ๋ทฐ(Resource View) ๊ทธ๋ฆฌ๊ณ ์์ ์ ํ(Descriptor Heap)์ ๋ํ ์ดํด๊ฐ ํ์ํ๋ค. [ ๋ฆฌ์์ค (Resource) ] ๋ชจ๋ ๊ทธ๋ํฝ ๋๋ฐ์ด์ค(GPU)๊ฐ ๋ ๋๋ง์ ํ ๋๋ ํฌ๊ฒ ๋ ๊ฐ์ง ๊ตฌ๋ถ์ผ๋ก ๋๋๋ค. CPU : C++ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ํตํด ํ๋ก๊ทธ๋จ์ ์คํ์ํจ๋ค. GPU : Direct..
2020.07.25 -
DirectX 12 ์ฅ์น ์ด๊ธฐํ ์ดํดํ๊ธฐ (4)
[ DirectX 12 ์ฅ์น ์ด๊ธฐํ ๋จ๊ณ ] 1 ๋จ๊ณ Device(๊ทธ๋ํฝ ๋๋ฐ์ด์ค) ์์ฑ. 2 ๋จ๊ณ CommandQueue์ CommandList ์์ฑ. 3 ๋จ๊ณ SwapChain ์์ฑ. 4 ๋จ๊ณ FenceObject ์์ฑ. 5 ๋จ๊ณ ๋ ๋ํ๊ฒ(RenderTarget)๊ณผ ๊น์ด/์คํ ์ค(Depth/Stencil) ๋ฒํผ ์์ฑ. [ 4 ๋จ๊ณ FenceObject ์์ฑ ] CPU์ GPU๊ฐ ๋ณ๋ ฌ์ ์ผ๋ก ๋์ํ๊ธฐ ์ํด์๋ ๋๊ธฐํ(Synchronization)๊ฐ ํ์ํ๋ค. ๊ธฐ๋ณธ์ ์ผ๋ก CPU๋ ๋ฆฌ์์ค๋ฅผ ์์ฑ(Write)ํ๊ณ , GPU๋ ์ด ๋ฆฌ์์ค๋ฅผ ์ฌ์ฉ(Read)ํ๋ค. ๋ณ๋ ฌ ์ฒ๋ฆฌ์์ ๊ณต์ ๋๋ ๋ฆฌ์์ค์ ๋ํ ๋๊ธฐํ ์ฒ๋ฆฌ๊ฐ ํ์ํ๋ค. CPU๋ ๋ ๋๋ง์ ํ์ํ ๋ชจ๋ ๋ฐ์ดํฐ๋ฅผ ID3D12Resource COM๊ฐ์ฒด์ ์ ์ฅํ๋ค. (๋ฒ..
2020.07.16 -
DirectX 12 ์ฅ์น ์ด๊ธฐํ ์ดํดํ๊ธฐ (3)
[ DirectX 12 ์ฅ์น ์ด๊ธฐํ ๋จ๊ณ ] 1 ๋จ๊ณ Device(๊ทธ๋ํฝ ๋๋ฐ์ด์ค) ์์ฑ. 2 ๋จ๊ณ CommandQueue์ CommandList ์์ฑ. 3 ๋จ๊ณ SwapChain ์์ฑ. 4 ๋จ๊ณ FenceObject ์์ฑ. 5 ๋จ๊ณ ๋ ๋ํ๊ฒ(RenderTarget)๊ณผ ๊น์ด/์คํ ์ค(Depth/Stencil) ๋ฒํผ ์์ฑ. [ 3๋จ๊ณ SwapChain ์์ฑ ] [ Direct3D Double Buffering ] ์ค์ ์ฒด์ธ(SwapChain)์ ์์ฐจ์ ์ผ๋ก ์ฐ๊ฒฐ๋ ํ๋ ์ ๋ฒํผ๋ค์ ์งํฉ์ด๋ค. - ์ ๋ฉด ๋ฒํผ(FrontBuffer) : ๋์คํ๋ ์ด(๋ชจ๋ํฐ)์ ์ง์ ์ฐ๊ฒฐ๋๋ค. ๊ทธ๋ํฝ ์นด๋๋ง ์ ๊ทผ ๊ฐ๋ฅํ ์์ญ์ด๋ค. - ํ๋ฉด๋ฒํผ(BackBuffer) : ์์ฉ ํ๋๊ทธ๋จ์ด ๊ทธ๋ํฝ ์์ ์ ํ๋ ์์ญ์ด๋ค. ํ๋ฆฌ์ ํ ์ด์ (Prese..
2020.07.15 -
DirectX 12 ์ฅ์น ์ด๊ธฐํ ์ดํดํ๊ธฐ (2)
[ DirectX 12 ์ฅ์น ์ด๊ธฐํ ๋จ๊ณ ] 1 ๋จ๊ณ Device(๊ทธ๋ํฝ ๋๋ฐ์ด์ค) ์์ฑ. 2 ๋จ๊ณ CommandQueue์ CommandList ์์ฑ. 3 ๋จ๊ณ SwapChain ์์ฑ. 4 ๋จ๊ณ FenceObject ์์ฑ. 5 ๋จ๊ณ ๋ ๋ํ๊ฒ(RenderTarget)๊ณผ ๊น์ด/์คํ ์ค(Depth/Stencil) ๋ฒํผ ์์ฑ. [ 2 ๋จ๊ณ CommandQueue์ CommandList์์ฑ ] CommandQueue์ CommandList๋ DirectX 12 ๊ทธ๋ํฝ ๋ ๋๋ง์์ ํต์ฌ์ ์ธ ์ญํ ์ ํ๋ COM๊ฐ์ฒด์ด๋ค. CommandList๋ ๋ช ๋ น(Command)๋ค์ ๋ด๊ณ ์๋ ๋ฆฌ์คํธ์ด๋ค. (์ฃผ๋ก ๊ทธ๋ํฝ ๋ ๋๋ง ๋ช ๋ น๋ค์ ๋ด๋๋ค.) CommandQueue๋ ์ด๋ฆ ๊ทธ๋๋ก ํ ํํ์ ๋์์ ํ๋ COM๊ฐ์ฒด์ด๋ค. ์ฌ๋ฌ ๊ฐ์ ..
2020.07.14