Wine 10.1 ๋ฐ Vkd3d 1.15 ์ถœ์‹œ

Win32 API์˜ ์˜คํ”ˆ ์†Œ์Šค ๊ตฌํ˜„์ธ Wine 10.2์˜ ์‹คํ—˜์  ๋ฆด๋ฆฌ์Šค๊ฐ€ ๊ฒŒ์‹œ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. 10.1 ๋ฆด๋ฆฌ์Šค ์ดํ›„ 20๊ฐœ์˜ ๋ฒ„๊ทธ ๋ณด๊ณ ์„œ๊ฐ€ ๋งˆ๊ฐ๋˜์—ˆ์œผ๋ฉฐ 269๊ฐœ์˜ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์ด ์ ์šฉ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

๊ฐ€์žฅ ์ค‘์š”ํ•œ ๋ณ€๊ฒฝ ์‚ฌํ•ญ:

  • Direct3D 3 ๊ตฌํ˜„์ด ํฌํ•จ๋œ ๋‚ด์žฅ Vkd12d ํŒจํ‚ค์ง€๊ฐ€ ๋ฒ„์ „ 1.15๋กœ ์—…๋ฐ์ดํŠธ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • ์Šค๋ ˆ๋“œ ์šฐ์„ ์ˆœ์œ„ ์„ค์ •์— ๋Œ€ํ•œ ์ง€์›์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • Wow64(64๋น„ํŠธ Windows-on-Windows) ๋ชจ๋“œ๋ฅผ ๋™์ ์œผ๋กœ ํ™œ์„ฑํ™”ํ•˜๋Š” ๊ธฐ๋Šฅ์ด ๊ตฌํ˜„๋˜์–ด 32๋น„ํŠธ Windows ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ 64๋น„ํŠธ Unix ์‹œ์Šคํ…œ์—์„œ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • Bluetooth ๋“œ๋ผ์ด๋ฒ„์˜ ๊ฐœ๋ฐœ์€ ๊ณ„์†๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • ๋‹ค์Œ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์˜ ์ž‘๋™๊ณผ ๊ด€๋ จ๋œ ์˜ค๋ฅ˜ ๋ณด๊ณ ๊ฐ€ ๋‹ซํ˜”์Šต๋‹ˆ๋‹ค: Wordpad, cmd.
  • ๋‹ค์Œ ๊ฒŒ์ž„์˜ ์šด์˜๊ณผ ๊ด€๋ จ๋œ ๋ฒ„๊ทธ ๋ณด๊ณ ์„œ๋Š” ์ข…๋ฃŒ๋˜์—ˆ์Šต๋‹ˆ๋‹ค: ์‚ฌ์ด๋ฒ„ํŽ‘ํฌ 2077, ํŒŒ์ด๋„ ํŒํƒ€์ง€ XI ์˜จ๋ผ์ธ, ๊ธธ๋“œ ์›Œ, MSWT ์นดํŠธ 2004, YOU and ME and HER, Myst, ์„ธํ‚ค๋กœ: ์„€๋„์šฐ ๋‹ค์ด ํŠธ์™€์ด์Šค.

๋˜ํ•œ, Vulkan ๊ทธ๋ž˜ํ”ฝ API์— ๋Œ€ํ•œ ํ˜ธ์ถœ์˜ ๋ณ€ํ™˜์„ ํ†ตํ•ด Direct3D 1.15 ๊ตฌํ˜„์ด ํฌํ•จ๋œ vkd3d 12 ํŒจํ‚ค์ง€๊ฐ€ ์ถœ์‹œ๋˜์—ˆ๋‹ค๋Š” ์ ๋„ ์ฃผ๋ชฉํ•  ๋งŒํ•ฉ๋‹ˆ๋‹ค. ํŒจํ‚ค์ง€์—๋Š” Direct3D 3 ๊ตฌํ˜„์„ ๊ฐ–์ถ˜ libvkd12d ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ, ์…ฐ์ด๋” ๋ชจ๋ธ 3 ๋ฐ 4์— ๋Œ€ํ•œ ๋ณ€ํ™˜๊ธฐ๋ฅผ ๊ฐ–์ถ˜ libvkd5d-shader, Direct3D 3 ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ํฌํŒ…์„ ๊ฐ„์†Œํ™”ํ•˜๋Š” ๊ธฐ๋Šฅ์„ ๊ฐ–์ถ˜ libvkd12d-utils, glxgears๋ฅผ Direct3D 12๋กœ ํฌํŒ…ํ•˜๋Š” ๋ฐ๋ชจ ์˜ˆ์ œ ์„ธํŠธ๊ฐ€ ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ํ”„๋กœ์ ํŠธ ์ฝ”๋“œ๋Š” LGPLv2.1 ๋ผ์ด์„ ์Šค์— ๋”ฐ๋ผ ๋ฐฐํฌ๋ฉ๋‹ˆ๋‹ค.

HLSL ์…ฐ์ด๋” ์–ธ์–ด ์ปดํŒŒ์ผ๋Ÿฌ์˜ ์ƒˆ๋กœ์šด ๋ฒ„์ „์€ ํ…Œ์…€๋ ˆ์ด์…˜ ์…ฐ์ด๋”์— ๋Œ€ํ•œ ์ง€์›์„ ๊ณ„์† ๊ตฌํ˜„ํ•˜๊ณ  ํ•จ์ˆ˜ ์˜ค๋ฒ„๋กœ๋“œ ๊ฐ์ง€๋ฅผ ๊ฐœ์„ ํ•ฉ๋‹ˆ๋‹ค. vkd3d_queue_signal_on_cpu() ํ•จ์ˆ˜๊ฐ€ libvkd3d์— ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค. HLSL์— ๊ตฌํ˜„๋œ ๋‚ด์žฅ ํ•จ์ˆ˜๋Š” GatherCmp(), GatherCmpAlpha(), GatherCmpBlue(), GatherCmpGreen(), GatherCmpRed(), InterlockedAdd(), InterlockedAnd(), InterlockedCompareExchange(), InterlockedCompareStore(), InterlockedExchange(), InterlockedMax(), InterlockedMin(), InterlockedOr(), InterlockedXor(), isinf()์ž…๋‹ˆ๋‹ค.

์ถœ์ฒ˜ : opennet.ru

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