Mouse pos. problem using Widget Interaction Component in immersive mode

Problem

Mouse position is 0,0 or other random invalid values if read after pressing and releasing pointer with Widget Interaction Component.

Steps to reproduce

  • In project settings, add some input action using the Left Mouse Button (eg.: Fire)
  • Create a BluePrint. Select Actor as it’s base type.
  • Add a WidgetInteractionComponent to the BP.
  • In the BP’s Event BeginPlay, Enable Input for PlayerController 0.
  • Optionally, set ShowMouseCursor to true to see the mouse on screen during PIE.
  • Add the InputAction Fire to the BP’s graph.
  • From InputAction Fire’s Pressed exec pin, call the PressPointerKey function on the WidgetInteractionComponent (WIC) and set Left Mouse Button as the Key.
  • From InputAction Fire’s Released exec pin call ReleasePointerKey on the WIC and set Left Mouse Button as the Key.
  • Right after the ReleasePointerKey node, call PrintString and print the PlayerController’s GetMousePosition values, like the image:

  • Drag a copy of this BP into the level.
  • Start a PIE session and press F11 to enter Immersive mode.
  • Click to see the mouse position values printed on the screen.

Result

Mouse position is reported as either X=0 Y=0 or some other random values.

Expected result

Mouse position to be equivalent to the mouse pixel location on screen, as it is when not in Immersive mode.

Current workaround

To read the mouse position before releasing the pointer key on the WIC.

Observation

This also affects the results of the ConvertMouseLocationToWorldSpace node.

Hello RVillani,

I ran through the test above. I was unable to reproduce this issue on our end. I am not seeing a return of 0,0. Could you insure that this is occurring in a clean project? Could you also include any other small steps that may have been left out of the original steps provided?

Thanks for your time, @rudy-triplett !

I’m able to reproduce it in a clean project following only the steps I described. BUT

After further testing, I discovered it only happens on my left monitor! This is my current monitor setup:

The left one is my primary and where I’m able to reproduce the problem. Both are 1920x1080 (native). Their models are: LG 23MP55 (left) and LG E2350V. They’re connected to a GTX 970 (EVGA).

Hello RVillani,

I was able to reproduce this issue on our end. I have written up a report and I have submitted it to the developers for further consideration. I have provided a link to the public tracker. Please feel free to use the link provided for future updates.

Link: Unreal Engine Issues and Bug Tracker (UE-49188)

Make it a great day