3D Widget Scaling Problem

Hello! I have problem with 3D Widget (Widget attached to Actor Blueprint) scaling. As you can see at [(Pic 1)][3] Actor names have different sizes, depending how for they are. If i get closer Object names becomes huge and oversized [(Pic 2)][4]. If i change space form World do Screen, widget move to screen and overlapp 3D objects and thats bad and not an option [(Pic 3)][5].

Is there any way to keep constant size of 3D widget relative to Player screen!?

Or may be there some way to use Billboard Material with Widget? Some kind of transform widget to material?

could you please share more info? BP screen may be? -_-

You got screen space widgets to be occluded by worldspace actors? How?

Its not a text render, its a 2d widget attached to Actor

You could keep it 3d (to keep the Z depth) and check distance to the player and map range scale of the text renders accordingly (their scale needs to be set to world), clamping them in order to avoid excessive scales.

Or may be there some way to use
Billboard Material with Widget? Some
kind of transform widget to material?

You can even use 2d widgets for this, add them to a canvas and control their Z based on their distance from the player - Z sorting.

That’s not what I meant, no. The labels will be rendered on top, of course. It’s an alternative to the scale issue vs screen space order.

You got screen space widgets to be
occluded by worldspace actors? How?

Can be done by sweeping to the object → Hit (world object?) > hide label (or lower opacity). You’d have do it in tick. But I don’t think that’s what OP wants.

I believe Bormak is after scaling widget components (my first suggestion would work here) or normal widgets whose Z order is based on their distance from the player - so they overlap one another correctly.

In this very case, I think scaling the components is the way to go. It’s relatively easy to set up, too.

Ah okay. Makes sense

Something like this:

Image from Gyazo

edit: This will affect objects in 1024 radius only so you do not have tick too many at the same time. The size is controlled by the MapRange node - the closer you are to the item, the smaller the widget component, clamped at min 10% of the original size.

For this to work correctly, you’ll need to set widget component scale to world:

Hope it makes sense.

2 Likes

Ill try and reply!

Just what i need! Thank you.

By the way is there anyway to disable light\shadow casting on 3d widget?

Hm, I had to double check. This is a movable spotlight:

250409-capture.png

Seems unaffected by light. Are you getting a different result?

In game widged looks like washed out. If i press F2 it look like normal 2d screen widget. Seems 3d widget gets some post process effect, so is there a way to turn it off?

Gamma Correction can be enabled in the hidden User Interface panel extension of the widget component.

If that’s not enough:

Widget Component uses Widget3DPassThrough (and some instance variants) material, which you can copy to your project, apply to your widget and make modifications to. Try combing through the AH to see if a better setup exists or tailor it to your needs if you feel confident about materials.

I recall posts about the widget browser (or something like that) being washed out.

Tried with material and it didnt work, or i pinned something wrong, hm.