How to create a menu in the style of Black Ops 1? for example on a TV screen

Hello, developers!

I’m working on a game and want to create a menu that will be displayed on the TV screen embedded in the environment. I’ve already tried to implement this using Render Target, but I ran into a problem

What I’ve already tried:

Set up Render Target and Material to display the widget on the texture.

Problems:
The texture with the widget is duplicated, but the effect is not the same. Photo below

Goals:
I want the menu to look like a real interface on the TV screen and be able to interact with it (mouse + keyboard)

Questions:

Are there other ways to overlay the widget on the object and have normal interaction with it
Any advice and ideas are welcome! Thanks in advance.

1 Like

Instead, use a Widget Component in World Space and enable Receive Hardware Input. And if you need additional material effects, wrap the widget with a Retainer, or modify the component’s material.

2 Likes

Hi, I didn’t quite understand what you meant. I don’t need optimization, but an implementation option! I don’t understand how to do it like this :frowning:

1 Like

This has nothing to do with optimisation, although retainers help with this if necessary. It’s merely a standard method of handling what you’ve asked about.

Find any tutorial on widget components - this is a common topic. Add a comp to an actor and it displays a widget in 3d once set to world mode. And you can interact with it as if it was a traditional widget thanks to hardware input.

1 Like

Good morning. Thank you, I have read more about WidgetComponent and the 3D display of widgets, but the standard flat widget is not suitable for my task. So my question was not accurate. I need the interface to be curved or have some kind of shape in 3D space, and not just look like a flat screen. Perhaps rendering to a texture overlaid on a curved model or another way to add depth and distortion would be more appropriate. If you have any suggestions on this part, I would appreciate it

Widget components are happy to render on cylinders, have a look at their settings. Other than that, provide more info, perhaps an easy to understand example of the required features.

There is a more advanced effect often referred to as parabolic distorsion, however it’s not suitable for interactive displays. It will produce a much crispier image than a component but you’d need remap UV->pixel for interaction - not a trivial task.

If all you want is a slightly curved interactive monior screen, a widget component is very suitable. Note that you can also intetact with it without the mouse, as in: by pointing the center of the screen (the gun) at it. Many games have 3d keypads where characters bob their camera view and punch in digits with their faces, so to speak.