SDL 2.0.20 ๋ฏธ๋””์–ด ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๋ฆด๋ฆฌ์Šค

๊ฒŒ์ž„ ๋ฐ ๋ฉ€ํ‹ฐ๋ฏธ๋””์–ด ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ž‘์„ฑ์„ ๋‹จ์ˆœํ™”ํ•˜๊ธฐ ์œ„ํ•œ SDL 2.0.20(Simple DirectMedia Layer) ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๊ฐ€ ์ถœ์‹œ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. SDL ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋Š” ํ•˜๋“œ์›จ์–ด ๊ฐ€์† 2D ๋ฐ 3D ๊ทธ๋ž˜ํ”ฝ ์ถœ๋ ฅ, ์ž…๋ ฅ ์ฒ˜๋ฆฌ, ์˜ค๋””์˜ค ์žฌ์ƒ, OpenGL/OpenGL ES/Vulkan์„ ํ†ตํ•œ 3D ์ถœ๋ ฅ ๋ฐ ๊ธฐํƒ€ ์—ฌ๋Ÿฌ ๊ด€๋ จ ์ž‘์—…๊ณผ ๊ฐ™์€ ๋„๊ตฌ๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋Š” C๋กœ ์ž‘์„ฑ๋˜์—ˆ์œผ๋ฉฐ zlib ๋ผ์ด์„ผ์Šค์— ๋”ฐ๋ผ ๋ฐฐํฌ๋ฉ๋‹ˆ๋‹ค. ๋‹ค์–‘ํ•œ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด๋กœ ํ”„๋กœ์ ํŠธ์—์„œ SDL ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ๋ฐ”์ธ๋”ฉ์ด ์ œ๊ณต๋ฉ๋‹ˆ๋‹ค. ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์ฝ”๋“œ๋Š” Zlib ๋ผ์ด์„ผ์Šค์— ๋”ฐ๋ผ ๋ฐฐํฌ๋ฉ๋‹ˆ๋‹ค.

์ƒˆ ๋ฆด๋ฆฌ์Šค์—์„œ:

  • OpenGL ๋ฐ OpenGL ES๋ฅผ ์‚ฌ์šฉํ•  ๋•Œ ์ˆ˜ํ‰์„  ๋ฐ ์ˆ˜์ง์„  ๊ทธ๋ฆฌ๊ธฐ์˜ ์ •ํ™•๋„๊ฐ€ ํ–ฅ์ƒ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • ์†๋„, ์ •ํ™•์„ฑ ๋ฐ ํ˜ธํ™˜์„ฑ์— ์˜ํ–ฅ์„ ๋ฏธ์น˜๋Š” ์„  ๊ทธ๋ฆฌ๊ธฐ ๋ฐฉ๋ฒ•์„ ์„ ํƒํ•˜๊ธฐ ์œ„ํ•ด SDL_HINT_RENDER_LINE_METHOD ์†์„ฑ์„ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค.
  • ์ •์ˆ˜ ๊ฐ’ ๋Œ€์‹  SDL_Color ๋งค๊ฐœ๋ณ€์ˆ˜์— ๋Œ€ํ•œ ํฌ์ธํ„ฐ๋ฅผ ์‚ฌ์šฉํ•˜๋„๋ก SDL_RenderGeometryRaw()๋ฅผ ์žฌ์ž‘์—…ํ–ˆ์Šต๋‹ˆ๋‹ค. ์ƒ‰์ƒ ๋ฐ์ดํ„ฐ๋Š” SDL_PIXELFORMAT_RGBA32 ๋ฐ SDL_PIXELFORMAT_ABGR8888 ํ˜•์‹์œผ๋กœ ์ง€์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • Windows ํ”Œ๋žซํผ์—์„œ๋Š” ๊ธฐ๋ณธ ์ปค์„œ ํฌ๊ธฐ ๋ฌธ์ œ๊ฐ€ ํ•ด๊ฒฐ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • Linux๋Š” ๋ฆด๋ฆฌ์Šค 2.0.18์—์„œ ์†์ƒ๋œ ๊ฒŒ์ž„ ์ปจํŠธ๋กค๋Ÿฌ์— ๋Œ€ํ•œ ํ•ซ ํ”Œ๋Ÿฌ๊ทธ โ€‹โ€‹๊ฐ์ง€ ๊ธฐ๋Šฅ์„ ์ˆ˜์ •ํ–ˆ์Šต๋‹ˆ๋‹ค.

๋˜ํ•œ SDL 2.0.18์—์„œ TTF ๊ธ€๊ผด(TrueType) ์ž‘์—…์„ ์œ„ํ•œ ๋„๊ตฌ๋ฅผ ์ œ๊ณตํ•˜๋Š” FreeType 2 ๊ธ€๊ผด ์—”์ง„์šฉ ํ”„๋ ˆ์ž„์›Œํฌ๊ฐ€ ํฌํ•จ๋œ SDL_ttf 2.0.18 ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์˜ ์ถœ์‹œ๋ฅผ ์ฃผ๋ชฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ƒˆ ๋ฆด๋ฆฌ์Šค์—๋Š” ํฌ๊ธฐ ์กฐ์ •, ์ถœ๋ ฅ ์ œ์–ด, ํฌ๊ธฐ ์กฐ์ •, TTF ๊ธ€๊ผด ์„ค์ • ์ •์˜๋ฅผ ์œ„ํ•œ ์ถ”๊ฐ€ ๊ธฐ๋Šฅ๊ณผ 32๋น„ํŠธ ๋ฌธ์ž ์ง€์›์ด ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

์ถœ์ฒ˜ : opennet.ru

์ฝ”๋ฉ˜ํŠธ๋ฅผ ์ถ”๊ฐ€