Show nickname upon characters

Sorry for bad english.

Good day!
Why there is no right way to put nicknames above players ’ heads?

Basic requirements:

  1. The text needs to be cover by other actors, walls, etc. Ie he should be in world position.
  2. The text must be straight, plain, not scaled.

I have tried 3 ways and none of them meets these requirements.

The first method is by using the widget component above the character’s head with the settings “space = screen”

You of course offer to add trace inspection for visibility, but it is a bad option. Talk about it below.

The second way is by using hud + project to screen. But this works exactly the same as the first. Text is not covered by game objects.

The third way is to use the widget above the character’s head with the settings “space = World”, and in real time adjust its scale and rotation (widget must look to the camera and have the same screen size at all distances).

How it looks

Rotate widgets to the camera is calculated using the “Find Look At Rotation”. And as we can see, the widgets do turn to the center of the camera. But they should stand up straight like normal plaint text on the screen.

For example, here is a working example from the game Lineage 2, made on the Unreal. Widgets of the characters look like normal text, but have real coordinates in the game world (blocked by walls, characters, etc.).

Is there some way to do the same?

I know this pix. You have a Youtube Channel from russia, right? Whatched it on breakfast :slight_smile:
My english is not perfect, too. I’ve understand: You want text not shining through walls, it should point to the camera and rotate to the player fiew EXCEPT when the camera moves over the text, it should stay straight.
Right? Then I have something for you I can screenshot. Its a Widget Component, parented to my character, so it is blocked by statics and I rotate it onTick event.

Thanks for the reply.
No, I have not channel in youtube :).
Your method is exactly the same as my 3-rd method. See the 6-th picture, where I use a widget-component, and it’s rotating each tick to the camera using the “Find Look At Rotation”. The disadvantage of this method is that the widgets are not fully horizontal. If the widget is near the border of the screen, it rotates wrong, and is shown not horizontally. If we see from top, the widgets may flipping.

the second one does not appear. look at my screenshot, I’ve broken the rotator to only rotate on Z.
your first problem - i need to have a look

No, man.
This way makes widgets to be horizontal in world coordinates.
But I want to make widget horizontal in screen coordinates. Text must be looks like horizontal plain text.

hi there, do you solved this issue?

no. I can’t find a way to resolve this