Announcement

Collapse
No announcement yet.

Wine's VKD3D Lands An Initial Vulkan Pipeline Cache

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • starshipeleven
    replied
    Originally posted by Spazturtle View Post
    I doubt Microsoft would allow Vulkan > DX12 on the Xbox, but you can do it the other way around on Windows.

    VKD3D, DXVK and VK9 work on Windows, they compile to a .dll and you then dump the DLL in the game's folder.
    Xbox applications aren't different from PC applications in this regard, you can ship all wrappers you want inside your own application folder and MS can't say shit as long as the API used to talk to the rest of the OS is the one they want.

    Same for Apple and MoltenVK, they can't enforce shit about the internal interfaces of your application.

    Leave a comment:


  • starshipeleven
    replied
    Originally posted by xxmitsu View Post
    No, I mean.. vkd3d is d3d12 over Vulkan, but at the driver level (vulkan driver) already has this, right ? https://cgit.freedesktop.org/mesa/me...7e9da8d65407d4
    I can't seem to reach that link, but I used the commit ID to look it up on github https://github.com/mesa3d/mesa/commi...7e9da8d65407d4

    From what I understand (not much) this is a cache in the vkd3d stage, so it is caching things before they are converted to Vulkan and sent to the driver. So it's still going to speed up loading, as this stage would have to be performed anyway even if the Vulkan driver had stuff in its cache already.

    Leave a comment:


  • linner
    replied
    I wish qemu would adopt some this stuff from WINE.

    Leave a comment:


  • Danniello
    replied
    Originally posted by Spazturtle View Post

    I doubt Microsoft would allow Vulkan > DX12 on the Xbox, but you can do it the other way around on Windows.

    VKD3D, DXVK and VK9 work on Windows, they compile to a .dll and you then dump the DLL in the game's folder.
    VKD3D is translation layer DirectX12 -> Vulkan, but I meant opposite: Vulkan -> DirectX12.

    Vulkan is usable on:
    * Windows 7/8/10 (but require manual drivers installation - Microsoft by default do not support Vulkan)
    * Android
    * Linux
    With MoltenVK layer (Vulkan->Metal):
    * iOS
    * MacOS

    Having "VK->DX12" layer would expand Vulkan support to:
    * Windows 10 (no need to manual driver installation)
    * XboX

    The most closed/"walled garden" company (Apple) accepted MoltenVK, so I do not see reason why Microsoft would ban hypothetical "VK->DX12" translation layer.

    Leave a comment:


  • Spazturtle
    replied
    Originally posted by Danniello View Post
    Perhaps would be good idea to prepare something like MoltenVK but for Microsoft proprietary systems. In theory Windows 10 is still open (in some sort), but probably it is matter of time when it will be locked for good. First try (Win8/RT) and second try (Win10S) already done. Probably Windows 10 ARM will be locked and then DirectX will be the only option.

    DirectX is already the only option to code for XboX, so have translation layer Vulkan -> DirectX12 perhaps would encourage more developers to use Vulkan... At this point there is only one big developer that is using Vulkan in AAA titles - id Software, but even they not always use open standards - Rage2 will be DirectX title (in fact it will be Avalanche Studios game)...
    I doubt Microsoft would allow Vulkan > DX12 on the Xbox, but you can do it the other way around on Windows.

    VKD3D, DXVK and VK9 work on Windows, they compile to a .dll and you then dump the DLL in the game's folder.

    Leave a comment:


  • Danniello
    replied
    Perhaps would be good idea to prepare something like MoltenVK but for Microsoft proprietary systems. In theory Windows 10 is still open (in some sort), but probably it is matter of time when it will be locked for good. First try (Win8/RT) and second try (Win10S) already done. Probably Windows 10 ARM will be locked and then DirectX will be the only option.

    DirectX is already the only option to code for XboX, so have translation layer Vulkan -> DirectX12 perhaps would encourage more developers to use Vulkan... At this point there is only one big developer that is using Vulkan in AAA titles - id Software, but even they not always use open standards - Rage2 will be DirectX title (in fact it will be Avalanche Studios game)...

    Leave a comment:


  • xxmitsu
    replied
    Originally posted by starshipeleven View Post
    DirectX is at OS level, and Windows 7 and 8 don't have DX 12. Also Linux does not have anything resembling a DX in either drivers or OS.
    No, I mean.. vkd3d is d3d12 over Vulkan, but at the driver level (vulkan driver) already has this, right ? https://cgit.freedesktop.org/mesa/me...7e9da8d65407d4

    Leave a comment:


  • starshipeleven
    replied
    Originally posted by xxmitsu View Post
    Isn't this already implemented at the driver level ?
    DirectX is at OS level, and Windows 7 and 8 don't have DX 12. Also Linux does not have anything resembling a DX in either drivers or OS.

    Leave a comment:


  • xxmitsu
    replied
    Isn't this already implemented at the driver level ?

    Leave a comment:


  • ssorgatem
    replied
    Originally posted by AndyChow View Post
    Is this like DXVK? Because DXVK works great, and we should concentrate on that, not some "other" duplicate effort.
    There's no duplicate effort.
    DXVK is for D3D11/10
    VKD3D is for D3D12
    VK9 is for D3D9

    The main "missing" piece to have them all working nicely together is a common dxgi.dll that's able to interface all of them (and possibly wined3d too).

    Leave a comment:

Working...
X