x

Search in
Sort by:

Question Status:

Search help

  • Simple searches use one or more words. Separate the words with spaces (cat dog) to search cat,dog or both. Separate the words with plus signs (cat +dog) to search for items that may contain cat but must contain dog.
  • You can further refine your search on the search results page, where you can search by keywords, author, topic. These can be combined with each other. Examples
    • cat dog --matches anything with cat,dog or both
    • cat +dog --searches for cat +dog where dog is a mandatory term
    • cat -dog -- searches for cat excluding any result containing dog
    • [cats] —will restrict your search to results with topic named "cats"
    • [cats] [dogs] —will restrict your search to results with both topics, "cats", and "dogs"

Office Holiday

Epic Games' offices will be on holiday from June 22nd to July 7th. During this period support will be limited. Our offices will reopen on Monday, July 8th. 

Screenspace 3d widget only shows for first player in split-screen

Screen-space 3d widgets only show for the first player and do not show for the other players in split-screen. UE 4.7 p5

Product Version: Not Selected
Tags:
more ▼

asked Feb 04 '15 at 11:56 PM in Bug Reports

avatar image

pr4wl
69 7 16 21

avatar image Rudy Q ♦♦ STAFF Feb 09 '15 at 07:54 PM

Hello Voren,

I was unable to reproduce this issue on our end. I have a few question that will help narrow down what issue it is that you are experiencing.

Quick questions:

  1. Can you reproduce this in a clean project?

  2. If so, could you provide a detailed list of steps to reproduce this issue on our end?

  3. Could you provide a screen shot of the issue?

  4. Are you receiving any errors?

  5. If so, could you provide them to us?

avatar image pr4wl Feb 10 '15 at 12:06 AM
  1. Yes this is a clean 3rd person project.

  2. Just add a 3d widget and set the "Space" variable to "Screen". Then add a second player using the "Create player" BB node.

  3. As you can see The text does not show for the second playeralt text

  4. No errors other than the visual problems in the above screenshot

  5. NA

Project download showing bug. (look around/up/down you should notice it quick) http://paulhansen.ninja/MyProject6.zip

I have downloaded that project on multiple different computers and they all show the same problem.

Video of problem: https://www.youtube.com/watch?v=6i_ZcrtCr6Q

Please let me know if you want anything else regarding this or if you are still unable to replicate this.

(comments are locked)
10|2000 characters needed characters left
Viewable by all users

2 answers: sort voted first

Hello Voren,

I was able to reproduce this issue on our end. I have written up a report (UE-9573) and I have submitted it to the developers for further consideration. I will provide updates with any pertinent information as it becomes available. Thank you for you time and information.

Make it a great day

more ▼

answered Feb 10 '15 at 09:24 PM

avatar image

Rudy Q ♦♦ STAFF
47.4k 545 132 523

avatar image Nick Darnell ♦♦ STAFF Jun 30 '15 at 12:50 PM

This is working as intended. The same widget can not be in two places at once, additionally each widget can have different state. For example, imagine a case where you show friendly names in Green and Enemy names in Red. The same widget could not produce this effect, so instead you need separate widgets per player screen.

If you need to use the widget component in a split screen scenario, I'd recommend spawning multiple copies, and assign each one to the player it needs to belong to. You can do this by calling SetOwnerPlayer on the component, that will place it on that player's screen.

If this is a case you run into a lot, I might recommend making a WidgetComponentSpawnerComponent or something like that, that automatically creates widget components for each local player, manages lifetime...etc.

avatar image Lancev Nov 14 '16 at 10:30 PM

I know that this post has been answered and is outdated by a year, but your answer is very vague, and I have not managed to find any solution for having 4 players with a text above their head on the screen space per screen in splitscreen. if you could elaborate on your answer, that would be lovely.

avatar image Rudy Q ♦♦ STAFF Nov 15 '16 at 04:07 PM

Hello Lancev,

I ran through the steps above. After doing so I put in a request to be able to get the local player reference from the player that is created via the create player node. I have provided a link to the public tracker. Please feel free to use the link provided for future updates.

Link: https://issues.unrealengine.com/issue/UE-38622

Make it a great day

avatar image Lancev Nov 15 '16 at 08:48 PM

Thank you very much! I hope that they fix the issue soon, while it isn't a super vital part of the game I am developing, having a way of tagging players in massive maps would be very beneficial. I've included a picture of what the issue looks like on my screen, though I understand you've done all you can. The picture below shows how only the first player can view the 3d widgets, including his own, the other 3 players widget components, and the 3d widget contained in the blueprint actor in the level.

alt text

(comments are locked)
10|2000 characters needed characters left
Viewable by all users

This is fairly old, but the problem persists and I was unable to find a ready answer. I did create a function in a child of UWidgetComponent to enable setting the owner by ControllerId. This did result in being able to control which player's screen the widget rendered. I used this with widgetComponets that are scaled by distance to the player and created a component for each local player beyond the first as needed. I have not used C++ much in a long while so someone else will have to chime in if there is an issue with this:

 Header:
 
         UFUNCTION(BlueprintCallable, Category = UserInterface)
         void setOwner(const int32 ControllerId);
 
 
 CPP:
 
 //Set WidgetCompoenet Owner by ControllerId
 void UOwnableWidgetComponent::setOwner(const int32 ControllerId)
 {
     if (!GetWorld()) return;
     ULocalPlayer* InPlayer = GEngine->GetLocalPlayerFromControllerId(GetWorld(), ControllerId);
     UWidgetComponent::SetOwnerPlayer(InPlayer);
 };


alt text

capture.png (49.9 kB)
more ▼

answered Jun 16 '19 at 04:00 AM

avatar image

Scionate
1 2 2

(comments are locked)
10|2000 characters needed characters left
Viewable by all users
Your answer
toggle preview:

Up to 5 attachments (including images) can be used with a maximum of 5.2 MB each and 5.2 MB total.

Follow this question

Once you sign in you will be able to subscribe for any updates here

Answers to this question