r/unrealengine • u/Paradoxical95 Solo Dev - 'Salvation Hours' • Mar 22 '23
User Interface looking pixelated UMG
I was following this tutorial on making 3D Main menu.I was successful however the text on buttons in my game look bad. They look pixelated. What am I doing wrong? Is it the canvas size ? or is it that my font is too big relative to the screen size?
Also, other options look muddy for some reason. Why is that.?
As you can see. The button that I hover on looks even more pixelated than the normal ones.
2
u/LifeofVertigo Mar 22 '23
Im not near my pc so I can’t look up the specific setting names, but I’ll do my best to help from memory.
1.) If I remember correctly, the biggest help I had with this issue, was setting the widget size to much larger 3d actor, than in the widget itself. I believe if say the widget size is 300x100 on the canvas, I usually set the 3d Draw Size on the actor to 600x200. I may have this backwards, so play with it a bit. 2.) Set the anti aliasing to an option other than the default, Unreal’s AA causes 3d widgets to blur and look a bit rough.
1
u/Paradoxical95 Solo Dev - 'Salvation Hours' Mar 22 '23
Do you mean the draw size here?. In this case, the canvas was 400x200 and draw size in level/actor ref was 800x400. Didn't help.As far as Aliasing go, in my project setting, the default is TSR. It has worked just fine for everything including 2D widgets on screen. Do you recommend changing that? or is there any other text specific setting I should know ??
Thanks.
Edit - I played along with global AA settings, tried FXAA, MSAA, TAA as well. Nothing helped it. Still the same.
2
u/LifeofVertigo Mar 22 '23
Yes sir, thats the draw size im speaking of. Make that 2/3/4x what your widgets actual resolution is. Then scale it down in the world to the size you want. I believe the issue occurs when the scaling in the world is blown up and you’re trying to make pixels out of nothing. Make the resolution much higher than you need, the draw size higher, and then scale it down in the world.
1
u/Paradoxical95 Solo Dev - 'Salvation Hours' Mar 22 '23
I did. Pushed it to the maximum in the level instance of the actor (3840x2160). Nothing happened. Scaled it up. Scaled it down. Nothing happened.
This is strange. What must I do now?1
u/Paradoxical95 Solo Dev - 'Salvation Hours' Mar 22 '23
Hey, I fixed it !!
I increased the canvas to 4000x2000
Increased the font size (was 8 initially now its 30)
and then scaled the widget component in the level instance of the actor (to like 0.3-0.4)
And voila, its crisp as hell.
See this.Thank you for your input. Appreciate it !!
2
u/LifeofVertigo Mar 22 '23
Awesome! No problem at all. I end up running into this issue on every project until I remember what causes it.
1
u/Paradoxical95 Solo Dev - 'Salvation Hours' Mar 22 '23
Yeah. Happens with me too but not much in user interface. I'm pretty new to it. But thanks anyways !
2
u/jawdy Mar 22 '23
Are your buttons (with New Game, Options text etc) imported as Images?
First, open up the Textures and check the "Compression Settings." Then change these to "UserInterface2D (RGBA)." This should fix the aliasing you're seeing.
But also, you might want to switch to using a Text Box (or Rich Text Box) instead of hard coding your text into a texture. Unreal has a text rendering mechanism that will up/down scale font textures (it converts fonts to textures) and you can have localisation/translation on your text, without the need for dozens of custom textures that you'd need to swap out yourself.