thoricelli / OculusXRPicoLayer

An attempt to allow Quest games to be playable on PICO.
GNU General Public License v3.0
1 stars 0 forks source link

Can you do a better explanation of the process? #1

Closed Yentrix closed 2 weeks ago

Yentrix commented 2 weeks ago

Can you do a better explanation of the process to transform an application from quest to pico? To do my tests with apks.

When I download it and try to run it I get errors, and I don't know if I am missing dependencies or if I am doing something wrong.

thoricelli commented 2 weeks ago

Hi. Thanks for testing.

Do note this project is very much still a work in progress. I can't guarantee a lot of games will work, Unreal games wont work yet, sadly, only Unity games do. Currently, the best working game is Keep Talking and Nobody Explodes, although, at the start it seems to have an issue with centering.

I was going to eventually write a guide on how to use this with Quest APK's, but I'll probably do that when it is somewhat semi-stable.

Anyways,

You'll want to do the following steps to get a workable APK:

(Optional) For building, you will have to download the Android NDK, you can either do this via the link provided on my README, or download it via Android Studio. Make sure to add the /toolchains/llvm/prebuilt/windows-x86_64/bin folder to your PATH.

You'll need the following files (both from my repo): (Oculus)

(Pico)

Made sure you take the ones I committed to the repo, they have some patched strings/instructions to make them work.

  1. Build or download the required libs via Github Actions.
  2. Decompress the APK file with apktools.
  3. Replace/add the library files into /lib/arm64-v8a
  4. In AndroidManifest.xml, inside of <application>...</application> add:
    <meta-data android:name="pvr.app.type" android:value="vr"/>
  5. Then open /assets/bin/Data/UnitySubsystems/OculusXRPlugin/UnitySubsystemsManifest.json
  6. Set the name to "name": "PxrPlatform",
thoricelli commented 2 weeks ago

Alrighty, so it seems oddly, that older versions of the Android NDK caused errors when compiling with shared libraries... For building, and I'll update this on the README too, you'll need the r21e or 21.4.7075529 version.

I also included a Github Action script, that automatically adds the built libraries. So, now you don't have to build anymore, you can download the compiled files by going to: Actions > Most recent build > Scroll down and download the "build" file.

There you will have the compiled libraries you can replace in your APK.