fort_chararter.GetViewRotation() always returns a constant value

Summary

With Experimental Physics enabled in project settings, fort_chararter.GetViewRotation() always returns a constant value.

Please select what you are reporting on:

Verse

What Type of Bug are you experiencing?

Character

Steps to Reproduce

  1. Make a new creative_device that gets player’s view rotation through fort_chararter.GetViewRotation()
  2. Print player’s view rotation

Expected Result

Player’s view rotation should get player’s camera rotation

Observed Result

Player’s rotation is always at constant:
Axis: {x=0.000000,y=0.000000,z=1.000000} Angle: 70.001099
or
Yaw: 70.001099, Pitch: 0.000000, Roll: 0.000000 after converting the rotation through .GetYawPitchRollDegrees()

Platform(s)

Tested on PC

Upload an image


Additional Notes

Code used:

using. /Fortnite.com/Characters
using. /Fortnite.com/Devices
using. /UnrealEngine.com/Temporary/Diagnostics
using. /UnrealEngine.com/Temporary/SpatialMath
using. /Verse.org/Simulation

view_rotation_bug := class(creative_device):
    OnBegin<override>()<suspends>:void=
        if (FC := GetPlayspace().GetPlayers()[0].GetFortCharacter[]):
            loop:
                FCRot :=FC.GetViewRotation()
                if:
                    Yaw := FCRot.GetYawPitchRollDegrees()[0],
                    Pitch := FCRot.GetYawPitchRollDegrees()[1], 
                    Roll := FCRot.GetYawPitchRollDegrees()[2]
                then:
                    Print("Looking at Yaw: {Yaw}, Pitch: {Pitch}, Roll: {Roll}")
                Print("Looking at Rotation: {FCRot}")
                Sleep(0.1)

Can confirm, this is super annoying. Will have to turn physics off in order to continue developing my project.

I checked, this is still an issue in v36.10

ohhhh is THAT why my sweeps were being so weird in 3D?!? After some panicking: I thought I just accidentally added worldspace/playerpos to the Displacement (viewrot*10m) due to re-using the var for debug_draw.DrawArrow()… but maybe I imagined that, and it was just euler-lock practice :rofl:

edit! haha yup! All along, It was just because I enabled physics in that playground lol!
BTW I tried with both versions of SpatialMath and same issue, I guess they will make a GetViewRotation() for LUF that will prob work in the physics playground later.

I can confirm, This is a really big issue.

I’m using GetViewRotation to determine where the player is looking so they can interact with objects. Normally, when I take the forward vector and multiply it by 3000, it correctly draws a line toward the player’s view direction.

However, as soon as I enable physics in the project settings, GetViewRotation stops updating. The forward vector always points in the same fixed direction, and when I print the values, they stay constant—even if the player is spinning around.

This makes it impossible to use physics without breaking view-based interactions, and I know all the other creators are running into the same problem.

1 Like

FORT-922422 is ‘Closed’ as ‘Fixed’. The issue will be addressed in 38.00.

Since the 38.0 update, I’ve checked and it still hasn’t been resolved.

Hey UGCHOHO,

I love getting forward vectors / view direction, so this issue was of particular interest to me.

I checked on this after v38.00 update and saw that it was working as intended.

Does your code differ in any way from the sample posted above?

This topic was automatically closed after 180 days. New replies are no longer allowed.