Download

Ways To Render Text On Material -> Mesh

I know there are many ways to skin a cat, but many of them sacrifice quality. Here I have a 3d mesh notepad. It will display/list objectives the player has. The text is dynamic, so using a static texture won’t do it here. I’ve tried the 3D Widget,
but A) Setting it to Opaque and adding a texture for a Background doesn’t get affected by lighting
B) Setting it to transparent or (not Opaque) means the widget won’t be affected by Depth of Field, which I need.

So this is where I’m add. Out of options. What are some possible ideas to accomplish what I want without sacrificing quality and won’t be killer on the hardware.

51c08a19da196416c479bbc814c0c42ad4767267.jpeg

I haven’t gotten into this area of the engine yet, but doesn’t UE have a render to texture ability?

I’m trying something like that right now. I set up a Scene Capture 2D placed in an inaccessible area, then I am making a blueprint with a 3D Widget placed in front of the Scene Capture. The widget will be black and white so I can set it to multiply when I blend it with the material on the notepad. Going to try it out now. My only problem with this path is the bit of power it has on the rendering. Should be worth it though.

I’m curious how this ended up working? Like I said I haven’t gotten into render to texture setups yet but it is something I am looking to use in the future.

Sorry for not replying sooner. After doing what I said, I got a second wind and lost track of time. In other words it worked! To keep hardware usage down, I set the Render Texture to only its texture when the objectives list is update, as opposed to having the render texture re-render every frame in every second.

Anyways, it worked! The following is the material window of the material I applied to my mesh, the Scene Capture 2D and how it looked in action.

5ea2e6de34265aa0d498e08ee53439d1c61fb518.jpeg

201889b1509c4c731a2a0d83e2edf49c1644e966.jpeg

57961ff9a6b7fa91d3f1fb342c39524cdd607491.jpeg

Another and potentially better performing solution might be to go back to your original transparent 3D widget and setting “separate translucency” to false to get it to be affected by depth of field.

Thanks Arnage. I swear, I didn’t see anything regarding “Separate Translucency” when I was working with the 3D widget. Nonetheless, I think being able to embed the UMG into a material offered up a better look than slapping a widget on top of the model. Now i’m able to applie subsurface lighting to the material while affecting the 3D widget.

I was able to cut down the processing power to the same amount as just using a 3D widget, so I think we have two possible routes to such a solution. Here are the pros and cons the way I see it:

3D widget overlay (Adding the Widget on top of the model in Blueprint)
Pros
-Can be interactive if the developers needs it to be
-No resolution limitation (whereas a Render Texture/Scene Capture will have)
-Can be animated without fear of high processing usage

Cons
-Unable to take advantage of material shaders
-May look out of place depending on how its used
-Lack of Lighting

Integrate 3D widget into Render Texture
Pros
-Blends in perfectly with whatever texture/material you have for Mesh
-Perfect for Trigger based Info Updates
-Doesn’t require disabling Separate Translucency
-Affected by lighting and all environmental shaders and post-processing

Cons
-Depending on set up, could take up a lot of hardware processing power
-Cannot be animated due to the processing power needed for Render Textures and “Render Every Frame”