Like how Half-life 2 (etc.?) used a font for weapon icons. I’m guessing TF2 and CSGO (smart way to easily use it wherever supports text). Though it’s difficult finding info on this without info about basic text instead.
No-color unicode ( 🛠 ) works everywhere, and can be made with Font Forge*, a bit clunky to me though. I wonder if newer node-based editors like Graphite/PixiEditor are better… or for (M)SDF fonts/textures.
I prefer textmesh** for the look… though color emojis ( 🎈 ) don’t work with this (even with a vertex-color-as-albedo material, trying SVG emoji fonts). Plus FontForge doesn’t handle color as far as I can see.
Label3D does support color, pixels instead of polygons (high scale or oversampling are options, but M.SignedDistance breaks color emojis). (also modulate_color_glyphs import setting seems to work in only 2D though)
* I’ve also tried Inkscape, didn’t like how glyphs are created/managed (also, text width)
** I want a low-poly font anyway, though even smooth fonts look interesting with a high curve-step
Not strictly necessary (I’m already using Blender for simple models with vertex colors, and polygons+labels also work for 2D or 3D via canvas layer), but fonts are a more interesting workflow. Easier HUDs or text grid map maybe.


I just tested 2D text out a bit, spent quite a bit of time trying to fix aliasing (I had oversampling set too high, seems like that should be noted if not just 1.0 being default) which is the sort of problem that Textmesh does not have.
With 2D text I do like that shadow (combined with other colors) really makes it feel theme-like (plus outline can fill in the negative space, making non-color emojis look better with the right color). Stacked is even cooler (3D effect).
So if I keep it to 1 color, I can use the same font for each type of text:
Color emojis still have broken outlines though. With label3D oversampling doesn’t seem to work as well* (smaller pixel size+larger font for text clarity–>worse emoji outline alignment) but even for some characters alignment is even off in 2D (balloon, hammer&wrench are fine; eye, fire are not). Could be a font issue though, but the 2 I’ve tried are broken in slightly different ways.
* MSDF could work for single-color, but it messes up the fire icon I have (and makes straight lines a bit wobbly). Better for more standard fonts/designs, I guess.
So, just sort of a mess… simple text is fine, but even if color could be injected per-glyph (like if every vertex on the fire were set to yellow) that would add depth (I don’t know if that’d be a script, add-on, or some context/function in low-level shader code but it’s probably beyond me).
Well, I now definitely have nothing useful to add to this, you’ve explored this whole area much more in depth than I have!
If you do come up with a kind of optimal paradigm you find very useful, I would highly suggest adding/uploading a generalized version of it it to the … godot ‘market’, whatever its called, as an addon or template!