Wine 4.19 ๋ฐ Wine Staging 4.19์˜ ์ƒˆ ๋ฒ„์ „

์‚ฌ์šฉ ๊ฐ€๋Šฅ Win32 API ๊ฐœ๋ฐฉํ˜• ๊ตฌํ˜„์˜ ์‹คํ—˜์  ๋ฆด๋ฆฌ์Šค - ์™€์ธ 4.19. ๋ฒ„์ „ ์ถœ์‹œ ์ดํ›„ 4.18 41๊ฐœ์˜ ๋ฒ„๊ทธ ๋ณด๊ณ ์„œ๊ฐ€ ๋งˆ๊ฐ๋˜์—ˆ๊ณ  297๊ฐœ์˜ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์ด ์ ์šฉ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

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

  • VBScript์˜ ๊ธฐ๋Šฅ์ด ํ™•์žฅ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ฆ‰, String, LBound, RegExp.Replace ํ•จ์ˆ˜๊ฐ€ ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ƒˆ๋กœ์šด ํ‘œํ˜„์ด ๊ตฌํ˜„๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • WineD3D์— wined3d_stateblock_set_sampler_state() ๋ฐ wined_stateblock_set_texture_stage_state() ํ•จ์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค. ์ƒํƒœ ์ปค๋ฐ‹ ์ฒ˜๋ฆฌ ๊ตฌํ˜„(StateBlock) ํ˜ธ์ถœ d3d9_device_SetSamplerState(), d3d9_device_SetTextureStageState(), d3d_device7_SetRenderState(),
    d3d_device7_SetTextureStageState(), d3d9_device_SetTexture(), d3d9_device_SetTransform(), d3d9_device_SetClipPlane(), d3d9_device_SetMaterial();

  • dxgi_output_ReleaseOwnership() ๋ฐ dxgi_output_TakeOwnership() ํ˜ธ์ถœ์„ ๊ตฌํ˜„ํ–ˆ์Šต๋‹ˆ๋‹ค.
  • ํ–ฅ์ƒ๋œ ARM64 ์ง€์›;
  • ํ•ด๊ฒฐ๋จ ์„ค์ • ๋Œ€ํ™” ์ƒ์ž์˜ ๋Ÿฌ์‹œ์•„์–ด ํ˜„์ง€ํ™” ๋ฌธ์ œ
  • ๊ฒŒ์ž„ ๋ฐ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ž‘๋™๊ณผ ๊ด€๋ จ๋œ ์˜ค๋ฅ˜ ๋ณด๊ณ ์„œ๊ฐ€ ๋‹ซํž™๋‹ˆ๋‹ค.
    Slingplayer 2.0, Trivial Pursuit Unhinged, Notepad .Net, Tweet Attacks Pro, The Adventures Of Lomax, Metatrader 5, Space Hack, TeamViewer 9.0.26297, ImpotRapide 2013, Netgear Powerline 3.1, MetaEditor 5, Betfair Poker, Jack Keane 2, Indiana Jones ๊ทธ๋ฆฌ๊ณ  ํ™ฉ์ œ์˜ ๋ฌด๋ค, ์นจ๋ฌต์˜ ์ˆœ๊ฐ„, Closing Ableton Live 9 Lite, Rekordbox 5.3.0, LAVFilters 0.74.x
    , ๋™๋ฐฉ 15.5: ์ผ๋ฐ˜ ๊ฝƒ์˜ ์ด์œจ๋ฐฐ๋ฐ˜, R-Studio, Sniper Elite V2.

๋˜ํ•œ ์ผ์–ด๋‚ฌ๋‹ค ํ”„๋กœ์ ํŠธ ๋ฆด๋ฆฌ์Šค ์™€์ธ ์ค€๋น„ 4.19, ์•„์ง ๋ฉ”์ธ Wine ๋ธŒ๋žœ์น˜์— ์ฑ„ํƒํ•˜๊ธฐ์— ์ ํ•ฉํ•˜์ง€ ์•Š์€ ๋ถˆ์™„์ „ํ•˜๊ฑฐ๋‚˜ ์œ„ํ—˜ํ•œ ํŒจ์น˜๋ฅผ ํฌํ•จํ•˜๋Š” ํ™•์žฅ๋œ Wine ๋นŒ๋“œ๋ฅผ ๊ฐœ๋ฐœํ•ฉ๋‹ˆ๋‹ค. Wine๊ณผ ๋น„๊ตํ•˜์—ฌ Wine Staging์€ 840๊ฐœ์˜ ์ถ”๊ฐ€ ํŒจ์น˜๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

Wine Staging์˜ ์ƒˆ๋กœ์šด ๋ฆด๋ฆฌ์Šค๋Š” Wine 4.19 ์ฝ”๋“œ๋ฒ ์ด์Šค์™€ ๋™๊ธฐํ™”๋ฉ๋‹ˆ๋‹ค. quartz.dll์˜ ํ™•์žฅ๋œ ๊ธฐ๋Šฅ์„ ๊ฐ–์ถ˜ ํŒจ์น˜, crypt32.dll์— 2010๋…„ MS ๋ฃจํŠธ ์ธ์ฆ์„œ ํฌํ•จ, ์ œํ•œ๋œerrorinfo.idl ์ถ”๊ฐ€ ๋ฐ uianimation.dll์˜ ํ™•์žฅ๋œ ๊ธฐ๋Šฅ์ด ๊ธฐ๋ณธ Wine์œผ๋กœ ์ด์ „๋˜์—ˆ์Šต๋‹ˆ๋‹ค. NtVirtualAlloc() ํ˜ธ์ถœ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ์ƒˆ ํŒจ์น˜๋ฅผ ์ถ”๊ฐ€ํ•˜๊ณ  ํŒจ์น˜๋ฅผ ์—…๋ฐ์ดํŠธํ–ˆ์Šต๋‹ˆ๋‹ค.
ntdll-User_Shared_Data.

๊ฒŒ๋‹ค๊ฐ€ ์ฃผ๋ชฉํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์€ ะพะฑะฝะพะฒะปะตะฝะธะต ์ค‘๊ฐ„์ธต DXVK 1.4.4 Vulkan API ์œ„์— DXGI, Direct3D 10 ๋ฐ Direct3D 11์„ ๊ตฌํ˜„ํ–ˆ์Šต๋‹ˆ๋‹ค. ์ƒˆ ๋ฆด๋ฆฌ์Šค์—์„œ๋Š” ์ƒํƒœ ์บ์‹œ์— ์ž˜๋ชป๋œ ํ•ญ๋ชฉ์ด ์ €์žฅ๋˜๋Š” ๋ฒ„๊ทธ๊ฐ€ ์ˆ˜์ •๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๊ผญ์ง“์  ๋ฐ ์ธ๋ฑ์Šค ๋ฒ„ํผ๋กœ ์ž‘์—…ํ•  ๋•Œ ๋ฆฌ์†Œ์Šค๋ฅผ ์“ฐ๊ธฐ ์ „์— ๋ฆฌ์†Œ์Šค๋ฅผ ์ฝ์œผ๋ ค๊ณ  ์‹œ๋„ํ•  ์ˆ˜ ์žˆ๋Š” ์ž ์žฌ์ ์ธ ๋ฌธ์ œ๊ฐ€ ํ•ด๊ฒฐ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. Unity ์—”์ง„์—์„œ ์‚ฌ์šฉ๋˜๋Š” ์ŠคํŠธ๋ฆผ ์ถœ๋ ฅ ๋ฐ ์ถ”๊ฐ€/์†Œ๋น„ ๋ฒ„ํผ ์ž‘์—… ์ตœ์ ํ™”.
์ž‘์ง€๋งŒ ์ž์ฃผ ์—…๋ฐ์ดํŠธ๋˜๋Š” ๋ฒ„ํผ๋ฅผ ์‚ฌ์šฉํ•  ๋•Œ ๋ฉ”๋ชจ๋ฆฌ ์†Œ๋น„๊ฐ€ ์ค„์–ด๋“ญ๋‹ˆ๋‹ค. Skyrim SE: Worked์˜ ์ถฉ๋Œ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ณ  NVIDIA ๊ทธ๋ž˜ํ”ฝ ์นด๋“œ๋ฅผ ์‚ฌ์šฉํ•  ๋•Œ Saints Row 3/4 ๋ฐ Titan Quest์˜ ๊นœ๋ฐ•์ž„์„ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•œ ์ฝ”๋“œ๋ฅผ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค.

๋˜ํ•œ ํ˜•์„ฑ๋œ ํ”„๋กœ์ ํŠธ ๋ฆด๋ฆฌ์Šค D9VK 0.30, Vulkan ๊ทธ๋ž˜ํ”ฝ API์— ๋Œ€ํ•œ ํ˜ธ์ถœ์„ ๋ณ€ํ™˜ํ•˜์—ฌ ์ž‘๋™ํ•˜๋Š” Direct3D 9 ๊ตฌํ˜„์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ์ด ํ”„๋กœ์ ํŠธ๋Š” Direct3D 9 ์ง€์›์œผ๋กœ ํ™•์žฅ๋œ DXVK ํ”„๋กœ์ ํŠธ์˜ ์ฝ”๋“œ ๊ธฐ๋ฐ˜์„ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•ฉ๋‹ˆ๋‹ค. ์ƒˆ ๋ฒ„์ „์€ DXVK 1.4.4์™€ ๋™๊ธฐํ™”๋ฉ๋‹ˆ๋‹ค. ์„ฑ๋Šฅ ์ตœ์ ํ™”๊ฐ€ ์ด๋ฃจ์–ด์กŒ์œผ๋ฉฐ ์ž ๊ธˆ ์ž‘์—…์ด ๊ฐœ์„ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์…ฐ์ด๋” ์‚ฌ์ „ ์ •์˜์— ๋Œ€ํ•œ ์‹คํ—˜์  ์ง€์›์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
์˜ต์…˜ D3DRS_SHADEMODE, D3DRS_POINTSIZE, D3DRS_POINTSIZE_MIN, D3DRS_POINTSIZE_MAX, D3DRS_POINTSCALE_A, D3DRS_POINTSCALE_B, D3DRS_POINTSCALE_C, D3DRS_POINTSCALEENABLE ๋ฐ D3DRS_POINTSPRITEENABLE ์˜ต์…˜์ด ๊ตฌํ˜„๋˜์—ˆ์Šต๋‹ˆ๋‹ค. Halo 2์˜ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ๋ณ€๊ฒฝ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

์ถœ์ฒ˜ : opennet.ru

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