Place TextMeshPro text and your own decals onto any surface from the editor — real 3D text on flat surfaces, projected decals on curved ones.Style presets, wear, background panels, runtime API.Surface Text Placer Ultimate places text and images onto surfaces directly from the Scene view. Click a surface, type or pick an image, and it's placed — oriented to the surface, parented to the object, fully editable afterward.It works in two modes so it covers any surface:Geometry mode — real TextMeshPro 3D text for flat surfaces. Vector-crisp at any distance, receives scene lighting, editable live, and placeable at runtime through the scripting API.Decal mode — for curved and uneven surfaces (pipes, rocks, terrain). Your text or your own image is baked to a texture and projected onto the surface so it follows the curve. Wear, background, and an emboss normal map for apparent depth are all baked in.Key featuresClick-to-place from the Scene view — no Canvas, no manual positioningTwo placement modes: real 3D text (flat) and projected decals (curved)Place your own images/decals, not just text, in Decal modeStyle presets — save a complete look and apply it in one click (6 presets included)Background panels — auto-sized, configurable colour and paddingWear / damage system with 4 tileable patterns + built-in noiseAuto-generated emboss normal maps for raised or engraved reliefTypewriter reveal animation componentRuntime scripting API for dynamic text (geometry mode)Unity Localization support (auto-enables when the package is installed)Scene-wide management tab — search, select, frame, delete every placementFull Undo support and settings persistenceKnown limitationsDecal mode requires the URP Decal Renderer Feature; with Surface Data = Albedo Normal MAOS for the emboss normal to render.Projected decals stretch on surfaces that turn sharply away from the projection direction (inherent to all projected decals) — best on flat-to-gently-curved surfaces.Geometry-mode text is for flat surfaces; it does not conform to curves.Wear rendering in geometry mode is unlit and does not use TMP outline/underlay.Runtime API covers geometry mode; decal placement is editor-only.Requirements & dependenciesUnity 6, Universal Render Pipeline (URP) 17.2+TextMeshProDecal mode requires the Decal Renderer Feature on your URP RendererRender pipeline: URP only (Unity 6 / URP 17.2+). Not compatible with Built-in or HDRP.Scripts: C#, split into Runtime and Editor assemblies (asmdef). Only the Runtime assembly ships in builds.Shaders: 1 URP HLSL shader (SDF text wear), SRP Batcher compatible.Textures: 4 tileable greyscale wear patterns, 512×512, PNG.Decal bake output: generated PNG textures, up to 4096 px on the long edge, plus an auto-generated normal map.Editor tooling: custom EditorWindow, two custom Inspectors, ScriptableObject style presets.No third-party dependencies beyond TextMeshPro; Localization integration is optional and define-gated.AI assistance was used during development of this asset. A large language model was used to assist with C# scripting and documentation writing. All code has been reviewed, tested, and validated by the developer.




