Re: Aurora DirectX Bindings 12.1

2018-10-05 Thread Nicholas Wilson via Digitalmars-d-announce

On Saturday, 6 October 2018 at 00:02:36 UTC, Adam Wilson wrote:
So for now I definitely think the package route is a better 
option.


Indeed.

But if you do end up using these bindings on DCompute please 
let me know! I've made sure that all the Shader interfaces 
exist, but if you find anything missing I will gladly except 
PR's.


Will do. It really depends on a) what happens at the LLVM Dev 
meeting in a week and a half and b) what Blizzard want out of it, 
both if it happens at all, and how much, if any (i.e. anything 
more than codegen), of the API will need to be usable from D.


Re: Aurora DirectX Bindings 12.1

2018-10-05 Thread Adam Wilson via Digitalmars-d-announce

On 10/3/18 10:15 PM, rikki cattermole wrote:

On 04/10/2018 5:33 PM, Nicholas Wilson wrote:

On Thursday, 4 October 2018 at 04:03:27 UTC, rikki cattermole wrote:

On 04/10/2018 2:06 PM, Adam Wilson wrote:
The Aurora DirectX bindings have been updated to support Windows 10 
1809. Also the D2D Effect Authoring SDK has been added.


GitHub: https://github.com/auroragraphics/directx
DUB: http://code.dlang.org/packages/aurora-directx

Please send PR's if you find any bugs!


It would be nice to get DirectX bindings into druntime. Just need 
9/10 (some are floating about) after these mature a bit.


I don't think thats wise, nor is it ever like to happen. Druntime is 
D's runtime, the only reason there are bindings to the C and and C++ 
standard library is because of their ubiquity. This is much better 
suited to a dub package.


Side note, its possible that I might end up adding a DX12 backend to 
LDC/DCompute (which I'm going to have to rename if I do) based on 
https://github.com/Microsoft/DirectXShaderCompiler/ even more likely 
if MS (Hi Adam) upstream it to LLVM.


Direct3D is part of the system API on Window's today, it is equivalent 
to using WinAPI for graphics. Which is well within the scope of druntime 
bindings.


A couple of thoughts on this. First IIRC, the Win32 bindings in DRT is 
nowhere near a complete implementation of the Win32, I think it's 
primarily from user32.lib. Second, the DirectX bindings themselves are 
absolutely massive and the move pretty quickly (they change with every 
release of Windows, so every 6 months right now). Putting them in DRT 
would significantly slow down updates. For example, I had these updates 
released within two days of the release of 1809. Third, my 
implementation is not complete. There are a bunch of missing macros and 
helper functions that have not yet been ported.


So for now I definitely think the package route is a better option.

But if you do end up using these bindings on DCompute please let me 
know! I've made sure that all the Shader interfaces exist, but if you 
find anything missing I will gladly except PR's.


--
Adam Wilson
IRC: LightBender
import quiet.dlang.dev;