All Projects → MerlinVR → Unity-MSDF-Fonts

MerlinVR / Unity-MSDF-Fonts

Licence: MIT license
Basic tool to convert Unity fonts to use Multichannel Signed Distance Field fonts

Programming Languages

C#
18002 projects
ShaderLab
938 projects

Projects that are alternatives of or similar to Unity-MSDF-Fonts

SdfFontDesigner
Offline font tuning/bitmap generation via shaders
Stars: ✭ 56 (+3.7%)
Mutual labels:  font, sdf
basement-grotesque
The basement grotesque typeface.
Stars: ✭ 219 (+305.56%)
Mutual labels:  font
apple-emoji-linux
Apple Color Emoji for Linux
Stars: ✭ 392 (+625.93%)
Mutual labels:  font
glyphhanger
Your web font utility belt. It can subset web fonts. It can find unicode-ranges for you automatically. It makes julienne fries.
Stars: ✭ 422 (+681.48%)
Mutual labels:  font
Giotto
Theme manager for your app: apply styles to anything you want through a plist file
Stars: ✭ 18 (-66.67%)
Mutual labels:  font
devs-codex
A repo of helpful front end development and design links
Stars: ✭ 16 (-70.37%)
Mutual labels:  font
neurecon
Multi-view 3D reconstruction using neural rendering. Unofficial implementation of UNISURF, VolSDF, NeuS and more.
Stars: ✭ 697 (+1190.74%)
Mutual labels:  sdf
LxgwNewClearGothic
A Simplified Chinese sans-serif font derived from IPAex Gothic. 一款衍生于「IPAexゴシック」的简体中文黑体字型。
Stars: ✭ 203 (+275.93%)
Mutual labels:  font
helmet
Neo-grotesque typeface
Stars: ✭ 133 (+146.3%)
Mutual labels:  font
SlimeVR-Server
Server app for SlimeVR ecosystem
Stars: ✭ 361 (+568.52%)
Mutual labels:  vrchat
sdl stb font
Renders text using STB_Truetype in pure SDL
Stars: ✭ 40 (-25.93%)
Mutual labels:  font
material-combiner-addon
Blender addon for material combining, uv bounds fixing
Stars: ✭ 309 (+472.22%)
Mutual labels:  vrchat
pixi-sdf-text
Signed distance field text implementation for PixiJS
Stars: ✭ 89 (+64.81%)
Mutual labels:  sdf
InupiaqNumbers
Font for displaying Inupiaq Numerals
Stars: ✭ 27 (-50%)
Mutual labels:  font
DynamicBonesStudio
A useful tool for quickly setting up and manipulating dynamic bones for Unity characters
Stars: ✭ 60 (+11.11%)
Mutual labels:  vrchat
fdiff
An OpenType table diff tool for fonts. Based on the fontTools TTX format.
Stars: ✭ 33 (-38.89%)
Mutual labels:  font
bawr
SVG/Font Icon processing tool for C++
Stars: ✭ 66 (+22.22%)
Mutual labels:  font
Gluten
2 Axes/Variable/Super Soft/Display
Stars: ✭ 28 (-48.15%)
Mutual labels:  font
WorldCreatorAssistant
Unity Editor extension for automating VRChat world project package management
Stars: ✭ 133 (+146.3%)
Mutual labels:  vrchat
100Avatars
100Avatars - 200 open-source Avatars
Stars: ✭ 82 (+51.85%)
Mutual labels:  vrchat

Unity-MSDF-Fonts

Basic tool to convert Unity fonts to use Multichannel Signed Distance Field fonts

Multichannel SDF font rendering provides much sharper text rendering that maintains its sharpness without pixelization no matter how large the text is.

This just takes Unity fonts and converts them to MSDF fonts using MSDFGen. At the moment this is a hack with a few hours of work and will probably be extended into a more useful thing in the future if people care enough.

This tool is made for static fonts that are baked out in the editor. It was mostly made targeted at VRChat worlds because Text Mesh Pro is fairly broken in VRChat. The main advantage that multi channel SDFs have is that they can maintain corners. Normal SDFs will usually get rounded corners on text. The MSDFGen github has a good example comparting to regular SDFs https://github.com/Chlumsky/msdfgen.

Default Unity Text Rendering

MSDF Text Rendering

Usage

  1. Install the package from the releases page
  2. Find a font that you like and use it on UI Text or Text Meshes
  3. Select the font asset and change the font size to somewhere between 30 and 60 and change the Character from Default to ASCII Default Set and click the Apply button. This step is important, if you do not change the character, the atlas generator will not know what to generate! If you need to support non-latin languages, you will need to change the Character to UTF and use a font that supports the extra characters. At some point I might make the script look at what characters are used in the scene to find the necessary characters.
  4. Open the atlas generator under the Window drop down Merlin > MSDF Font Generator
  5. Drag the font asset into the Font Asset slot in the generator and click Generate Atlas
  6. Once the atlas generation has finished, the new font atlas will be selected in your project files.
  7. Make a new material for your text. If you are putting this on a Text Mesh, select the Merlin/MSDF Text Mesh Font shader. If it is UIText use the Merlin/UI/MSDF UI Font shader.
  8. Drag the generated atlas texture into the MSDF Texture slot on the material.
  9. Apply the new material to your UI Text or Text Meshes.
  10. You should now have MSDF text on your text now. If you see artifacts that look like melting, go back to step 3 and increase the font size until the artifacts go away.
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].