Manifest for Linux; connect as Background app where Utility is refused
- manifest.vrmanifest: binary_path_linux and binary_path_linux_arm. The Steam Frame's SteamVR reads only binary_path_linux_arm. - handleManifests(): connect as Utility app first (works without a running SteamVR, e.g. from the Windows installer); if SteamVR refuses Utility apps, as on the Steam Frame, connect as Background app. Fail right away on other errors instead of going through initializeOpenVR()'s retry loop. - main(): check --graphics-api before connecting to OpenVR, so a wrong value fails right away. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5.5
parent
4826686a4d
commit
b22c35ae29
+10
-8
@@ -45,14 +45,8 @@ int main( int argc, char* argv[] )
|
||||
commandLineArgs.forceRemoveManifest );
|
||||
}
|
||||
|
||||
openvr_init::initializeOpenVR(
|
||||
openvr_init::OpenVrInitializationType::Overlay );
|
||||
|
||||
// Render backend (render/RenderBackend.h). Created after OpenVR, because
|
||||
// the Vulkan backend needs SteamVR's device requirements
|
||||
// (openvr_init::renderInterop()), and before OverlayController, because
|
||||
// QQuickWindow::setGraphicsApi() must run before any QQuickWindow exists
|
||||
// (OverlayController owns one).
|
||||
// Render backend (render/RenderBackend.h). Chosen before connecting to
|
||||
// OpenVR, so a wrong --graphics-api fails right away.
|
||||
GraphicsApi graphicsApi = GraphicsApi::OpenGL;
|
||||
if ( !parseGraphicsApi( commandLineArgs.graphicsApi, &graphicsApi ) )
|
||||
{
|
||||
@@ -68,6 +62,14 @@ int main( int argc, char* argv[] )
|
||||
<< "is not compiled into this build";
|
||||
return ReturnErrorCode::GENERAL_FAILURE;
|
||||
}
|
||||
|
||||
openvr_init::initializeOpenVR(
|
||||
openvr_init::OpenVrInitializationType::Overlay );
|
||||
|
||||
// Initialized after OpenVR, because the Vulkan backend needs SteamVR's
|
||||
// device requirements (openvr_init::renderInterop()), and before
|
||||
// OverlayController, because QQuickWindow::setGraphicsApi() must run
|
||||
// before any QQuickWindow exists (OverlayController owns one).
|
||||
QString renderBackendError;
|
||||
if ( !renderBackend->initialize( openvr_init::renderInterop(),
|
||||
&renderBackendError ) )
|
||||
|
||||
Reference in New Issue
Block a user