I have a sign in my game, and I’m toying with the idea of using a 3D text mesh to do the text on it. However, the text looks like computer text. Any ideas how I can make it look like part of the rock surface? Perhaps with shader graph?
I’m assuming I can, but I can’t really find tutorials for this online.
TextMeshPro shaders are quite similar to regular (unlit) shaders. So a shader graph would work yes.
If the text doesn’t change decals also might be nice
Maybe you could provide the settings recipe for that image.
Edit: Here you go, this is most of it. The trickiest part was selecting a TMP shader which supports that image texture; the default is the Mobile variant which does not have a spot for texture. It’s disappointing that the texture stretches for each glyph’s extent, see the ‘dot’ and narrow digit ‘1’ in my sample. I think you used two copies of TMP to achieve the outer bevel?
With my asset Text Decal, you can project TextMeshPro text as a decal in URP and generate normals directly. This allows the text to appear either engraved into or raised from the surface — all out of the box — while still supporting runtime updates and URP rendering layers.
Here’s a demo of the effect in action:
If you’re interested in dynamic text decals, the asset is now available on the Unity Asset Store: Text Decal
Key features: Projects TextMeshPro text onto any surface as a decal Fully compatible with URP, including integration with the URP decal renderer Text can be updated at runtime — supports fonts, styles, and strings Optimized for performance to minimize draw calls and handle projection correctly
Thanks! HDRP is not supported yet — I focused on URP first since most requests came from there. But HDRP support is definitely on my roadmap, I’ll experiment with it and let you know once I have progress!