mirror of
https://github.com/astromaddie/lambda1-vr.git
synced 2026-10-23 12:00:16 +02:00
Add a Steam Frame build type with the Khronos OpenXR loader
The Frame runs Android apps in a container (Lepton) that has no OpenXR loader broker, so the APK needs its own loader. This adds a "frame" build type: ./gradlew assembleFrame. It's release plus: - applicationId .frame, minSdk 30 (the container is Android 11) - a manifest overlay that drops the headtracking requirement and the Quest/Pico metadata, since the install fails with it - the Khronos loader 1.1.63, fetched from Maven Central at build time, checked against a SHA-256 and unpacked into build/ (not committed) - L1VR_STEAM_FRAME for the native code, BuildConfig.STEAM_FRAME for Java Quest builds don't see any of this. I also added the gradle wrapper script to Projects/Android, since the wrapper jar and properties were already there, and -Wall for the VR sources. Haven't run it on the headset yet.
This commit is contained in:
1 parent
99a0d62ebb
commit
b3058f76f6
8 files changed
+407
-7
No files matched your search
@@ -49,13 +49,26 @@ import static android.system.Os.setenv;
|
||||
manufacturer = "meta";
|
||||
}
|
||||
|
||||
try
|
||||
if (BuildConfig.STEAM_FRAME)
|
||||
{
|
||||
//Load manufacturer specific loader
|
||||
System.loadLibrary("openxr_loader_" + manufacturer);
|
||||
setenv("OPENXR_HMD", manufacturer, true);
|
||||
} catch (Exception e)
|
||||
{}
|
||||
//The Frame has no loader broker, so the Khronos loader is in the APK
|
||||
System.loadLibrary("openxr_loader");
|
||||
try
|
||||
{
|
||||
setenv("OPENXR_HMD", "steamframe", true);
|
||||
} catch (Exception e)
|
||||
{}
|
||||
}
|
||||
else
|
||||
{
|
||||
try
|
||||
{
|
||||
//Load manufacturer specific loader
|
||||
System.loadLibrary("openxr_loader_" + manufacturer);
|
||||
setenv("OPENXR_HMD", manufacturer, true);
|
||||
} catch (Exception e)
|
||||
{}
|
||||
}
|
||||
|
||||
System.loadLibrary( "xash" );
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user