Is there a C++ DirectX example (NOT UNITY) for the Acer headset?

The old hololens code is broken and I don't know what to do. Its flickering like crazy. Everything worked fine before "upgrading" to the fall creators insider build.

Best Answer

  • mlfarrellmlfarrell
    edited August 25 Accepted Answer

    I'm moving this discussion off of here. Whatever the solution will be be the solution that closes this bug in ANGLE -> https://github.com/Microsoft/angle/issues/127

    Edit: in summary, don't discard RTVs per frame. Update to latest windows insider build. Both of those stopped the colored flicker. My other issues turned out to be engine bugs in my own code.

Answers

  • Flickering many colours after throwing an exception?

  • mlfarrellmlfarrell
    edited August 10

    No exceptions that I can see, its just flickering to black and other random colors a ton while rendering both eyes. Between flickers my app seems to be rendering fine.

    I desperately need a DirectX SDK + VPRT example that runs properly on 10.0.16257.0. so I can compare and deduce what I'm doing wrong. That or for someone to look at my swapchain and tell me why its flickering like this.

    Unless 10.0.16257.0 completely broke all immersive apps.

    My swapchain renderer is effectively this:

    https://github.com/mlfarrell/angle/blob/fall_creators_sdk/src/libANGLE/renderer/d3d/d3d11/winrt/HolographicSwapChain11.cpp

    This code runs fine on the hololens and worked fine on win 10 stable (non insider) build of MR portal with the acer. This insider update really screwed things up for me bad.

  • Out of curiosity, how does the Debug version of the Holographic DirectX 11 template run for you on newest insider build with the Acer headset? I'm having issues as well.

  • It's flickering as well. Random colors. Hmmm. So that seems like its a bug in windows then?

    MS, We need a workaround guys. Like very soon. My project is dead in the water until I can fix this.

  • Ok, that's good to know - if you run debug mode, does it throw an exception in VS2017?

  • Didn't bother to. It might though. You need to make sure you're building with both latest 16257 sdk and using vs_2017 platform toolset to avoid exceptions on startup.

    The flickering may be specific to my geforce 1060 GTX card. Either way, I need it fixed so I can dev.

    I'm also relieved to know that I don't have to provide ~100k lines of code to MS to reproduce the bug though.

  • @james_acres & @mlfarrell - Hey, I have reached out to my contacts at Microsoft to see if I can get you guys some help on this. DirectX and C++ are not at all my world, but I am seeing if I can't find someone who is more versed to assist.

    If you guys can log some feedback via the Feedback hub and reproduce while doing it (see my announcement at the top of the forum about how to do this), that will help a lot.

    Wish I had an answer for you now.

    Thanks,
    Jesse

  • Thanks Jesse. I appreciate that a ton. Just be sure to tell them they can reproduce it on a geforce 1060 GTX running the directx cube sample (https://developer.microsoft.com/en-us/windows/mixed-reality/creating_a_holographic_directx_project) on latest win insider build 10.0.16257.0 + acer HMD.

    I also have these log outputs, I'm not sure which ones (if any) are related to the flickering:

    onecore\com\combase\inc\comcataloghelpers.hpp(64)\combase.dll!742DDC0E: (caller: 742DC2DF) ReturnHr(1) tid(f10) 80040154 Class not registered
    onecore\com\combase\inc\comcataloghelpers.hpp(64)\combase.dll!742DDC0E: (caller: 742DC2DF) ReturnHr(2) tid(26c4) 80040154 Class not registered
    internal\sdk\inc\wil\ResultMacros.h(5646)\Windows.Perception.Stub.dll!65AF3660: (caller: 65AF2D5A) ReturnHr(1) tid(cf4) 80070005 Access is denied.
    onecoreuap\analog\input\holographicdriverclientlib\lib\spatialgraphdriverclient.cpp(966)\Windows.Mirage.dll!6568BF96: (caller: 6568D04F) ReturnHr(1) tid(cf4) 80070057 The parameter is incorrect.
    CallContext:[\PublicAPIActivity\PublicAPIActivity\PublicAPIActivity\PublicAPIActivity\PublicAPIActivity\PublicAPIActivity]
    onecoreuap\analog\input\holographicdriverclientlib\lib\spatialgraphdriverclient.cpp(1415)\Windows.Mirage.dll!6568D06A: (caller: 6568CEAE) ReturnHr(2) tid(cf4) 80070057 The parameter is incorrect.
    CallContext:[\PublicAPIActivity\PublicAPIActivity\PublicAPIActivity\PublicAPIActivity\PublicAPIActivity\PublicAPIActivity]
    internal\sdk\inc\wil\result.h(942)\twinapi.appcore.dll!6DD48403: (caller: 6DD5B103) LogHr(1) tid(cf4) 8007029C An assertion failure has occurred.

  • Thanks Jesse. This is the exact same output that I'm getting.

  • So the webvr demos I tried on edge rendered fine without flicker. So its definitely a DirectX tweak (likely something simple) that we need to make. I was hoping to dive into MR dev this weekend. Hoping for an update before the end of day?

  • @mlfarrell - Sorry, I've reached out to my contacts on the Microsoft team, I know you were hoping to work on this over the weekend. I've pointed them towards this thread, so if we don't see any response by Tuesday, I'll push again.

  • Much appreciated. Thanks again.
  • Hey @Jesse_McCulloch - I just pushed through internal DL as well, hopefully we'll get a response sooner rather than later.

    My original VS.Net project templates for MixedReality C# and C++ projects ran fine on the Anniversary edition of the Simulator and on the HP device - no problems. Now after the update to 16257 build - the projects run, however nothing renders out to the screen. It's a blank screen, and the DX traces don't say anything is wrong, from what I can tell. I'll keep looking into it though.

    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

  • Yea.. We really need some kind of help here. I have very very limited time to work on MR this month and losing this weekend was really bad.

    At the very least, please just provide us with an off-master-branch commit to

    https://github.com/Microsoft/Windows-universal-samples/tree/master/Samples/HolographicSpatialStage/cpp

    to get it running properly again.

  • Hello. Sorry to be a pest, but are there any updates on this?

  • @jaimer have you encountered this before?

  • mlfarrellmlfarrell
    edited August 21

    Still happening with latest nvidia fast ring drivers...

    Assuming this is an easy 1 liner DirectX fix since it doesn't break for MR house environment or webVR experiences running inside edge.

  • still having this problem...even just building the rotating cube template.

    My code is starting, but then the screen starts flashing colors. Occasionally you can see my DirectX code display.

  • @pch said:
    still having this problem...even just building the rotating cube template.

    My code is starting, but then the screen starts flashing colors. Occasionally you can see my DirectX code display.

    This is my exact same issue.

  • The latest inside build fixed this for DirectX. Its still broken on my own engine though unfortunately (flickering, random colors like crazy). I guess I have my work cut out for me trying to find out what changed..

  • Yea... this is definitely still buggy and broke. I'll never be able to solve this without help.

    https://github.com/Microsoft/angle/issues/127

  • mlfarrellmlfarrell
    edited August 25 Accepted Answer

    I'm moving this discussion off of here. Whatever the solution will be be the solution that closes this bug in ANGLE -> https://github.com/Microsoft/angle/issues/127

    Edit: in summary, don't discard RTVs per frame. Update to latest windows insider build. Both of those stopped the colored flicker. My other issues turned out to be engine bugs in my own code.

Sign In or Register to comment.