How to draw a high resolution image inside UWidgetComponent with small draw size.

This probably has an easy answer.

For my VR application I am working on a tangible user interface (basically a pie menu) which appears when the user presses the thumbstick. To do this I had attached an actor containing a UWidgetComponent to my motion controller component inside the hand actor.

The widget component displays the radial menu widget which I’ve implemented and dynamically filled at runtime.

My problem is that defining draw size of the UWidgetComponent also effects the resolution of the widgets rendered within itself.

So basically I want my UWidgetComponent to render the widgets on a quad with 30 cm x 30 cm game units of size. But I would like to render at least 512x512 pixel resolution images inside this quad.

But it appears that the entire content of the UWidgetComponent drops to 30x30 pixel resolution if I set the quad draw size to [30,30].

How to fix this?

Thanks for your answers and suggestions.

Hi Matiati,

We had the same issue. The way to solve this, it to set the draw size to what ever the resolution is that you want (512x512 in your case) as this will be the texture size, then you scale the UWidgetComponent in the world viewport to the appropriate size as this will modify the quad size on which the texture is rendered. I believe this is the intended way that Epic recommends to do this.

Hope that helps. Cheers,

This worked perfectly.

I was trying to scale the widget component within the actor. It appears that you need to scale the Y and Z values of the actor for it to work.

Thanks a lot for help.