Notice
Recent Posts
Recent Comments
Link
๊ด€๋ฆฌ ๋ฉ”๋‰ด

๋ชฉ๋ก์ „์ฒด ๊ธ€ (1104)

KoreanFoodie's Study

DirectX 11 2D ๊ฒŒ์ž„ ํ”„๋กœ๊ทธ๋ž˜๋ฐ - 14. Texture ์„ค์ •๊ณผ ์ด๋ฏธ์ง€ ๋„์šฐ๊ธฐ

DirectX 11 2D ๊ฒŒ์ž„ ํ”„๋กœ๊ทธ๋ž˜๋ฐ - 14. Texture ์„ค์ •๊ณผ ์ด๋ฏธ์ง€ ๋„์šฐ๊ธฐ ํ™”๋ฉด์— ์ด๋ฏธ์ง€ ๋„์šฐ๊ธฐ - ID3D11ShaderResourceView๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํ…์Šค์ณ ์ž์› ์ƒ์„ฑ - ํ…์Šค์ณ ์ขŒํ‘œ๊ณ„๋Š” ์ขŒ์ธก ์ƒ๋‹จ์ด ์‹œ์ž‘์ ์ด๊ณ , 0~1 ๋ฒ”์œ„๋กœ ์ •๊ทœํ™”๋˜์–ด ์žˆ์Œ - HLSL์—์„œ๋Š” Texture2D ์ž๋ฃŒํ˜•์œผ๋กœ ํ…์Šค์ณ ์ž์›์„ ๋ฐ›๋Š”๋‹ค - ํ•ด๋‹น ํ”ฝ์…€์ด ๊ทธ๋ ค๋‚ผ ํ…์Šค์ณ ์ƒ‰์ƒ์„ ์ถ”์ถœํ•˜๊ธฐ ์œ„ํ•ด Sample ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค ํˆฌ๋ช…ํ•œ ํ”ฝ์…€ ์ œ๊ฑฐํ•˜๊ธฐ - clip() ํ•จ์ˆ˜๋ฅผ ์ด์šฉํ•ด ์ œ๊ฑฐํ•  ์ˆ˜ ์žˆ๋‹ค. - if ๋ฌธ๊ณผ discard ํ‚ค์›Œ๋“œ๋ฅผ ์ด์šฉํ•ด ์ œ๊ฑฐํ•  ์ˆ˜ ์žˆ๋‹ค. Execute.h ๋จผ์ € ํ—ค๋” ํŒŒ์ผ์—์„œ ID3D11ShaderResourceView๋ฅผ ๋งŒ๋“ค์–ด ์ค€๋‹ค. struct VertexTexture { D3DXVECTOR3 posit..

Game Dev/DirectX 2021. 11. 3. 22:06
์ €, ํŒŒํ”„๋ฆฌ์นด๋Š” ์‹œํ‚จ ์ ์ด ์—†๋Š”๋ฐ์š”?

์นœํ•ด์ง€๊ณ  ์‹ถ์€ ์‚ฌ๋žŒ์€ ์–ด๋–ค ์‚ฌ๋žŒ์ผ๊นŒ? ๋ชจ๋‚œ ์‚ฌ๋žŒ, ๋‘ฅ๊ธ€๋‘ฅ๊ธ€ํ•œ ์‚ฌ๋žŒ, ๋‚ ์นด๋กœ์šด ์‚ฌ๋žŒ, ํฌ๊ทผํ•œ ์‚ฌ๋žŒ. ์„ธ์ƒ์—๋Š” ์ฐธ ๋‹ค์–‘ํ•œ ์‚ฌ๋žŒ๋“ค์ด ์žˆ๋‹ค. ํ•˜์ง€๋งŒ '์นœํ•ด์ง€๊ณ  ์‹ถ์€ ์‚ฌ๋žŒ'์ด ๋˜๋Š” ๊ฒƒ์€ ์‰ฌ์šด ์ผ์ด ์•„๋‹ˆ๋‹ค. ์‹ค์ œ๋กœ ๋งŽ์€ ์‚ฌ๋žŒ๋“ค์—๊ฒŒ์„œ ์‚ฌ๋ž‘๋ฐ›๋Š” ์‚ฌ๋žŒ๋“ค์„ ์‚ดํŽด๋ณด๋ฉด, ๋Œ€๊ฐœ ์„ฑ๊ฒฉ์ด ์œ ํ•˜๊ณ  ๊ณ ์ง‘์ด ์„ธ์ง€ ์•Š๋‹ค๋Š” ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค. ํ˜น์€ ํŠน์ • ๋ถ€๋ถ„์—์„œ ๋งค๋ ฅ์ด ๋„˜์ณ ํ๋ฅด๊ฑฐ๋‚˜. ์Œ์‹๋„ ๋งˆ์ฐฌ๊ฐ€์ง€๋‹ค. ์‚ฌ๋žŒ๋„ ์Œ์‹๋„ ์ž๊ธฐ ์ฃผ์žฅ์ด ๋„ˆ๋ฌด ๊ฐ•ํ•œ ๊ฒƒ์€ ์‚ฌ๋ž‘๋ฐ›๊ธฐ ํž˜๋“  ๋ฒ•. ๊ทธ๋Ÿฐ ์˜๋ฏธ์—์„œ ๋‚˜๋Š” ํŒŒํ”„๋ฆฌ์นด๊ฐ€ ์‹ซ๋‹ค. ๋ฌผ๋ก  ํŒŒํ”„๋ฆฌ์นด๋ฅผ ์ข‹์•„ํ•˜๋Š” ๋ถ„๋“ค๋„ ๋งŽ์ด ๊ณ„์‹œ๊ฒ ์ง€๋งŒ, ๋‚˜๋Š” ๋Œ€๋ถ€๋ถ„์˜ ์š”๋ฆฌ์—์„œ ํŒŒํ”„๋ฆฌ์นด์˜ ํ–ฅ์ด ๋‹ค๋ฅธ ์žฌ๋ฃŒ๋“ค๊ณผ์˜ ์กฐํ™”๋ฅผ ์ด๋ฃจ์ง€ ๋ชปํ•œ๋‹ค๊ณ  ์ƒ๊ฐํ•œ๋‹ค. ๋‹ค๋งŒ ๋ช‡๊ฐ€์ง€์˜ ์˜ˆ์™ธ๊ฐ€ ์žˆ๋Š”๋ฐ, ์ค‘์‹ ์š”๋ฆฌ์—์„œ ์“ฐ์ด๋Š” ํŒŒํ”„๋ฆฌ์นด๊ฐ€ ๋ฐ”๋กœ ๊ทธ ์ค‘ ํ•˜๋‚˜์ด๋‹ค. ํŒ”๋ณด์ฑ„๋‚˜ ์ค‘..

์„ฑ๊ณตํ•œ ์‚ฌ๋žŒ๋“ค์ด ์ ˆ๋Œ€ ์•Œ๋ ค์ฃผ์ง€ ์•Š๋Š” ๋ถ€์˜ ์ถ”์›”์ฐจ์„ ์„ ํƒ€๋Š” ๋ฐฉ๋ฒ• (์ž์ฒญ ์ถ”์ฒœ๋„์„œ)

๋ถ€์ž๊ฐ€ ๋  ์ˆ˜ ์žˆ๋Š” '์ง„์งœ ๋ฐฉ๋ฒ•'์— ๋Œ€ํ•ด ์•Œ๋ ค๋“œ๋ฆฝ๋‹ˆ๋‹ค : ๋ถ€์˜ ์ถ”์›”์ฐจ์„  ์‚ฌ์‹ค ์ด์ฑ…์€ ์ •๋ง ์ •๋ง ์œ ๋ช…ํ•œ ์ฑ…์œผ๋กœ, ๋‚˜๋Š” ์ด ์ฑ…์„ ๊ตฐ๋Œ€์—์„œ ์ฒ˜์Œ ์ ‘ํ•˜๊ฒŒ ๋˜์—ˆ๋‹ค. ์‚ฌ์‹ค ๊ทธ๋‹น์‹œ์—๋Š” ํ‘œ์ง€๋ฅผ ๋ณด๊ณ  '๋ญ”๊ฐ€ ์‚ฌ์งœ๊ฐ™์€ ์ด์•ผ๊ธฐ๋ฅผ ํ•˜๋Š” ๊ฑธ๊นŒ?' '์—ฌํƒ€ ์ž๊ธฐ๊ณ„๋ฐœ์„œ์ฒ˜๋Ÿผ ๋ป”ํ•œ ์ด์•ผ๊ธฐ๋ฅผ ์จ๋†“์€๊ฑฐ ์•„๋‹ˆ์•ผ?' ๊ฐ™์€ ์ง€๋ ˆ์ง์ž‘๊ณผ ํ•จ๊ป˜ ์ฑ…์„ ํŽผ์ณ๋ณด์ง€๋„ ์•Š์•˜์—ˆ๋‹ค. ํ•˜์ง€๋งŒ ์‹œ๊ฐ„์ด ์ง€๋‚˜ ์ด ์ด์ฑ…์„ ์ฝ๊ณ  ๋‚œ ํ›„๋กœ, ๋‚ด ์ธ์ƒ์€ ์ƒ๋‹นํžˆ ๋งŽ์ด ๋ฐ”๋€Œ์—ˆ๋‹ค.(์ˆ˜์ • : ๋ฐ”๋€” ๊ฒƒ์ด๋ผ๊ณ  ์ƒ๊ฐํ–ˆ์ง€๋งŒ, ํ˜„ ์‹œ์ ์—์„œ ๋ณด๋ฉด ํฌ๊ฒŒ ๋‹ฌ๋ผ์ง€์ง€ ์•Š์•˜๋‹ค) ๋ถ€์˜ ์ถ”์›”์ฐจ์„ ์€ ๋ถ€์ž๊ฐ€ ๋˜๊ธธ ์›ํ•˜์ง€๋งŒ ๋งˆ์Œ๊ฐ€์ง๊ณผ ๋ฐฉ๋ฒ•๋ก ์— ๋Œ€ํ•ด ์–ด๋ ค์›€์„ ๊ฒช๋Š” ์‚ฌ๋žŒ๋“ค์ด ๊ผญ ์ฝ์–ด๋ดค์œผ๋ฉด ํ•˜๋Š” ์ฑ…์ด๋ผ๊ณ  ์ƒ๊ฐํ•œ๋‹ค. ์ตœ๊ทผ์—๋Š” ์ž์ฒญ ์ถ”์ฒœ๋„์„œ๋กœ๋„ ์•Œ๋ ค์ ธ ์žˆ๋Š” ๋“ฏํ•˜๋‹ค. ์ž์„ธํ•œ ๋‚ด์šฉ์„ ์ด์•ผ๊ธฐํ•˜๊ธฐ ์ „์—, ๋งŽ์€ ์‚ฌ๋žŒ๋“ค์ด ํ‘œ์ง€๋งŒ ..

์žฌํ…Œํฌ 2021. 10. 29. 23:00
DirectX 11 2D ๊ฒŒ์ž„ ํ”„๋กœ๊ทธ๋ž˜๋ฐ - 10. ํ–‰๋ ฌ์„ ์ด์šฉํ•œ ๊ณต๊ฐ„ ์ƒ์„ฑ(view, projection)

DirectX 11 2D ๊ฒŒ์ž„ ํ”„๋กœ๊ทธ๋ž˜๋ฐ - 10. ํ–‰๋ ฌ์„ ์ด์šฉํ•œ ๊ณต๊ฐ„ ์ƒ์„ฑ(view, projection) D3DXMATRIX๋ฅผ ํ™œ์šฉํ•œ ๊ณต๊ฐ„ ์ƒ์„ฑ - D3DXMATRIX๋Š” ์ด 16๊ฐœ์˜ floatํ˜• ๋ฐ์ดํ„ฐ๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ๋‹ค. (์ •์˜ ํ™•์ธ) - ํ–‰๋ ฌ์€ ํ•ญ์ƒ ๋‹จ์œ„ํ–‰๋ ฌ๋กœ ์ดˆ๊ธฐํ™”ํ•ด์•ผ ํ•œ๋‹ค. (D3DXIdentityMatrix ํ•จ์ˆ˜) - ๊ณต๊ฐ„์ด ์ปค์ง€๊ฑฐ๋‚˜ ์ด๋™ํ•˜๋ฉด ๋‚ด๋ถ€์˜ ๋ฐ์ดํ„ฐ๋„ ๋™์ผํ•˜๊ฒŒ ๋ณ€ํ˜•๋œ๋‹ค. (์œ„์น˜๋‚˜ ๋ฒกํ„ฐ ๋ฐ์ดํ„ฐ ํฌ๊ธฐ) Projection ์•Œ์•„๋ณด๊ธฐ - ์›๊ทผํˆฌ์˜์€ ์ ˆ๋‘์ฒด ๋ชจ์–‘์˜ ์‹œ์•ผ ๊ณต๊ฐ„์„ ๊ฐ€์ง„๋‹ค - ์ง๊ตํˆฌ์˜์€ ์ง์œก๋ฉด์ฒด ๋ชจ์–‘์˜ ์‹œ์•ผ ๊ณต๊ฐ„์„ ๊ฐ€์ง„๋‹ค ๋‹จ์ถ•ํ‚ค - ์˜์—ญ ์ง€์ • ํ›„ Ctrl + H ๋‹จ์ถ•ํ‚ค๋ฅผ ๋ˆ„๋ฅด๋ฉด ํ•ด๋‹น ๋ฒ”์œ„์˜ ํŠน์ • ๋‹จ์–ด๋“ค์„ ๋ฐ”๊ฟ€ ์ˆ˜ ์žˆ๋‹ค. (Alt + A ๋ˆ„๋ฅด๋ฉด ๋ชจ๋‘ ๋ฐ”๋€œ) ์ขŒํ‘œ๊ณ„ - OpenGL : RH..

Game Dev/DirectX 2021. 10. 28. 07:51
DirectX 11 2D ๊ฒŒ์ž„ ํ”„๋กœ๊ทธ๋ž˜๋ฐ - 8. Pixel Shader Stage & ๋„ํ˜• ๊ทธ๋ฆฌ๊ธฐ

DirectX 11 2D ๊ฒŒ์ž„ ํ”„๋กœ๊ทธ๋ž˜๋ฐ - 8. Pixel Shader Stage & ๋„ํ˜• ๊ทธ๋ฆฌ๊ธฐ Rasterizer : 3D ๋ฐ์ดํ„ฐ๋ฅผ 2D ๋ฐ์ดํ„ฐ๋กœ ๋ฐ”๊ฟ”์ฃผ๋Š” ๊ฒƒ. VS ๋‹จ๊ณ„์—์„œ ์ •๊ทœํ™”ํ•œ ๊ณต๊ฐ„์„ ๋‹ค์‹œ ๋ณด์—ฌ์ค„ ์˜์—ญ๋งŒํผ ๋‹ค์‹œ ๋Š˜๋ ค์ค€๋‹ค. ๋˜ํ•œ Pixel Shader ๋‹จ๊ณ„๋กœ ๋„˜์–ด๊ฐˆ ํ”ฝ์…€๋“ค์„ ์ง€์ •ํ•ด์ค€๋‹ค. PixelShader ์ƒ์„ฑ๊ณผ ์—ฐ๊ฒฐ : SV_Target ์‹œ๋ฉ˜ํ‹ฑ์„ ์‚ฌ์šฉํ•˜์—ฌ ํ˜„์žฌ ์„ธํŒ…๋œ ๋ฉ”์ธ๋ Œ๋” ํƒ€๊นƒ์„ ์‚ฌ์šฉํ•˜๋ผ๊ณ  ์•Œ๋ ค์ฃผ์–ด์•ผ ํ•œ๋‹ค. ํ™”๋ฉด์— ํ”ฝ์…€ ๋‹จ์œ„๋กœ ์ƒ์ƒ์„ ์ถœ๋ ฅํ•˜๋Š”๋ฐ, Pixel Shader๋Š” Rasterizer๊ฐ€ ์ง€์ •ํ•œ ํ”ฝ์…€ ๊ฐœ์ˆ˜๋งŒํผ ํ˜ธ์ถœ๋œ๋‹ค. ์‚ฌ๊ฐํ˜• ๋งŒ๋“ค๊ธฐ : ์‚ฌ๊ฐํ˜•์„ ๋งŒ๋“ค๊ธฐ ์œ„ํ•ด์„œ๋Š” ์ •์  6๊ฐœ๊ฐ€ ํ•„์š”ํ•˜๋‹ค. ์™œ๋ƒํ•˜๋ฉด ์‚ผ๊ฐํ˜• 2๊ฐœ๋ฅผ ๋ถ™์—ฌ ๋งŒ๋“œ๋Š” ํ˜•ํƒœ์ด๊ธฐ ๋•Œ๋ฌธ! ์—ฌ๋Ÿฌ ์ค„ ๋™์‹œ์— ํŽธ์ง‘ํ•˜๊ธฐ : Shift + Al..

Game Dev/DirectX 2021. 10. 27. 21:58
DirectX 11 2D ๊ฒŒ์ž„ ํ”„๋กœ๊ทธ๋ž˜๋ฐ - 7. Vertex Shader Stage

DirectX 11 2D ๊ฒŒ์ž„ ํ”„๋กœ๊ทธ๋ž˜๋ฐ - 7. Vertex Shader Stage ์ด๋ฒˆ ๊ธ€์—์„œ๋Š” hlsl์„ ์ด์šฉํ•ด ๊ฐ„๋‹จํ•œ Vertex Shaer๋ฅผ ๋งŒ๋“œ๋Š” ์‹ค์Šต์„ ํ•ด ๋ณด๋„๋ก ํ•˜๊ฒ ๋‹ค. HLSL์€ High Level Shader Language๋กœ, ์˜ˆ์ „์— ์–ด์…ˆ๋ธ”๋ฆฌ์–ด๋กœ ๋งŒ๋“ค๋˜ ๊ฒƒ์„ ๋” ์‚ฌ๋žŒ์ด ๋ณด๊ธฐ ์‰ฝ๊ฒŒ ํ‘œํ˜„ํ•œ ์–ธ์–ด๋ผ๊ณ  ๋ณด๋ฉด ๋œ๋‹ค. ํ”„๋กœ์ ํŠธ์— HLSlํƒญ์œผ๋กœ ์ƒ์„ฑํ•œ ํ›„, ํ”„๋กœ์ ํŠธ์—์„œ ์ œ์™ธ์‹œ์ผœ์„œ ์‚ฌ์šฉํ•œ๋‹ค. (์ปดํŒŒ์ผ์— ์šฉ์ด) ์•Œ์•„๋‘์–ด์•ผ ํ•  ๊ฐœ๋… : 1. Semantic : Semantic์€ ๋ฐ์ดํ„ฐ์˜ ์ถœ์ฒ˜์™€ ์—ญํ• ์— ๋Œ€ํ•œ ๋ถ„๋ช…ํ•œ ์˜๋ฏธ๋ฅผ ๋ถ€์—ฌํ•˜๊ธฐ ์œ„ํ•œ ํ‚ค์›Œ๋“œ์ด๋‹ค. Color.hlsl struct VertexInput { // float4๋Š” vector4์™€ ๊ฐ™์Œ // Semantic : ๋ฐ์ดํ„ฐ์˜ ์ถœ์ฒ˜์™€ ์—ญํ• ์— ๋Œ€ํ•œ ๋ถ„๋ช…ํ•œ..

Game Dev/DirectX 2021. 10. 25. 21:34