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):
You can now delete the OvrAvatarAssets.zip from the SD card (/sdcard/Oculus/OvrAvatarAssets.zip)
If you haven't made any custom changes to the SDK scripts, just import/replace everything from the new package
If you have made changes, the only new file you'll need to merge/solve-conflicts is OvrAvatarSDKCAPI.cs
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.
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]
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.
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..
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