Player 0 always control all player screen in Splitscreen

Hi, I’m testing solution for Splitscreen “Press A to Join Game” where I have a gamemode that spawn other players like below

Then the player controller would spawn its own widget like so

However, when I’m getting the input from the game on Splitscreen, only Player 0’s input get across. Here is the logic.

In this context, I have created a splitscreen of 3 players. When I pressed A or Gamepad Face Button down, it prints 0 indicating player 0. The current workaround is I have to manually use mouse and click other player’s part of the screen in order to print “Joined” text, though the user index is still indicating 0. Are player index 1 and 2 suppose to handle their own player screen? Why did player 0 supersede both player 1 and player 2’s control?

Did you solve this problem? I want player 0’s mouse to be able to click on player 1’s screen.

Hi, it has been a few years, I can vaguely remember the solution. I think I use UUserWidget::SetOwningPlayer to change the PlayerController to make the widget using the correct PlayerController.

I roughly remember why all of the widgets use Player 0, because there is only 1 viewport, and that viewport belongs to Player 0. That’s what I can roughly remember. Hope it helps.

1 Like