I’m trying to make a multiplatform game, I have everything prepared fro GearVR and HTC Vive, so far I don’t have any network code, I’m just trying to execute the maps in both platforms, Vive is working perfectly in the PC but in Android when I load the map the app crashes with this error:
[2017.04.28-08.21.36:674] 0]LogStreaming:Error: Couldn't find file for package /Script/SteamVR requested by async loading code. NameToLoad: /Script/SteamVR
[2017.04.28-08.21.36:712] 0]LogStreaming:Error: ****DumpDependencies [Dependencies]:
[2017.04.28-08.21.36:712] 0]LogStreaming:Error: Export 336 SteamVRChaperone_GEN_VARIABLE
[2017.04.28-08.21.36:713] 0]LogStreaming:Error: Linker is ../../../BS_TargetVR/Content/VirtualRealityBP/Blueprints/BP_MotionController.uasset
[2017.04.28-08.21.36:713] 0]LogStreaming:Error: Dep S_BEFORE_S Export 303 BP_MotionController_C (class BlueprintGeneratedClass)
[2017.04.28-08.21.36:713] 0]LogStreaming:Error: Dep C_BEFORE_C Export 303 BP_MotionController_C (class BlueprintGeneratedClass)
I can’t make it running, help is appreciated here because I’m totally lost!
I know that, but then how can I do a multiplatform project?
Because I cannot disable SteamVR plugin for android builds, can’t I?
Cheers!
EDIT: BTW in the android build I’m not using SteamVR, I have an agnostic level where I define different game modes based on the platform, and the error comes when I load that level, I can load an empty level however… any advice regarding this is very welcome since I need to have a prototype of a multiplatorm game for Vive and GearVR in the coming days and I’m a bit stuck with this…
The problem is that SteamVRChaperone is part of the SteamVR plugin, which is not built for other platforms. So when the game tries to load the class for the component it fails.
We intend to refactor to fix this eventually, but likely not for several months. I expect that the component would be pulled from the plugin so it can always load, and then hook into platform specific functionality for whatever platform is active, or do nothing for those that don’t have a chaperone feature.
However I think I have a partial workaround. You can use the ClassRedirects feature, which is normally used to update content as other content and code changes to ignore that component. Ideally in AndroidEngine.ini… but that did not work for me the one time I tried it. DefaultEngine.ini did work.