microsoft / OpenXR-MixedReality

OpenXR samples and preview headers for HoloLens and Windows Mixed Reality developers familiar with Visual Studio
https://aka.ms/openxr
MIT License
339 stars 96 forks source link

Compiling Issue #18

Closed PyroFlareX closed 5 years ago

PyroFlareX commented 5 years ago

I loaded up the solution and tried to compile the program. It did compile successfully, but when I ran the program, I got an error. This is what I got:

Unhandled exception at 0x00007FF9A8F1A388 in BasicXrApp_win32.exe: Microsoft C++ exception: std::logic_error at memory location 0x0000008AAE9CEED8. occurred

How to fix? I am trying to understand how to use OpenXR via this example, but am stuck. Thanks in advance! (Using VS2017 btw)

naseradd commented 5 years ago

Hi, I got the same issue as yours. Tried with VS2019 and VS2017 got the same problem. Someone have a fix ? Thanks :)

PyroFlareX commented 5 years ago

I've been looking things up, and I believe I found the issue. I haven't tested it yet so I'm not certain, but maybe a runtime needs to be installed. I believed this would work with my Vive, but idk if there is an OpenXR runtime available yet.

naseradd commented 5 years ago

Trying to deploying on Hololens 1.0 , got the same issue unfortunately

yl-msft commented 5 years ago

@PyroFlareX and @naseradd , Thanks for trying this out. Please find instructions on http://aka.ms/openxr for how to try this OpenXR sample with windows mixed reality headsets or Hololens 2. If you don't have devices, there are instructions on how to install simulator or emulator to get code running. It doesn't work with Vive or Hololens 1.

yl-msft commented 5 years ago

BTW: the reported issue sounds unrelated to compiling, since both of you can run the sample app.

You can also look into the debugger output window. Does it display: "No headset detected. Trying again in one second..."? If so you need to connect a supported headset to your computer.

It can be more helpful if you can paste the call stack when error happens. Thanks.

naseradd commented 5 years ago

Here is the call stack (sorry for the french langage) @yl-msft :


KernelBase.dll!768c3442()   Inconnu
[Les frames ci-dessous sont peut-être incorrects et/ou manquants, aucun symbole chargé pour KernelBase.dll] Inconnu
[Code externe]  

BasicXrApp_win32.exe!xr::detail::_Throw(std::basic_string<char,std::char_traits,std::allocator > failureMessage, const char originator, const char sourceLocation) Ligne 62 C++ BasicXrApp_win32.exe!xr::detail::_ThrowXrResult(XrResult res, const char originator, const char sourceLocation) Ligne 80 C++ BasicXrApp_win32.exe!xr::detail::_CheckXrResult(XrResult res, const char originator, const char sourceLocation) Ligne 87 C++ BasicXrApp_win32.exe!anonymous namespace'::OpenXrProgram::SelectExtensions() Ligne 83 C++ BasicXrApp_win32.exe!anonymous namespace'::OpenXrProgram::CreateInstance() Ligne 67 C++ BasicXrApp_win32.exe!`anonymous namespace'::OpenXrProgram::Run() Ligne 32 C++ BasicXrApp_win32.exe!wWinMain(HINSTANCE * formal, HINSTANCE * formal, wchar_t * formal, int formal) Ligne 29 C++ [Code externe]

yl-msft commented 5 years ago

@naseradd Given this call stack, i suspect you've not activate the runtime yet. Please follow instruction at this link.

Specifically, if you install the Mixed Reality OpenXR Developer Portal app, do you see screen like following? If so, click "Set as active runtime" will fix the problem for you. image

naseradd commented 5 years ago

OK thank you, stupid mistake on my part ahah. But I thought than OpenXR was usable for all kinds of VR and AR headset ?

image

I actually develop something in VR with UE4 for test and want to deploy at the end of Hololens 2.0. But actually I'll do a stream remoting on Hololens 1.0 using UE4. I saw that UE4 haver a plugin OpenXR. Is it impossible to deploy something in VR with Oculus Rift or HTC Vive or remoting with Hololens 1.0 ?

We can fix this issue I think and then I'll contact you by email for my personal questions.

Thanks a lot

yl-msft commented 5 years ago

OpenXR runtime for Mixed Reality currently only support Windows MR headset and Hololens 2. Please see instructions on http://aka.ms/openxr to use simulation or emulator to test OpenXR apps when you don't have a headset yet.