์ธํ”„๋Ÿฐ ์˜๋ฌธ ๋ธŒ๋žœ๋“œ ๋กœ๊ณ 
์ธํ”„๋Ÿฐ ์˜๋ฌธ ๋ธŒ๋žœ๋“œ ๋กœ๊ณ 

Directx11์™€ imgui๋ฅผ ์ด์šฉํ•œ 2D ๊ฒŒ์ž„ ์—”์ง„ ๋งŒ๋“ค๊ธฐ (PART1)

C++์„ ์ด์šฉํ•ด ๋งŒ๋“  ๊ฒŒ์ž„์—”์ง„์— Directx11 ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์ด์šฉํ•˜์—ฌ ๊ฒŒ์ž„์—”์ง„์„ ๋ฆฌํŒฉํ† ๋ง ํ•˜๋Š” ๊ณผ์ •์ž…๋‹ˆ๋‹ค. ๋‚ด๋ถ€์  ์ฝ”๋“œ๋ฅผ ์œ ์ถ”ํ•˜๋Š” ๋ฐฉ์‹์œผ๋กœ ์ œ์ž‘๋˜์—ˆ์œผ๋ฉฐ ์ด๋ฅผ ํ†ตํ•ด ์œ ๋‹ˆํ‹ฐ์—”์ง„์˜ ๋‚ด๋ถ€ ์›๋ฆฌ์— ๋Œ€ํ•ด์„œ ์ƒ๊ฐํ•ด ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Thumbnail

์ค‘๊ธ‰์ž๋ฅผ ์œ„ํ•ด ์ค€๋น„ํ•œ
[DirectX, game-engine] ๊ฐ•์˜์ž…๋‹ˆ๋‹ค.

์ด๋Ÿฐ ๊ฑธ ๋ฐฐ์šธ ์ˆ˜ ์žˆ์–ด์š”

  • c++

  • ์œ ๋‹ˆํ‹ฐ์—”์ง„

  • ์ž๋ฃŒ๊ตฌ์กฐ

  • ์•Œ๊ณ ๋ฆฌ์ฆ˜

  • ๊ทธ๋ž˜ํ”ฝ์Šค

  • Directx11

  • Imgui

"๊ฒŒ์ž„ ์—”์ง„์„ ๋งŒ๋“ค๊ธฐ ์œ„ํ•œ ์„ค๊ณ„ํ•˜๋Š” ๊ณผ์ •์„ ๋ณด์—ฌ๋“œ๋ฆฝ๋‹ˆ๋‹ค.โ€

์ง์ ‘ DirectX๋ฅผ ์ด์šฉํ•ด ๊ฒŒ์ž„ ์—”์ง„์„ ์ œ์ž‘ํ•ด๋ณด๋ฉด์„œ ์—”์ง„์˜ ๋‚ด๋ถ€ ๋ Œ๋”๋ง ์ž‘๋™ ์›๋ฆฌ์™€ ๋ Œ๋”๋ง ํŒŒ์ดํ”„๋ผ์ธ์— ๋Œ€ํ•ด์„œ ์ดํ•ดํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

์ด๊ฒƒ์„ ์•Œ๊ณ  ์œ ๋‹ˆํ‹ฐ(Unity) ์—”์ง„์„ ํ™œ์šฉํ•  ๋•Œ์™€ ๋ชจ๋ฅด๊ณ  ํ™œ์šฉํ•  ๋•Œ ๋ฌธ์ œ์ ์ด ์ƒ๊ฒผ์„ ๋•Œ ๋””๋ฒ„๊น… ๋Šฅ๋ ฅ์ด ๋‹ฌ๋ผ์ง‘๋‹ˆ๋‹ค.

๋ชจ๋“  ๊ฐ•์˜๋Š” ์ˆ˜์—…๋…ธํŠธ๊ฐ€ ์ œ๊ณต๋ฉ๋‹ˆ๋‹ค. ๊ฐ•์˜๋ฅผ ๋ฐ˜๋ณต์ ์œผ๋กœ ๋ณด๋Š” ๊ฑด ์–ด๋ ค์šด ์ทจ์—…์‹œ๊ธฐ์— ์—„์ฒญ๋‚œ ์‹œ๊ฐ„์  ์†ํ•ด์ž…๋‹ˆ๋‹ค. ๊ฐ•์˜๋Š” ์ฒ˜์Œ ํ•œ๋ฒˆ ์ง‘์ค‘ํ•ด์„œ ๋“ค์œผ์‹œ๊ณ  ๋ณต์Šต์€ ์ฑ…(๋ฌธ์„œ)๋กœ ์ง„ํ–‰๋˜์–ด์•ผ ๋น ๋ฅด๊ฒŒ ํ•™์Šตํ•˜์…”์„œ ๋‚ด๊ฒƒ์œผ๋กœ ๋งŒ๋“ค์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

#DirectX #C++ #Unity #game-programming

์ด๋Ÿฐ ๋‚ด์šฉ์„ ๋ฐฐ์›Œ์š”

โ€œ์ ˆ๋Œ€ ๋งŽ์€ ๊ฒƒ์„ ํ•œ๋ฒˆ์— ๋ฐฐ์šฐ์ง€ ์•Š์Šต๋‹ˆ๋‹ค.โ€

Directx11 ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์ž‘์€ ๋‹จ์œ„๋กœ ๋‚˜๋ˆ„์–ด์„œ ๊ตฌ์„ฑํ•˜๋Š” ์ฝ”๋”ฉ์„ ๋ณด์—ฌ์คŒ์œผ๋กœ์จ ์ดˆ๋ณด์ž๋„ ์‰ฝ๊ณ  ์ฒœ์ฒœํžˆ ์ดํ•ด ํ•  ์ˆ˜ ์žˆ๊ฒŒ ๊ฐ•์˜๋ฅผ ๊ตฌ์„ฑํ–ˆ์Šต๋‹ˆ๋‹ค.

์ด๋Š” ๊ณต๋ถ€ ์‹œ๊ฐ„์€ ๋งŽ์ด ์†Œ๋ชจ๋˜์ง€๋งŒ ์ถ”ํ›„ ๋ฌธ์ œ ํ•ด๊ฒฐ ์ ‘๊ทผ ๋ฐฉ๋ฒ•์— ์žˆ์–ด์„œ ๋งŽ์€ ์ด์ ์„ ๊ฐ€์ ธ๋‹ค ์ค๋‹ˆ๋‹ค.

Material ์˜ˆ์‹œ

์ง€์‹๊ณผ ํ›ˆ๋ จ(๊ธฐ์ˆ )

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

์ตœ์ข… ์ž‘์—…๋ฌผ ์˜ˆ์‹œ

๋Š์ž„ ์—†๋Š” ํŠธ๋ ˆ์ด๋‹์œผ๋กœ ๊ฒŒ์ž„ ์ œ์ž‘๊ณผ ์—ฌ๋Ÿฌ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๋ฌธ์ œ๋“ค์„ ๊ฒฝํ—˜ํ•˜๊ณ  ์ด์ „์— ๋ฐฐ์›Œ์™”๋˜ ์ง€์‹์„ ์—ฐ๊ฒฐ ์‹œ์ผœ ๋ฌธ์ œ ํ•ด๊ฒฐ ๋Šฅ๋ ฅ์„ ๊ธธ๋Ÿฌ๋ƒ…๋‹ˆ๋‹ค.

๋ณธ ๊ฐ•์˜๋Š” ๊พธ์ค€ํžˆ ์—…๋ฐ์ดํŠธํ•˜๊ณ  ์žˆ์œผ๋ฉฐ ์•ž์„  ์ดฌ์˜๋œ ๊ฐ•์˜๋ถ€ํ„ฐ ์ˆœ์ฐจ์ ์œผ๋กœ ์—…๋กœ๋“œ ์˜ˆ์ •์ž…๋‹ˆ๋‹ค.

์ˆ˜๊ฐ• ์ „ ์ฐธ๊ณ  ์‚ฌํ•ญ

์‹ค์Šต ํ™˜๊ฒฝ

  • ์šด์˜ ์ฒด์ œ ๋ฐ ๋ฒ„์ „(OS): Windows

  • ์‚ฌ์šฉ ๋„๊ตฌ: Visual studio2022, DirectX11, vcpkg

  • ๋ณธ ๊ฐ•์˜๋Š” ์„ ์ˆ˜๊ฐ•์˜ C++์„ ์ด์šฉํ•œ ์ž์ฒด์—”์ง„ ์ œ์ž‘(์œ ๋‹ˆํ‹ฐ ํด๋ก  ์ฝ”๋”ฉ)๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.(https://inf.run/u5veq)

ํ•™์Šต ์ž๋ฃŒ ๋ฐ ์งˆ๋ฌธ ๋””์Šค์ฝ”๋“œ

๊ฐ•์˜ ํƒ€๊ฒŸ

  • c++ ๋ฌธ๋ฒ•์„ ์ˆ™์ง€ํ•˜๊ณ  ํ™œ์šฉ ๊ฐ€๋Šฅํ•œ ์ž

  • Unity ์—”์ง„์˜ ๊ตฌ๋™์›๋ฆฌ๋ฅผ ์ง์ ‘ ๊ตฌํ˜„ํ•ด๋ณด๊ณ  ๊ณต๋ถ€ํ•˜๊ณ  ์‹ถ์€ ์ž

  • ๊ฐ์ฒด์ง€ํ–ฅ์„ ํ™œ์šฉํ•œ ์†Œ์Šค์ฝ”๋“œ ์ž‘์„ฑ์ด ์ž์œ ๋กœ์šด ์ž

์ด๋Ÿฐ ๋ถ„๋“ค๊ป˜
์ถ”์ฒœ๋“œ๋ ค์š”!

ํ•™์Šต ๋Œ€์ƒ์€
๋ˆ„๊ตฌ์ผ๊นŒ์š”?

  • ํด๋ž˜์Šค๋ฅผ ์ž์œ ์ž์žฌ๋กœ ํ™œ์šฉ์ด ๊ฐ€๋Šฅํ•œ ํ”„๋กœ๊ทธ๋ž˜๋จธ

  • c++ ์–ธ์–ด ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•˜์‹  ๋ถ„

  • ์ž๋ฃŒ๊ตฌ์กฐ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•˜์‹  ๋ถ„

์„ ์ˆ˜ ์ง€์‹,
ํ•„์š”ํ• ๊นŒ์š”?

  • C++

  • ๊ณ ๋“ฑํ•™๊ต ์ˆ˜ํ•™

์•ˆ๋…•ํ•˜์„ธ์š”
์–Œ์–Œ์ฝ”๋”ฉ์ž…๋‹ˆ๋‹ค.

9,178

๋ช…

์ˆ˜๊ฐ•์ƒ

49

๊ฐœ

์ˆ˜๊ฐ•ํ‰

8

๊ฐœ

๋‹ต๋ณ€

5.0

์ 

๊ฐ•์˜ ํ‰์ 

7

๊ฐœ

๊ฐ•์˜

๊ฒฝ๋ ฅ

  • Neople (์ปจํ…์ธ  ๊ฐœ๋ฐœํŒ€)

  • Dave studio (FD ํ”„๋กœ์ ํŠธ ๋ฆฌ๋“œ ํ”„๋กœ๊ทธ๋ž˜๋จธ)

  • ์ธ๋””๊ฒŒ์ž„ ํŒจ์ŠคํŠธํŠธ๋ž™ ์ˆ˜์ƒ

  • ์–ด์†ŒํŠธ๋ฝ๊ฒŒ์ž„์•„์นด๋ฐ๋ฏธ ๋ Œ๋”๋ง ํ”„๋ ˆ์ž„์›Œํฌ ๊ฐœ๋ฐœ ๋ฐ ๊ต์œก

  • OZ ์ธํ„ฐ๋ฏธ๋””์–ด(์„œ๋ฒ„, ํด๋ผ ๊ฐœ๋ฐœ์ž)

  • ํฌ๋ž˜ํ”„ํ†ค(KRAFTON) - inzoi studio

 

๊ด€์‹ฌ ๋ถ„์•ผ

  • ์ปดํ“จํ„ฐ ๊ทธ๋ž˜ํ”ฝ์Šค ํ”„๋กœ๊ทธ๋ž˜๋ฐ

  • ๋„คํŠธ์›Œํฌ ํ”„๋กœ๊ทธ๋ž˜๋ฐ

  • ์ธ๋””๊ฒŒ์ž„ ๊ฐœ๋ฐœ

  • ์œ ๋‹ˆํ‹ฐ/์–ธ๋ฆฌ์–ผ

 

์†Œ๊ฐœ

์—ฌ๋Ÿฌ๊ฐ€์ง€ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๊ฐ•์˜๋ฅผ ๋“ฃ๊ณ  ๋”ฐ๋ผ์„œ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•˜์—ฌ๋„ ๋‚˜์˜ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์‹ค๋ ฅ์€ ๋Š˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

๋‹จ์ˆœ ์•”๊ธฐ์™€ ๋ฒ ๋ผ๋Š” ์‹ค์Šต์„ ์ตœ์†Œํ™” ํ•˜๊ณ  โ€˜์Šค์Šค๋กœ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ํ•  ์ˆ˜ ์žˆ๋Š” ๋Šฅ๋ ฅโ€™์— ์ง‘์ค‘ํ•ฉ๋‹ˆ๋‹ค.

ํ”„๋กœ๊ทธ๋ž˜๋ฐ์€ ๊ธฐ์ˆ ์ง๊ตฐ ์ž…๋‹ˆ๋‹ค. ์ฑ…๊ณผ ์˜์ƒ์œผ๋กœ ์ดํ•ด๋งŒ ํ•˜๋Š” ๊ฒƒ์€ ๊ทธ ๋•Œ ๋ฟ์ž…๋‹ˆ๋‹ค. ์ดํ•ด๋ฅผ ๋ฐ”ํƒ•์œผ๋กœ ๋Š์ž„์—†๋Š” ๋ฐ˜๋ณต๊ณผ ํ›ˆ๋ จ์œผ๋กœ ๋‚˜์˜ ๊ธฐ์ˆ ๋กœ ๋งŒ๋“ค์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

 

ํ˜„์žฌ ์—…๊ณ„์— ๋ชธ๋‹ด๊ณ  ์žˆ๋Š” ๋งŒํผ, ํ˜„์—…์—์„œ ์‚ฌ์šฉํ•˜๋Š”

์‹ค์ „ ๋…ธํ•˜์šฐ์™€ ๊ธฐ๋ฒ•์„ ์ตœ๋Œ€ํ•œ ๊ณต์œ  ๋“œ๋ฆฌ๊ณ ์ž ํ•ฉ๋‹ˆ๋‹ค.

 

์ง„๋กœ ๋ฐ ์ง์—… ์ƒ๋‹ด : https://inf.run/g5vdW
๊ฐœ์ธ ๋ฐ ๊ทธ๋ฃน ๊ณผ์™ธ ๋ฌธ์˜ : eazuooz@gmail.com

 

 

๋”๋ณด๊ธฐ

์ปค๋ฆฌํ˜๋Ÿผ

์ „์ฒด

42๊ฐœ โˆ™ (10์‹œ๊ฐ„ 31๋ถ„)

๊ฐ•์˜ ๊ฒŒ์‹œ์ผ: 
๋งˆ์ง€๋ง‰ ์—…๋ฐ์ดํŠธ์ผ: 

์ˆ˜๊ฐ•ํ‰

์•„์ง ์ถฉ๋ถ„ํ•œ ํ‰๊ฐ€๋ฅผ ๋ฐ›์ง€ ๋ชปํ•œ ๊ฐ•์˜์ž…๋‹ˆ๋‹ค.
๋ชจ๋‘์—๊ฒŒ ๋„์›€์ด ๋˜๋Š” ์ˆ˜๊ฐ•ํ‰์˜ ์ฃผ์ธ๊ณต์ด ๋˜์–ด์ฃผ์„ธ์š”!

๋ฌด๋ฃŒ