Porting Oculus Avatar SDK for Unreal to Unreal Engine 4.17 — Oculus
Welcome to the Oculus Developer Forums!

Your participation on the forum is subject to the Oculus Code of Conduct.

In general, please be respectful and kind. If you violate the Oculus Code of Conduct, your access to the developer forums may be revoked at the discretion of Oculus staff.

Porting Oculus Avatar SDK for Unreal to Unreal Engine 4.17

I've been an avid user of the Oculus Avatar SDK plugin so generously provided by the Oculus team for Engine Version 4.15.  After Engine version 4.16 upgrade, I managed to port the plugin to compile in 4.16 with only minimal changes to the code.  Now, with 4.17, Epic developers really outdid themselves - there are whole sale changes to module names, module availability, not to mention scores of interface and class definitions - differences between 4.16 and 4.17 seem like night and day.  So of course, I embarked on a journey to port my favorite plugin, Oculus Avatar SDK, to this Engine version as well.
A couple of questions:
1. Can the Oculus team recommend how to access Hand pose tracking information in the new Engine version?  I haven't been able to replicate exactly the same functionality as in the previous version?
2. Can the Oculus team recommend the best way to get at the FHmdUserProfile to get eye height, player name, things of that nature? 
3.  Do you have your own version of the port?

Any help here would be greatly appreciated!

Answers

  • inloopvrinloopvr Posts: 12
    NerveGear
    I can share my code, which you can use to update the official version. There were quite a few changes already.
  • inloopvrinloopvr Posts: 12
    NerveGear
    As of this latest comment, I solved #2: it appears that GetUserProfile function has been moved to OculusFunctionLibrary.  Still working on #1...
  • inloopvrinloopvr Posts: 12
    NerveGear
    Ok, #1 50% there. You can get at the OculusHMD structure by overriding OculusFuncionLibrary and calling GetOculusHMD, which is a protected method.  Shouldn't be long now... :wink:

  • inloopvrinloopvr Posts: 12
    NerveGear
    I'll keep you updated on this thread. Thank you.
  • xN31xN31 Posts: 25
    Brain Burst
    @inloopvr, thanks for your effort!
    @imperativity any chance for a full multiplayer Avatar example for UE4 in the short term? 

  • inloopvrinloopvr Posts: 12
    NerveGear
    Almost done - just crossing all the t's and dotting the i's.  A couple of questions:

    Latest header for OVR_Plugin.h includes the following useful functions:
    OVRP_SUCCESS(ovrp_GetUserIPD2(&UserIPD)) &&
    OVRP_SUCCESS(ovrp_GetUserNeckEyeDistance2(&UserNeckEyeDistance)) &&
    OVRP_SUCCESS(ovrp_GetUserEyeHeight2(&UserEyeHeight)))

    1. Is there any way to get the UserHeight? or are we supposed to derive it somehow.
    2. Can we get the User's Name, Gender (the latter being less important).
    3. Can we get any other profile information?
  • motorsepmotorsep Posts: 1,388 Oculus Start Member
    So, Oculus Core 2.0 is made with UE4. I am hoping all the SDKs (full platform and full avatar) will be tightly integrated into UE 4.19 
  • inloopvrinloopvr Posts: 12
    NerveGear
    @xN31 - we are actually working on a multiplayer version, but I am not sure what structure its going to take in the end.  I will be willing to share tips as we go along.

    BTW, we managed to implement head and hand tracking in 4.17, the same way it was working in previous version. 

    The next step is to have the automatic player height calibration,
    @imperativity  - any tips to get the player's height?

    And also a new issue came up... the avatar meshes are not longer downloaded with the same code that worked before.  This is probably due to the fact that the Epic guys are no longer instantiating an Oculus session automatically, or something like that... Need to dig a little deeper there.

  • inloopvrinloopvr Posts: 12
    NerveGear
    @xN31 - we are actually working on a multiplayer version, but I am not sure what structure its going to take in the end.  I will be willing to share tips as we go along.

    BTW, we managed to implement head and hand tracking in 4.17, the same way it was working in previous version. 

    The next step is to have the automatic player height calibration,
    @imperativity  - any tips to get the player's height?

    And also a new issue came up... the avatar meshes are not longer downloaded with the same code that worked before.  This is probably due to the fact that the Epic guys are no longer instantiating an Oculus session automatically, or something like that... Need to dig a little deeper there.

  • inloopvrinloopvr Posts: 12
    NerveGear
    xN31 - we are actually working on a multiplayer version, but I am not sure what structure its going to take in the end.  I will be willing to share tips as we go along.

    BTW, we managed to implement head and hand tracking in 4.17, the same way it was working in previous version.  The next step is to have the automatic player height calibration, and also a new issue came up... the avatar meshes are not longer downloaded with the same code that worked before.  This is probably due to the fact that the Epic guys are no longer instantiating an Oculus session automatically, or something like that...

    @imperativity  - any tips to get the player's height?
  • inloopvrinloopvr Posts: 12
    NerveGear
    Success! Port completed.

    We are now working to encapsulate the functionality a bit better.  If anyone is interested in what needs to be done, please contact me directly.  Otherwise, just please wait for the Plugin to be available in the Market.

    @imperativity - have the Oculus Touch sensors been known to loose their sensitivity?  I have reason to believe that mine have stopped tracking Thumbstick and Button touch positions.
  • inloopvrinloopvr Posts: 12
    NerveGear
    Actually sensors work fine.  Everything is in order.

  • NeontopNeontop Posts: 212 Oculus Start Member
    Hi,
    Any information when it will be avalaible ? ☺

Sign In or Register to comment.