Aurora DirectX Bindings 12.1

Adam Wilson flyboynw at gmail.com
Sat Oct 6 00:02:36 UTC 2018


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;


More information about the Digitalmars-d-announce mailing list