Announcement

Collapse
No announcement yet.

WorldLocked StereoLayer rendering at wrong location (bug)

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    [VIVE] WorldLocked StereoLayer rendering at wrong location (bug)

    I'm trying to get stereo layer to work, but for some reason its rendering at the wrong world location, not where it should render.

    I created a new actor, added an arrow and the stereo layer as a child of the arrow, so the arrow displays where it should render. Then I parented that actor to my motion controller component so that I can move it around.

    The stereo layer should be exactly where the arrow is:



    But when I play the game, it ends up at a different location (its the black circle):



    The location where it shows up depends heavily on the world position coordinate of where the player is. The further the player moves away from the origin of the level (0/0/0) the further the stereo layer is away from where it should render.

    This sounds very much like a bug in UE4, is there anyone who saw the same and maybe knows how to fix it in the code?
    Easy to use UMG Mini Map on the UE4 Marketplace.
    Forum thread: https://forums.unrealengine.com/show...-Plug-and-Play

    #2
    After thinking a bit about the origin stuff, I tried to just the world location of the stereo layer to the relative location of the motion controller, and that fixes the location bug!

    So for a stereo layer, "world locked" actually does not mean locked to UE4 world location, but locked to steam world location relative to the origin, so the location relative to the center of the room. And since the motion controller is parented to the origin, it's relative location is the location that is correct. The arrow is at a completely wrong location now of course, because the arrow interprets the world location as UE4 world location.

    Would definitely be a lot nicer if there would be at least something like a tooltip explaining that this location is needed. How should anyone know that?

    The rotation unfortunately does not work, though. It roughly works for some values, but depending on the values its more or less off. The rotation of the motion controller relative to the VR origin should work here too, but it doesn't. So I still don't know how to fix the rotation...

    This is looking from the side to see that the stereo layer rotation is wrong, the green arrow shows the correct location (thats no longer the arrow the stereo layer is parented to, thats just an arrow now thats a child of the motion controller):


    Last edited by John Alcatraz; 12-30-2016, 03:02 AM.
    Easy to use UMG Mini Map on the UE4 Marketplace.
    Forum thread: https://forums.unrealengine.com/show...-Plug-and-Play

    Comment


      #3
      Sorry i don't have an answer for this, but was wondering if you use Occulus or Vive? From the image i kinda assume you use Occulus, since i could not get the Stereo Layer to render on the mirror window with Vive. Could be there are other differences between the two, possibly bugs.

      Comment


        #4
        Originally posted by Jonas_Molgaard View Post
        Sorry i don't have an answer for this, but was wondering if you use Occulus or Vive? From the image i kinda assume you use Occulus, since i could not get the Stereo Layer to render on the mirror window with Vive. Could be there are other differences between the two, possibly bugs.
        I use a Vive, I gave the thread a [VIVE] prefix
        Easy to use UMG Mini Map on the UE4 Marketplace.
        Forum thread: https://forums.unrealengine.com/show...-Plug-and-Play

        Comment


          #5
          Ok, but how did u get the Stereo Layer to show on the screenshot?!

          Comment


            #6
            Originally posted by Jonas_Molgaard View Post
            Ok, but how did u get the Stereo Layer to show on the screenshot?!
            I just used the "Display Mirror" feature from steamvr:

            Easy to use UMG Mini Map on the UE4 Marketplace.
            Forum thread: https://forums.unrealengine.com/show...-Plug-and-Play

            Comment


              #7
              Originally posted by John Alcatraz View Post
              I just used the "Display Mirror" feature from steamvr:

              Ofc, so simple, yet so effective. thanks man

              Comment


                #8
                Originally posted by John Alcatraz View Post
                After thinking a bit about the origin stuff, I tried to just the world location of the stereo layer to the relative location of the motion controller, and that fixes the location bug!

                So for a stereo layer, "world locked" actually does not mean locked to UE4 world location, but locked to steam world location relative to the origin, so the location relative to the center of the room. And since the motion controller is parented to the origin, it's relative location is the location that is correct. The arrow is at a completely wrong location now of course, because the arrow interprets the world location as UE4 world location.

                Would definitely be a lot nicer if there would be at least something like a tooltip explaining that this location is needed. How should anyone know that?

                The rotation unfortunately does not work, though. It roughly works for some values, but depending on the values its more or less off. The rotation of the motion controller relative to the VR origin should work here too, but it doesn't. So I still don't know how to fix the rotation...

                This is looking from the side to see that the stereo layer rotation is wrong, the green arrow shows the correct location (thats no longer the arrow the stereo layer is parented to, thats just an arrow now thats a child of the motion controller):


                Did you managed to fix the rotation problem? I have the same problem...

                Comment

                Working...
                X