cancel
Showing results for 
Search instead for 
Did you mean: 

Mobile Avatars SDK - 3/3 Build

Ross_Beef
Heroic Explorer
We've just updated the Mobile Avatars SDK beta (attached)

Please note that this is not yet ready for redistribution and is covered under our existing NDA’s

---

Included in this release:
  • We've implemented a runtime mesh combining in Unity, which reduces draw calls from 11 per Avatar per eye to 3. You can enable mesh combining in the the LocalAvatar settings panel (see screenshot 'combined mesh unity'). Note. Right now this approach isn't threaded, so there's a slight stutter as a new Avatar joins a scene, however we're planning on moving this to its own thread this coming week to remove this hiccup.
  • Optimizations to reduce unnecessary garbage generation by 60%, more to come here.
  • *IMPORTANT* - the .SO file we've included is for development only, and will be removed from future releases, and should not be distributed with your applications. In the shipping version of the avatar SDK, this will be distributed with the oculus platform so that we can patch in enhancements and new content without requiring you to patch your applications. For now, we’re distributing these directly to you so that you can be working with the latest code. In our next build we'll make this transition to locally hosting the SDK and assets and we'll provide you with a build of the Oculus Mobile app to test against (in the interim before this build rolls out to everyone).

Unity integration update instructions (only if upgrading from the builds prior to 2/24, if starting from scratch these are not necessary):
  1. You can now delete the OvrAvatarAssets.zip from the SD card (/sdcard/Oculus/OvrAvatarAssets.zip)
  2. If you haven't made any custom changes to the SDK scripts, just import/replace everything from the new package
  3. If you have made changes, the only new file you'll need to merge/solve-conflicts is OvrAvatarSDKCAPI.cs
  4. You can delete the old libavatarsdk.so file from Plugins/Android/libs/armeabi-v7/libavatarsdk.so, the new file is named "libovravatar.so"

As always, please let me know if you have any issues, feedback or suggestions.

Have a great weekend!

Mike Howard
27 REPLIES 27

twong_hulu
Explorer
Thanks for the update! I get this though when I try to run on startup... any ideas on what it might be? Has the assets .zip file been replaced with unzipped data now?


03-06 09:39:19.153   934   934 F DEBUG   : *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
03-06 09:39:19.153   934   934 F DEBUG   : Build fingerprint: 'samsung/heroqlteuc/heroqlteatt:6.0.1/MMB29M/G930AUCU1APB5:user/release-keys'
03-06 09:39:19.153   934   934 F DEBUG   : Revision: '14'
03-06 09:39:19.153   934   934 F DEBUG   : ABI: 'arm'
03-06 09:39:19.153   934   934 F DEBUG   : pid: 19720, tid: 19855, name: Thread-468  >>> com.hulu.huluvr <<<
03-06 09:39:19.153   934   934 F DEBUG   : signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0x88
03-06 09:39:19.203   934   934 F DEBUG   :     r0 2fcaca55  r1 0003f103  r2 00000000  r3 00000001
03-06 09:39:19.203   934   934 F DEBUG   :     r4 0003f103  r5 2fcaca55  r6 c8aff454  r7 00000001
03-06 09:39:19.203   934   934 F DEBUG   :     r8 c8b14558  r9 c8b14600  sl c8dfbc90  fp c8aff348
03-06 09:39:19.203   934   934 F DEBUG   :     ip c8db0e94  sp c8aff2a0  lr c8bd537c  pc c8bd2fdc  cpsr 200f0010
03-06 09:39:19.203   934   934 F DEBUG   :
03-06 09:39:19.203   934   934 F DEBUG   : backtrace:
03-06 09:39:19.203   934   934 F DEBUG   :     #00 pc 0007dfdc  /data/app/com.hulu.huluvr-1/lib/arm/libovravatar.so (ovrAvatarSpecificationLoader_GetFallback(unsigned long long)+72)
03-06 09:39:19.203   934   934 F DEBUG   :     #01 pc 00080378  /data/app/com.hulu.huluvr-1/lib/arm/libovravatar.so (ovrAvatarWebRequest_GetAvatarSpecification(unsigned long long)+96)
03-06 09:39:19.203   934   934 F DEBUG   :     #02 pc 0007eed8  /data/app/com.hulu.huluvr-1/lib/arm/libovravatar.so (GetAvatarSpecificationTask::Process()+16)
03-06 09:39:19.203   934   934 F DEBUG   :     #03 pc 0007f290  /data/app/com.hulu.huluvr-1/lib/arm/libovravatar.so
03-06 09:39:19.203   934   934 F DEBUG   :     #04 pc 000b21d3  /data/app/com.hulu.huluvr-1/lib/arm/libovravatar.so
03-06 09:39:19.203   934   934 F DEBUG   :     #05 pc 0003fa1b  /system/lib/libc.so (__pthread_start(void*)+30)
03-06 09:39:19.203   934   934 F DEBUG   :     #06 pc 0001a065  /system/lib/libc.so (__start_thread+6)
03-06 09:39:19.413 13322 13417 I OVRPlatform: [FBNS] ClientImpl.cpp:393 Client FBNS6aZTkUfe7IUKvCcwMy1 received PUBLISH (d0, q1, r0, m45, '/fbns_msg', ... (744 bytes))
03-06 09:39:19.423 13322 13417 E OVRService: getPackagesForUid: [com.oculus.horizon, com.oculus.home]


cerm
Protege
Yes, have you imported the Plugins/Android/assets/avatars/ folder from the last package?
Are you using Unity integration or native?

twong_hulu
Explorer
Yes I already had the previous SDK working fine. I'm using the Unity integration.

cerm
Protege
In your Unity project, do you have the "Plugins/Android/assets/avatars/" folder or just the "Plugins/Android/assets/OvrAvatarAssets.zip" file?
You will need the former, which you can import from the OvrAvatar.unitypackage included in the ZIP attached to this thread.

twong_hulu
Explorer
I have the avatars folder, not the zip file.

twong_hulu
Explorer
Aha! I guess the avatars folder needs to be in that exact path. I had an extra assets folder in the path, but once I removed it it runs!

Thanks!!

GEMISIS
Adventurer
Hey guys,
So testing out this new build, it looks like I can't test on Windows anymore?  Unity crashes the instant I try to run my scenes with any Avatars in it.  Looks to be something with how the ovravatar DLL is loaded..

GEMISIS
Adventurer
To clarify as well, it does not crash on the device itself, just when testing in the Unity editor.

Ross_Beef
Heroic Explorer
Hey @GEMISIS - the mobile SDK includes optimizations that won't yet have landed in the PC update; for now. As such the unity integration is hitting headers that haven't yet rolled out such that the PC / Unity build could use them.

We're looking into how we could ship everyone a sideloaded PC DLL, so it's possible to continue development against both with the optimizations that are due to hit in the next PC update