You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
It seems likely that DirectStorage will be bundled with the rest of the DirectX components at some point -- once it matures enough presumably -- and supporting it then will be a no brainer. But for now it's just a "nice to have".
Proposed API
I've tried generating bindings from the DirectStorage header files using ClangSharpPInvokeGenerator, and it seems to work fine. I just copied the settings from D3D12, filled in the response files with the relevant info and that was it.
Drawbacks
The biggest problem is that native binaries are required (dstorage.dll and dstoragecore.dll) and I don't see any examples of any TerraFX doing this. Do you want to split these DLLs out into a separate package like Vortice.Windows and Silk.NET do, and if so, does that mean a separate project within TerraFX.Interop.Windows or a whole new repo...? Another possibility is to just generate the bindings but require users to copy the relevant binaries to their bin folder manually. Note that Silk.NET actually has two packages for DirectStorage: Silk.NET.DirectStorage and Silk.NET.DirectStorage.Native with the first containing the bindings and the second containing the DLLs (with the latter being a transitive dependency of the first). I'm not exactly sure why -- possibly just so each package can have a separate license?
Alternatives
Do nothing? :-)
The text was updated successfully, but these errors were encountered:
paulbartrum
added
proposal
An issue that represents a proposed feature or change to the repo.
untriaged
An issue that has not been triaged by the repo maintainers.
labels
Sep 4, 2022
Silk.NET will be looking to support this in 3.0, in which our Windows SDK bindings are just a fork of TerraFX's heavily modified by a generator. So this may result in some work flowing upstream here.
Description
DirectStorage is now publicly available via NuGet (https://www.nuget.org/packages/Microsoft.Direct3D.DirectStorage) and both Vortice.Windows and Silk.NET support it. It would be nice for TerraFX.Interop to support it too.
It seems likely that DirectStorage will be bundled with the rest of the DirectX components at some point -- once it matures enough presumably -- and supporting it then will be a no brainer. But for now it's just a "nice to have".
Proposed API
I've tried generating bindings from the DirectStorage header files using ClangSharpPInvokeGenerator, and it seems to work fine. I just copied the settings from D3D12, filled in the response files with the relevant info and that was it.
Drawbacks
The biggest problem is that native binaries are required (dstorage.dll and dstoragecore.dll) and I don't see any examples of any TerraFX doing this. Do you want to split these DLLs out into a separate package like Vortice.Windows and Silk.NET do, and if so, does that mean a separate project within TerraFX.Interop.Windows or a whole new repo...? Another possibility is to just generate the bindings but require users to copy the relevant binaries to their bin folder manually. Note that Silk.NET actually has two packages for DirectStorage: Silk.NET.DirectStorage and Silk.NET.DirectStorage.Native with the first containing the bindings and the second containing the DLLs (with the latter being a transitive dependency of the first). I'm not exactly sure why -- possibly just so each package can have a separate license?
Alternatives
Do nothing? :-)
The text was updated successfully, but these errors were encountered: