ํฌ์ŠคํŠธ

DirectX

DirectX

๐Ÿ’ซ Q


๐Ÿ’ซ _


๐Ÿซง _

https://www.youtube.com/live/NTvhVxSC_80?si=v6Buv00ygh2ETDdh&t=2997

  • ์ฝ˜์†”๋ชจ๋“œ ํ…ŒํŠธ๋ฆฌ์Šค or ๋ฑ€ (๋ญ๋“  ๊ฐ„์—) GDI๋กœ ํ—ฌ๋กœ ์›”๋“œ

-> Device Context์— ๋Œ€ํ•œ ํ•™์Šต Direct Draw๋กœ ํ™”๋ฉด์— ์  ์ฐ์–ด๋ณด๊ธฐ -> ํ•„์š”์—†๋Š”๋ฐ, ์™œ?

๋น„ํŠธ๋งต ์ œ์–ด๋ฅผ ๋ฐฐ์šธ ์ˆ˜ ์žˆ์Œ ํฌ์ธํ„ฐ์— ๋Šฅ์ˆ™ํ•ด์ง. ๊ทธ๋ž˜ํ”ฝ ํ•˜๋“œ์›จ์–ด ๋‹ค๋ฃจ๋Š” ๊ธฐ์ดˆ ์ด๋ฏธ์ง€ ๋ฐ์ดํ„ฐ (ํ…์Šค์ฒ˜) ์—์„œ์˜ Pitch์˜ ๊ฐœ๋…? Width * bytes in format๊ณผ Pitch ๋Š” ๋ญ๊ฐ€ ๋‹ค๋ฅธ๊ฐ€?

์ด๋ฏธ์ง€ ๋ฐ์ดํ„ฐ์—์„œ Padding์ด ๊ณ ๋ ค๋œ ํ•œ row์˜ ๊ธธ์ด ์™œ Padding์ด ์™œ ๊ณ ๋ ค๋˜์–ด์•ผ ํ•ด? -> ์„ฑ๋Šฅ - ๊ทธ ๋ฉ”๋ชจ๋ฆฌ๊ฐ€ ๊ทธ๋ž˜ํ”ฝ ํ•˜๋“œ์›จ์–ด์— 1:1 ๋งตํ•‘ ๋˜์–ด์•ผ ํ•˜๋Š” ์ฃผ์†Œ์ผ ์ˆ˜๋„ ์žˆ์œผ๋ฏ€๋กœโ€ฆ ๊ทธ๋ž˜ํ”ฝ์Šค๋„ ๊ฒฐ๊ตญ์€ ํ•˜๋“œ์›จ์–ด ๊ตฌ์กฐ๋ฅผ ์•Œ์•„์•ผํ•จ ํ”ฝ์…€๋„ Padding์ด ์žˆ์„์ˆ˜๋„

Direct Draw๋กœ ๊ฐ„๋‹จํ•œ ๊ฒŒ์ž„ ๋งŒ๋“ค์–ด๋ณด๊ธฐ ์ด๋ฏธ์ง€ ๋‹ค๋ฃจ๋Š” ๋ฒ• ๋งˆ์šฐ์Šค์™€ ํ‚ค๋ณด๋“œ ์ด๋ฒคํŠธ ์ฒ˜๋ฆฌ COM ๋‹ค๋ฃจ๋Š” ๋ฐฉ๋ฒ• = win32/ MS์˜ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์Šคํƒ€์ผ ์ดํ•ดํ•˜๊ธฐ ๋„คํŠธ์›Œํฌ ํ”„๋กœ๊ทธ๋ž˜๋ฐ -> windock + ๋ฉ€ํ‹ฐ์Šค๋ ˆ๋“œ + IOCP ๊ฒŒ์ž„ ํ”„๋กœ๊ทธ๋ž˜๋ฐ -> D3D11 -> D3D12 ๊ดœ์ฐฎ์€ dx11์ฑ… ํ•˜๋‚˜ ์‚ฌ์…”์„œ ์‚ผ๊ฐํ˜• ๊ทธ๋ฆฌ๊ธฐ ๊ทธ ๋‹ค์Œ์—๋Š” ๋ชจ๋ธ ํŒŒ์ผ๋“ค ๋กœ๋”ฉํ•ด์„œ ๋ณด์—ฌ์ฃผ๊ธฐ (FBX ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๊ฐ€ ์žˆ์œผ๋‹ˆ ๊ทธ๊ฑธ ์‚ฌ์šฉํ•ด๋„ ๋ ๋“ฏ) ๊ทธ๋ฆฌ๊ณ  ์…ฐ์ด๋” ์ด๊ฒƒ์ €๊ฒƒ ์ž‘์„ฑํ•ด๋ณด๊ธฐ (์–ด์ฐจํ”ผ dx11์˜ ์ผ๋ถ€์ผ๋“ฏ..) ์ด์ •๋„๊ฐ€ ๋˜๋ฉด ์ง€์›ํ•  ์ •๋„๋Š” ๋  ๊ฑฐ ๊ฐ™์•„์š”.

๋ง์”€ํ•˜์‹  ๊ฒƒ ์ฒ˜๋Ÿผ dx11 ๊ณต๋ถ€ํ•˜๊ณ  ์ƒ์šฉ์—”์ง„ ์œ ๋‹ˆํ‹ฐ, ์–ธ๋ฆฌ์–ผ๋„ ๊ณต๋ถ€ํ–ˆ์Šต๋‹ˆ๋‹ค ๊ทธ๋ž˜ํ”ฝ์Šค๋กœ ๊ฐ€๋ฉด ๊ทธ๋ž˜ํ”ฝ์Šค ํŒŒ์ดํ”„๋ผ์ธ์„ ์–ผ๋งˆ๋‚˜ ์ดํ•ดํ•˜๊ณ  ์žˆ๋Š”์ง€๊ฐ€ ์ค‘์š”ํ•  ๊ฒƒ ๊ฐ™๊ณ โ€ฆ ์›ํ•˜๋Š” ์…ฐ์ด๋”๋ฅผ ์ƒ์šฉ์—”์ง„์—์„œ ์ ์šฉ์‹œํ‚ฌ ์ค„ ์•Œ๋ฉด ๋  ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค

๊ทธ๋ž˜ํ”ฝ ์—”์ง€๋‹ˆ์–ด๋ผ๊ณ  ํ•˜๋ฉด TA๋กœ ๋ณด๋Š” ๊ฒƒ ๊ฐ™์€๋ฐ ๊ทผ๋ฐ ์ผ๋‹จ dx11๋งŒ ํ•ด๋„ ์•Œ์•„์•ผํ•  ์ข€ ์žˆ์œผ๋‹ˆ ์š”๊ฑฐ๋ฅผ ํ•˜์‹œ๊ณ  ๊ทธ๋ฆด๋•Œ ์ตœ์ ํ™”๊ธฐ๋ฒ•๋“ค๋„ ์ ์šฉ์‹œํ‚ค๋ฉด ์ง€์›ํ• ๋•Œ ์–ดํ•„์ด ๋  ๊ฒƒ ๊ฐ™์Šด๋ 

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