UWP์ฉ WinUI 3.0์ ์๋ํ๋๋ฐ 'XML ๋ค์์คํ์ด์ค์ ์ ์ ์๋ ์ ํ 'SwapChainPanel'์ด ํ์๋จ'
SwapChainPanel๊ณผ CoreWindow(Xaml์ด ์๋ ์ฐฝ) ๋ชจ๋์ ๋ํด SwapChain์ ๋ง๋ค ์ ์์ด์ผ ํฉ๋๋ค.
์จ#.
@Austin-Lamb ์ด๊ฑฐ ๊ฐ์ ธ๊ฐ๋ ๋ ๊น์?
WinUI 3๋ฅผ ์ฌ์ฉํด ์ฃผ์ ์ ๊ฐ์ฌํฉ๋๋ค!
๋ถํํ๋ SwapChainPanel์ ์์ง ์ฌ์ฉํ ์ ์์ต๋๋ค. ์ฌ๊ธฐ(SwapChainPanel ํฌํจ)์์ ์ฌ์ ํ WinUI 3์ ๋ํด ์์ ์ค์ธ ๋๋ฝ๋ ๊ธฐ๋ฅ ๋ชฉ๋ก์ ์ฐพ์ ์ ์์ต๋๋ค.
https://docs.microsoft.com/uwp/toolkits/winui3/#controls - ๋ฐ ๊ธฐ๋ฅ
SwapChainPanel์ ๋ํ ์ ํํ ์ฌ์ฉ ๊ฐ๋ฅ ๋ ์ง๋ ์์ง ์์ง๋ง ๋ด๋ ์ ๋ฐฐ์ก๋๊ธฐ ์ ์ ๋ฏธ๋ฆฌ ๋ณด๊ธฐ ๋น๋์ ํ์๋๊ธฐ ์์ํด์ผ ํฉ๋๋ค.
๊ทธ ์ ์ ์ฑ์ ๋ง๋ค๊ณ ์ถ์ํด์ผ ํ๋ ๊ฒฝ์ฐ ๋ด๋ ์ WinUI 3๋ก ์ฝ๊ฒ ์ ๋ฐ์ดํธํ ์ ์๋ ์์คํ Xaml + WinUI 2๋ฅผ ๊ณ์ ์ฌ์ฉํ๋ ๊ฒ์ด ์ข์ต๋๋ค.
CoreWindow ๋ณด๊ธฐ์ ๊ฒฝ์ฐ CompositionDrawingSurface
๋ฅผ ์ฌ์ฉํ์ฌ ์ฌ๊ธฐ ์ ์ฌ๊ธฐ ์๋ Xaml์ด ์๊ฑฐ๋ ์๋ ์ปดํฌ์ง์
์๊ฐ์ ํธ๋ฆฌ์์ ์ค์ ์ฒด์ธ์ ๋ ๋๋งํ๊ธฐ ์ํ ICompositorInterop::CreateCompositionSurfaceForSwapChain
๊ฐ ํฌํจ๋ฉ๋๋ค.
WinUI์ .Net 5์ ๋ํด ๊ธฐ๋๊ฐ ํฝ๋๋ค. ๊ฒ์ ๊ฐ๋ฐ์ด ์งํ ์ค์ ์์ค๋์ง ์๊ธฐ๋ฅผ ๋ฐ๋๋๋ค. SharpDX๋ ํ ์ด๋ธ์ ์ ์ผํ DirectX ๋ํผ์์ ๊ธฐ์ตํ์ญ์์ค. ๋ฐ๋ผ์ ๋ชจ๋ DX interop ์์๋ ์ด ์์ ๊ณผ ํจ๊ป ์๋ํด์ผ ํฉ๋๋ค.