The Mixed Reality Forums here are no longer being used or maintained.
There are a few other places we would like to direct you to for support, both from Microsoft and from the community.
The first way we want to connect with you is our mixed reality developer program, which you can sign up for at https://aka.ms/IWantMR.
For technical questions, please use Stack Overflow, and tag your questions using either hololens or windows-mixed-reality.
If you want to join in discussions, please do so in the HoloDevelopers Slack, which you can join by going to https://aka.ms/holodevelopers, or in our Microsoft Tech Communities forums at https://techcommunity.microsoft.com/t5/mixed-reality/ct-p/MicrosoftMixedReality.
And always feel free to hit us up on Twitter @MxdRealityDev.
Does HoloLens support DirectX 12?
Please read before you give the documented answer...
I just built a directx 12 C++ project template and pushed it to the HoloLens. It ran just fine. I cracked open the code and it is indeed using DirectX 12. It's linked to the d3d12.lib and everything. Now I know it's also a 2D Window with a 3D Swap chain, however it's built with the DirectX12 libraries. So the logical question is what gives???
The write up says DirectX 11 support not DirectX 12
Dwight Goins
CAO & Founder| Independent Architect | Trainer and Consultant | Sr. Enterprise Architect
MVP | MCT | MCSD | MCPD | SharePoint TS | MS Virtual TS |Windows 8 App Store Developer | Linux Gentoo Geek | Raspberry Pi Owner | Micro .Net Developer | Kinect For Windows Device Developer
http://dgoins.wordpress.com
Best Answer
-
Options
Ok, so I just checked and currently the supported Feature Level that's working on my HoloLens build is 11_1. But the DirectX 12 libraries, classes, adapters and interfaces work just fine:
HRESULT hr = D3D12CreateDevice( adapter.Get(), // The hardware adapter. D3D_FEATURE_LEVEL_11_1, // Minimum feature level this app can support. IID_PPV_ARGS(&m_d3dDevice) // Returns the Direct3D device created. );
The above code works.
Dwight Goins
CAO & Founder| Independent Architect | Trainer and Consultant | Sr. Enterprise Architect
MVP | MCT | MCSD | MCPD | SharePoint TS | MS Virtual TS |Windows 8 App Store Developer | Linux Gentoo Geek | Raspberry Pi Owner | Micro .Net Developer | Kinect For Windows Device Developer
http://dgoins.wordpress.com5
Answers
Interesting. What feature level is turned on on the when creating the device? Maybe it defaulted back to 11.1? Did it actually run on the device? I tested this with the emulator and it reverts back to warp with D3D_FEATURE_LEVEL_11_0 when it fails to creating the D3D12Device
http://www.redsprocketstudio.com/
Developer | Check out my new project blog
I'm not able to test the create device call at this present moment on live device. However that's a good and obvious point.
I feel that ...Duh... moment....
I assumed DirectX 12, because all of the DX12 classes, D12 Descriptiors, D3D12InputElements, Resources, Heap, PipelineState, and etc all using DX12. I guess I need to read some more on the DX12 features.
Thanks. I'll check as soon as I can and report back here.
Dwight Goins
CAO & Founder| Independent Architect | Trainer and Consultant | Sr. Enterprise Architect
MVP | MCT | MCSD | MCPD | SharePoint TS | MS Virtual TS |Windows 8 App Store Developer | Linux Gentoo Geek | Raspberry Pi Owner | Micro .Net Developer | Kinect For Windows Device Developer
http://dgoins.wordpress.com
I'd be very interested to know how this goes. I have built a Dx12 backend for my engine awhile back but don't have 11, so I've had to rely on angle for my OpenGL renderer for the time being.
Tomorrow when I get back to my office I'll try to load up a DX12 version of the spinning cube to a commercial device to see what happens. I'll either remove the revert to warp or output the HResult of the createDevice function call.
http://www.redsprocketstudio.com/
Developer | Check out my new project blog
Ok, so I just checked and currently the supported Feature Level that's working on my HoloLens build is 11_1. But the DirectX 12 libraries, classes, adapters and interfaces work just fine:
The above code works.
Dwight Goins
CAO & Founder| Independent Architect | Trainer and Consultant | Sr. Enterprise Architect
MVP | MCT | MCSD | MCPD | SharePoint TS | MS Virtual TS |Windows 8 App Store Developer | Linux Gentoo Geek | Raspberry Pi Owner | Micro .Net Developer | Kinect For Windows Device Developer
http://dgoins.wordpress.com