Jump to content

Unreal Engine 4.26 - WaveVR Plugin Issues


Luky

Recommended Posts

Hey,
I'm very happy to get in touch and also hopefully get some feedback/help. We are currently experiencing couple of issues when porting our application to Focus 3 using the WaveVR plugin for Unreal Engine. We might be able to workaround some of them but it would be great to know if they are known, solved or any thoughts on the matter.

Setup
Unreal Engine 4.26 - WaveVR Plugin 4.1.1-r.3.1 - OpenGL ES rendering backend
VIVE Focus 3 Devkit - system 2.0.999.132 kernel 4.19.81-perf-dirty

Issues

  1. Whenever a Text Input field is focused an overlay input box appears and the screen darkens even though we have our virtual keyboard input system in place. Also this overlay is not properly stereoscopically rendered, appears in both eyes separately and is flipped upside down. We could never see it whole but it looks like some blank default with just an Input field and OK/Cancel Buttons.
  2. I struggled to connect our DevKit to the PC correctly only to find out that some of USB ports don't interface with the device at all. There is a post on this forums that mentions that system version 3.+ would solve this issue and should be already release. The post was quite old and my device is still telling me that it is running the latest version of the system which is 2.0.999.132. Do I have an outdated device?
  3. Changing WorldToMeters setting in the WorldSettings does not update the HMD transformation. We are using this value on other platforms to scale the world around the player up or down appropriately to his needs.
  4. Is there a way to debug running application on the device?
  5. Our shipping builds are randomly crashing in the OpenGL ES rendering backend. This is the issue we might not be able to workaround and I'm struggling to find out what is causing it. It looks like texture streaming code might suffer some race condition? Our project doesn't use anything fancy, no complex materials, only simple opaque and masked, no crazy texture swapping or custom render passes. The engine is clean without modifications. Any clue or idea is very welcome.
    07-27 21:18:42.423 25459 25459 F DEBUG   : Build fingerprint: 'HTC/kona/kona:10/QKQ1.210319.001/2557:user/release-keys'
    07-27 21:18:42.423 25459 25459 F DEBUG   : Revision: '0'
    07-27 21:18:42.423 25459 25459 F DEBUG   : ABI: 'arm64'
    07-27 21:18:42.424 25459 25459 F DEBUG   : Timestamp: 2021-07-27 21:18:42+0200
    07-27 21:18:42.424 25459 25459 F DEBUG   : pid: 23105, tid: 23289, name: RenderThread  >>> com.mai.bodymap <<<
    07-27 21:18:42.424 25459 25459 F DEBUG   : uid: 10138
    07-27 21:18:42.424 25459 25459 F DEBUG   : signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0x8
    07-27 21:18:42.424 25459 25459 F DEBUG   : Cause: null pointer dereference
    07-27 21:18:42.424 25459 25459 F DEBUG   :     x0  0000000000000000  x1  0000007d99794240  x2  0000000000000000  x3  0000000000000000
    07-27 21:18:42.424 25459 25459 F DEBUG   :     x4  0000007cd3dc0580  x5  0000000000000000  x6  00000000ffff7aea  x7  00000000ffff7aeb
    07-27 21:18:42.424 25459 25459 F DEBUG   :     x8  0000000000000000  x9  0000000000000000  x10 0000000000000001  x11 0000000000000058
    07-27 21:18:42.424 25459 25459 F DEBUG   :     x12 0000007d310cd1e8  x13 0000007cd3dc0580  x14 00000000ffff88cb  x15 000000000000806f
    07-27 21:18:42.424 25459 25459 F DEBUG   :     x16 0000007d9144ad58  x17 0000007e2d83d080  x18 0000000000000038  x19 0000007d99794240
    07-27 21:18:42.424 25459 25459 F DEBUG   :     x20 0000007d310cb140  x21 0000007d08c5f708  x22 0000000000000001  x23 0000000000000000
    07-27 21:18:42.424 25459 25459 F DEBUG   :     x24 0000000000000000  x25 0000000000000001  x26 0000000000000000  x27 00000000ffffffff
    07-27 21:18:42.424 25459 25459 F DEBUG   :     x28 0000000000000000  x29 0000007d08c5f6e0
    07-27 21:18:42.424 25459 25459 F DEBUG   :     sp  0000007d08c5f550  lr  0000007d911db3b8  pc  0000007d911db3d8
    07-27 21:18:42.487 25459 25459 F DEBUG   :
    07-27 21:18:42.487 25459 25459 F DEBUG   : backtrace:
    07-27 21:18:42.487 25459 25459 F DEBUG   :       #00 pc 000000000020e3d8  /vendor/lib64/egl/libGLESv2_adreno.so (!!!0000!4ecf3032464df959aad423cba1a73c!6a8731606c!+456) (BuildId: 3331a15a9595b2e7053655a8f2b8b19b)
    07-27 21:18:42.487 25459 25459 F DEBUG   :       #01 pc 0000000000225eac  /vendor/lib64/egl/libGLESv2_adreno.so (!!!0000!8a230fae9f27181d9d97eb278ea540!6a8731606c!+220) (BuildId: 3331a15a9595b2e7053655a8f2b8b19b)
    07-27 21:18:42.487 25459 25459 F DEBUG   :       #02 pc 0000000000131188  /vendor/lib64/egl/libGLESv2_adreno.so (glCompressedTexSubImage2D+144) (BuildId: 3331a15a9595b2e7053655a8f2b8b19b)
    07-27 21:18:42.487 25459 25459 F DEBUG   :       #03 pc 00000000089429e4  /data/app/com.mai.bodymap-962817ni2jt3PKrf6AU6bw==/lib/arm64/libUE4.so (TOpenGLTexture<FOpenGLBaseTexture2D>::Unlock(unsigned int, unsigned int)+580) (BuildId: 6c875daccdc7e65c57d4cc0664fa4156f17e40d0)
    07-27 21:18:42.487 25459 25459 F DEBUG   :       #04 pc 0000000008946b94  /data/app/com.mai.bodymap-962817ni2jt3PKrf6AU6bw==/lib/arm64/libUE4.so (FOpenGLDynamicRHI::UnlockTexture2D_RenderThread(FRHICommandListImmediate&, FRHITexture2D*, unsigned int, bool, bool)+768) (BuildId: 6c875daccdc7e65c57d4cc0664fa4156f17e40d0)
    07-27 21:18:42.487 25459 25459 F DEBUG   :       #05 pc 00000000083560d4  /data/app/com.mai.bodymap-962817ni2jt3PKrf6AU6bw==/lib/arm64/libUE4.so (FTexture2DStreamIn::DoUnlockNewMips(FTexture2DUpdateContext const&)+188) (BuildId: 6c875daccdc7e65c57d4cc0664fa4156f17e40d0)
    07-27 21:18:42.487 25459 25459 F DEBUG   :       #06 pc 0000000008368fd4  /data/app/com.mai.bodymap-962817ni2jt3PKrf6AU6bw==/lib/arm64/libUE4.so (FTexture2DStreamIn_IO_AsyncReallocate::Finalize(FTexture2DUpdateContext const&)+180) (BuildId: 6c875daccdc7e65c57d4cc0664fa4156f17e40d0)
    07-27 21:18:42.487 25459 25459 F DEBUG   :       #07 pc 000000000836aa00  /data/app/com.mai.bodymap-962817ni2jt3PKrf6AU6bw==/lib/arm64/libUE4.so (TRenderAssetUpdate<FTexture2DUpdateContext>::TickInternal(FRenderAssetUpdate::EThreadType, bool)+528) (BuildId: 6c875daccdc7e65c57d4cc0664fa4156f17e40d0)
    07-27 21:18:42.487 25459 25459 F DEBUG   :       #08 pc 0000000008360e3c  /data/app/com.mai.bodymap-962817ni2jt3PKrf6AU6bw==/lib/arm64/libUE4.so (BuildId: 6c875daccdc7e65c57d4cc0664fa4156f17e40d0)
    07-27 21:18:42.487 25459 25459 F DEBUG   :       #09 pc 0000000008360f9c  /data/app/com.mai.bodymap-962817ni2jt3PKrf6AU6bw==/lib/arm64/libUE4.so (BuildId: 6c875daccdc7e65c57d4cc0664fa4156f17e40d0)
    07-27 21:18:42.487 25459 25459 F DEBUG   :       #10 pc 0000000005b92e58  /data/app/com.mai.bodymap-962817ni2jt3PKrf6AU6bw==/lib/arm64/libUE4.so (FNamedTaskThread::ProcessTasksNamedThread(int, bool)+244) (BuildId: 6c875daccdc7e65c57d4cc0664fa4156f17e40d0)
    07-27 21:18:42.487 25459 25459 F DEBUG   :       #11 pc 0000000005b929d8  /data/app/com.mai.bodymap-962817ni2jt3PKrf6AU6bw==/lib/arm64/libUE4.so (FNamedTaskThread::ProcessTasksUntilQuit(int)+108) (BuildId: 6c875daccdc7e65c57d4cc0664fa4156f17e40d0)
    07-27 21:18:42.487 25459 25459 F DEBUG   :       #12 pc 00000000065d607c  /data/app/com.mai.bodymap-962817ni2jt3PKrf6AU6bw==/lib/arm64/libUE4.so (FRenderingThread::Run()+132) (BuildId: 6c875daccdc7e65c57d4cc0664fa4156f17e40d0)
    07-27 21:18:42.487 25459 25459 F DEBUG   :       #13 pc 0000000005c090a0  /data/app/com.mai.bodymap-962817ni2jt3PKrf6AU6bw==/lib/arm64/libUE4.so (FRunnableThreadPThread::Run()+96) (BuildId: 6c875daccdc7e65c57d4cc0664fa4156f17e40d0)
    07-27 21:18:42.487 25459 25459 F DEBUG   :       #14 pc 0000000005b91530  /data/app/com.mai.bodymap-962817ni2jt3PKrf6AU6bw==/lib/arm64/libUE4.so (FRunnableThreadPThread::_ThreadProc(void*)+68) (BuildId: 6c875daccdc7e65c57d4cc0664fa4156f17e40d0)
    07-27 21:18:42.487 25459 25459 F DEBUG   :       #15 pc 00000000000e68a0  /apex/com.android.runtime/lib64/bionic/libc.so (__pthread_start(void*)+36) (BuildId: 21847aa9757f000b0461310a9f5e6e51)
    07-27 21:18:42.487 25459 25459 F DEBUG   :       #16 pc 0000000000084b6c  /apex/com.android.runtime/lib64/bionic/libc.so (__start_thread+64) (BuildId: 21847aa9757f000b0461310a9f5e6e51)


    Any feedback or help would be much appreciated. Thank you!

Link to comment
Share on other sites

  • 1 month later...

Hi @Luky,

From your environment info., it's really outdated version either ROM code or SDK version.

Currently the generic ROM version is 3.0.999.456, and Wave SDK is 4.5.0.

Please upgrade your device first, and PM us the S/N if you can't receive the upgrade successfully since I observed yours was in 2.0.xxx which may be quite early DK version.

I think most of your issues may not exist after upgrading, and we can clarify the new issues based on the latest version.

Thanks.

Note: Please visit a dedicated Wave SDK Forum to discuss the content development experience.

Link to comment
Share on other sites

  • 2 weeks later...

Hi @Tony PH Lin,

my device ran the latest ROM and our project used the latest SDK by the time I was writing this post. No wonder that now there is a newer version available as it was 2 months back.

Anyway, the critical issues we had are now resolved. But many of the minor annoyances persist. The device is still not recognized by the system if I use certain USB ports (even though this should have been resoved in the ROM 3.+), when you focus an edit box the device opens up a virtual keyboard which is not rendered in stereo (this is very hard to avoid without doing changes into UE4 sources) and the WorldToMeters setting parameter does literally nothing if you change it at runtime.

Does the Wave SDK Forum get more attention than this one?

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...