BeepSaber icon indicating copy to clipboard operation
BeepSaber copied to clipboard

Not Starting on Quest

Open Slash-Kill opened this issue 2 years ago • 9 comments

When I Launch BeepSaber on my Quest 2 it is just a black screen.

Slash-Kill avatar Aug 05 '22 20:08 Slash-Kill

Are you using the .apk from the github releases or are you trying to launch from godot using the master branch? Could you try and see if adb shows some meaningfull error messages?: for example useing adb logcat -s godot:* GodotOVRMobile:*

NeoSpark314 avatar Aug 06 '22 09:08 NeoSpark314

I downloaded the .apk from the GitHub releases. I also tried running it by downloading the source code and running it in Godot using the SteamVR plugin, and got the same result.

Slash-Kill avatar Aug 06 '22 19:08 Slash-Kill

I'm getting the same thing (black screen). Here's what it says when I run the command you gave in your example: adb logcat -s godot:* GodotOVRMobile:* zsh: no matches found: godot:*

I tried starting it using adb and this is what it shows: adb shell monkey -p org.dammertz.vr.godot_beep_saber -c android.intent.category.LAUNCHER 1 bash arg: -p bash arg: org.dammertz.vr.godot_beep_saber bash arg: -c bash arg: android.intent.category.LAUNCHER bash arg: 1 args: [-p, org.dammertz.vr.godot_beep_saber, -c, android.intent.category.LAUNCHER, 1] arg: "-p" arg: "org.dammertz.vr.godot_beep_saber" arg: "-c" arg: "android.intent.category.LAUNCHER" arg: "1" data="org.dammertz.vr.godot_beep_saber" data="android.intent.category.LAUNCHER" ** No activities found to run, monkey aborted.

I don't really know what I'm doing, so if I can do this differently let me know.

renardroux avatar Oct 06 '22 07:10 renardroux

I have the same issue on the Quest 2. Is there something else I need to install?

edent avatar Nov 29 '22 07:11 edent

All versions in GitHub Releases have this issue on Quest 2, presumably because of an error that occurs while loading the splash screen texture.

Full adb output:
09-18 18:12:47.718  6923  6950 I godot   : Godot Engine v3.2.4.VoxelWorks.custom_build.58aaf19d2 - https://godotengine.org
09-18 18:12:47.724  6923  6950 I godot   : OpenGL ES 2.0 Renderer: Adreno (TM) 650
09-18 18:12:47.744  6923  6950 I godot   : OpenGL ES 2.0 Batching: ON
09-18 18:12:47.749  6923  6950 I godot   :  
09-18 18:12:47.860  6923  6950 V GodotOVRMobile: Creating OVR Mobile session.
09-18 18:12:47.972  6923  6950 I godot   : Initializing VR
09-18 18:12:47.973  6923  6950 I godot   :   Available Interfaces are [{id:0, name:OVRMobile}, {id:1, name:Native mobile}]: 
09-18 18:12:47.973  6923  6950 I godot   :   Found OVRMobile Interface.
09-18 18:12:47.973  6923  6950 V GodotOVRMobile: OvrMobileSession::initialize() called
09-18 18:12:48.312  6923  6950 V GodotOVRMobile:  vrapi version string: '1.1.73.0-505990233-505990233 Aug 16 2023 16:35:32 Development'
09-18 18:12:48.312  6923  6950 V GodotOVRMobile:    render target size multiplier: 1.000000
09-18 18:12:48.312  6923  6950 V GodotOVRMobile:    vrapi render target size: w 1440 / h 1584
09-18 18:12:48.323  6923  6950 V GodotOVRMobile:     Create Framebuffer(...): mTextureSwapChainLength=3
09-18 18:12:48.330  6923  6950 V GodotOVRMobile:     Create Framebuffer(...): mTextureSwapChainLength=3
09-18 18:12:48.400  6923  6950 V GodotOVRMobile: Entered Oculus Mobile VR mode.
09-18 18:12:48.400  6923  6950 V GodotOVRMobile: 		vrapi_SetPerfThread( RENDERER, 6950 )
09-18 18:12:48.405  6923  6950 I godot   : _refresh_settings()
09-18 18:12:48.411  6923  6950 I godot   :   Success initializing OVRMobile Interface.
09-18 18:12:48.411  6923  6950 I godot   : _perform_switch_scene to res://game/GodotSplash.tscn
09-18 18:12:48.419  6923  6950 E godot   : **ERROR**: Condition "!f" is true. Returned: ERR_CANT_OPEN
09-18 18:12:48.419  6923  6950 E godot   :    At: scene\resources\texture.cpp:502:_load_data() - Condition "!f" is true. Returned: ERR_CANT_OPEN
09-18 18:12:48.419  6923  6950 E godot   : **ERROR**: Failed loading resource: res://.import/godot_splash_512.png-13f9fa0a27fba044c612778c1d2a33ae.s3tc.stex. Make sure resources have been imported by opening the project in the editor at least once.
09-18 18:12:48.419  6923  6950 E godot   :    At: core\io\resource_loader.cpp:279:_load() - Condition "found" is true. Returned: RES()
09-18 18:12:48.419  6923  6950 E godot   : **ERROR**: Failed loading resource: res://OQ_Toolkit/OQ_UI2D/theme/godot_splash_512.png. Make sure resources have been imported by opening the project in the editor at least once.
09-18 18:12:48.419  6923  6950 E godot   :    At: core\io\resource_loader.cpp:279:_load() - Condition "found" is true. Returned: RES()
09-18 18:12:48.419  6923  6950 E godot   : **ERROR**: res://OQ_Toolkit/OQ_Helpers/OQ_SplashScreen.tscn:3 - Parse Error: [ext_resource] referenced nonexistent resource at: res://OQ_Toolkit/OQ_UI2D/theme/godot_splash_512.png
09-18 18:12:48.419  6923  6950 E godot   :    At: scene\resources\resource_format_text.cpp:440:poll() - res://OQ_Toolkit/OQ_Helpers/OQ_SplashScreen.tscn:3 - Parse Error: [ext_resource] referenced nonexistent resource at: res://OQ_Toolkit/OQ_UI2D/theme/godot_splash_512.png
09-18 18:12:48.419  6923  6950 E godot   : **ERROR**: Failed to load resource 'res://OQ_Toolkit/OQ_Helpers/OQ_SplashScreen.tscn'.
09-18 18:12:48.419  6923  6950 E godot   :    At: core\io\resource_loader.cpp:208:load() - Condition "err != OK" is true. Returned: RES()
09-18 18:12:48.419  6923  6950 E godot   : **ERROR**: Failed loading resource: res://OQ_Toolkit/OQ_Helpers/OQ_SplashScreen.tscn. Make sure resources have been imported by opening the project in the editor at least once.
09-18 18:12:48.419  6923  6950 E godot   :    At: core\io\resource_loader.cpp:279:_load() - Condition "found" is true. Returned: RES()
09-18 18:12:48.419  6923  6950 E godot   : **ERROR**: res://game/GodotSplash.tscn:7 - Parse Error: [ext_resource] referenced nonexistent resource at: res://OQ_Toolkit/OQ_Helpers/OQ_SplashScreen.tscn
09-18 18:12:48.419  6923  6950 E godot   :    At: scene\resources\resource_format_text.cpp:440:poll() - res://game/GodotSplash.tscn:7 - Parse Error: [ext_resource] referenced nonexistent resource at: res://OQ_Toolkit/OQ_Helpers/OQ_SplashScreen.tscn
09-18 18:12:48.419  6923  6950 E godot   : **ERROR**: Failed to load resource 'res://game/GodotSplash.tscn'.
09-18 18:12:48.419  6923  6950 E godot   :    At: core\io\resource_loader.cpp:208:load() - Condition "err != OK" is true. Returned: RES()
09-18 18:12:48.420  6923  6950 E godot   : **ERROR**: Failed loading resource: res://game/GodotSplash.tscn. Make sure resources have been imported by opening the project in the editor at least once.
09-18 18:12:48.420  6923  6950 E godot   :    At: core\io\resource_loader.cpp:279:_load() - Condition "found" is true. Returned: RES()
09-18 18:12:48.420  6923  6950 I godot   : ERROR: : could not load scene 'res://game/GodotSplash.tscn'
09-18 18:12:48.596  6923  6950 V GodotOVRMobile: Updated Controller 'Oculus Touch Left Controller' (Godot id 1; Oculus id 0)
09-18 18:12:48.596  6923  6950 V GodotOVRMobile: Updated Controller 'Oculus Touch Right Controller' (Godot id 2; Oculus id 1)
09-18 18:12:48.622  6923  6950 I godot   : _perform_switch_scene to res://game/BeepSaber_Game.tscn
09-18 18:12:48.671  6923  6950 E godot   : **ERROR**: Condition "!f" is true. Returned: ERR_CANT_OPEN
09-18 18:12:48.671  6923  6950 E godot   :    At: scene\resources\texture.cpp:502:_load_data() - Condition "!f" is true. Returned: ERR_CANT_OPEN
09-18 18:12:48.671  6923  6950 E godot   : **ERROR**: Failed loading resource: res://.import/BeepCube_Emission.png-4718fe8807143be756879824c06c3f2e.s3tc.stex. Make sure resources have been imported by opening the project in the editor at least once.
09-18 18:12:48.671  6923  6950 E godot   :    At: core\io\resource_loader.cpp:279:_load() - Condition "found" is true. Returned: RES()
09-18 18:12:48.671  6923  6950 E godot   : **ERROR**: Failed loading resource: res://game/data/BeepCube_Emission.png. Make sure resources have been imported by opening the project in the editor at least once.
09-18 18:12:48.671  6923  6950 E godot   :    At: core\io\resource_loader.cpp:279:_load() - Condition "found" is true. Returned: RES()
09-18 18:12:48.671  6923  6950 E godot   : **ERROR**: Can't load dependency: res://game/data/BeepCube_Emission.png.
09-18 18:12:48.671  6923  6950 E godot   :    At: core\io\resource_format_binary.cpp:655:poll() - Method failed. Returning: error
09-18 18:12:48.671  6923  6950 E godot   : **ERROR**: Failed to load resource 'res://game/BeepCube_new_material.material'.
09-18 18:12:48.671  6923  6950 E godot   :    At: core\io\resource_loader.cpp:208:load() - Condition "err != OK" is true. Returned: RES()
09-18 18:12:48.671  6923  6950 E godot   : **ERROR**: Failed loading resource: res://game/BeepCube_new_material.material. Make sure resources have been imported by opening the project in the editor at least once.
09-18 18:12:48.671  6923  6950 E godot   :    At: core\io\resource_loader.cpp:279:_load() - Condition "found" is true. Returned: RES()
09-18 18:12:48.671  6923  6950 E godot   : **ERROR**: res://game/BeepCube.tscn:5 - Parse Error: [ext_resource] referenced nonexistent resource at: res://game/BeepCube_new_material.material
09-18 18:12:48.671  6923  6950 E godot   :    At: scene\resources\resource_format_text.cpp:440:poll() - res://game/BeepCube.tscn:5 - Parse Error: [ext_resource] referenced nonexistent resource at: res://game/BeepCube_new_material.material
09-18 18:12:48.671  6923  6950 E godot   : **ERROR**: Failed to load resource 'res://game/BeepCube.tscn'.
09-18 18:12:48.671  6923  6950 E godot   :    At: core\io\resource_loader.cpp:208:load() - Condition "err != OK" is true. Returned: RES()
09-18 18:12:48.671  6923  6950 E godot   : **ERROR**: Failed loading resource: res://game/BeepCube.tscn. Make sure resources have been imported by opening the project in the editor at least once.
09-18 18:12:48.671  6923  6950 E godot   :    At: core\io\resource_loader.cpp:279:_load() - Condition "found" is true. Returned: RES()
09-18 18:12:48.672  6923  6950 E godot   : **SCRIPT ERROR**: Parse Error: Can't preload resource at path: res://game/BeepCube.tscn
09-18 18:12:48.672  6923  6950 E godot   :    At: res://game/BeepSaber_Game.gd:13:GDScript::reload() - Parse Error: Can't preload resource at path: res://game/BeepCube.tscn
09-18 18:12:48.672  6923  6950 E godot   : **ERROR**: Method failed. Returning: ERR_PARSE_ERROR
09-18 18:12:48.672  6923  6950 E godot   :    At: modules\gdscript\gdscript.cpp:599:reload() - Method failed. Returning: ERR_PARSE_ERROR
09-18 18:12:48.694  6923  6950 E godot   : **ERROR**: Condition "!f" is true. Returned: ERR_CANT_OPEN
09-18 18:12:48.694  6923  6950 E godot   :    At: scene\resources\texture.cpp:502:_load_data() - Condition "!f" is true. Returned: ERR_CANT_OPEN
09-18 18:12:48.694  6923  6950 E godot   : **ERROR**: Failed loading resource: res://.import/beepsaber_logo.png-13130700089e6a561f233df12ecc3d23.s3tc.stex. Make sure resources have been imported by opening the project in the editor at least once.
09-18 18:12:48.694  6923  6950 E godot   :    At: core\io\resource_loader.cpp:279:_load() - Condition "found" is true. Returned: RES()
09-18 18:12:48.694  6923  6950 E godot   : **ERROR**: Failed loading resource: res://game/data/beepsaber_logo.png. Make sure resources have been imported by opening the project in the editor at least once.
09-18 18:12:48.695  6923  6950 E godot   :    At: core\io\resource_loader.cpp:279:_load() - Condition "found" is true. Returned: RES()
09-18 18:12:48.695  6923  6950 E godot   : **ERROR**: res://game/BeepSaberMainMenu.tscn:4 - Parse Error: [ext_resource] referenced nonexistent resource at: res://game/data/beepsaber_logo.png
09-18 18:12:48.695  6923  6950 E godot   :    At: scene\resources\resource_format_text.cpp:440:poll() - res://game/BeepSaberMainMenu.tscn:4 - Parse Error: [ext_resource] referenced nonexistent resource at: res://game/data/beepsaber_logo.png
09-18 18:12:48.695  6923  6950 E godot   : **ERROR**: Failed to load resource 'res://game/BeepSaberMainMenu.tscn'.
09-18 18:12:48.695  6923  6950 E godot   :    At: core\io\resource_loader.cpp:208:load() - Condition "err != OK" is true. Returned: RES()
09-18 18:12:48.695  6923  6950 E godot   : **ERROR**: Failed loading resource: res://game/BeepSaberMainMenu.tscn. Make sure resources have been imported by opening the project in the editor at least once.
09-18 18:12:48.695  6923  6950 E godot   :    At: core\io\resource_loader.cpp:279:_load() - Condition "found" is true. Returned: RES()
09-18 18:12:48.695  6923  6950 E godot   : **ERROR**: res://game/BeepSaber_Game.tscn:13 - Parse Error: [ext_resource] referenced nonexistent resource at: res://game/BeepSaberMainMenu.tscn
09-18 18:12:48.695  6923  6950 E godot   :    At: scene\resources\resource_format_text.cpp:440:poll() - res://game/BeepSaber_Game.tscn:13 - Parse Error: [ext_resource] referenced nonexistent resource at: res://game/BeepSaberMainMenu.tscn
09-18 18:12:48.695  6923  6950 E godot   : **ERROR**: Failed to load resource 'res://game/BeepSaber_Game.tscn'.
09-18 18:12:48.695  6923  6950 E godot   :    At: core\io\resource_loader.cpp:208:load() - Condition "err != OK" is true. Returned: RES()
09-18 18:12:48.696  6923  6950 E godot   : **ERROR**: Failed loading resource: res://game/BeepSaber_Game.tscn. Make sure resources have been imported by opening the project in the editor at least once.
09-18 18:12:48.696  6923  6950 E godot   :    At: core\io\resource_loader.cpp:279:_load() - Condition "found" is true. Returned: RES()
09-18 18:12:48.696  6923  6950 I godot   : ERROR: : could not load scene 'res://game/BeepSaber_Game.tscn'

necrashter avatar Sep 18 '23 15:09 necrashter

All versions in GitHub Releases have this issue on Quest 2, presumably because of an error that occurs while loading the splash screen texture.

seems like something in recent Quest updates have broke it, you can use this fork that is ported to godot 4 and openxr: https://github.com/leandrodreamer/BeepSaber/releases

(i keep it on my own fork because most of OQ_Toolkit is not ported)

leandrodreamer avatar Sep 18 '23 18:09 leandrodreamer

Thank you, @leandrodreamer ! Your port works like a charm.

Before your post, I tried building 3.x version of Beep Saber myself using Godot 3.5.2. I followed these instructions on how to deploy the Oculus Mobile Godot plugin, but it didn't work. However I don't think it's worthwhile to debug the issue since Oculus Mobile plugin is deprecated and you've already ported the game to Godot 4 and OpenXR.

If anyone is curious about how Godot 3.x performs on Quest 2, this release of Godot Oculus Quest Toolkit contains a Beep Saber demo and it works on Quest 2.

@leandrodreamer if you have free time, I kindly encourage you to work on your Beep Saber fork. Or at least you can briefly describe what needs to be done about OQ_Toolkit so that others can continue. I think it might be better to continue the development in a separate repository since the original developer @NeoSpark314 seems to be inactive. Also I like how you renamed the game to "OpenSaber" in your fork, it fits better.

necrashter avatar Sep 18 '23 19:09 necrashter

@leandrodreamer that works brilliantly on the Quest 2 - thanks :-)

edent avatar Sep 18 '23 19:09 edent

Before your post, I tried building 3.x version of Beep Saber myself using Godot 3.5.2. I followed these instructions on how to deploy the Oculus Mobile Godot plugin, but it didn't work. However I don't think it's worthwhile to debug the issue since Oculus Mobile plugin is deprecated and you've already ported the game to Godot 4 and OpenXR.

i managed to port it myself to godot 3.5.2 by replacing oculus mobile with openxr, but again a lot of OQ_toolkit depends on it and also performance is not as good as it is in godot 4

leandrodreamer avatar Sep 18 '23 20:09 leandrodreamer