Font Outline in Unity

Font Outline in Unity

团队在使用UGUI时,发现其Outline实现是将文字的顶点在上下左右方向上做偏移生成了新的顶点,所以顶点和三角面数量都增加了4倍。受Glow中Gaussian Filter可实现边界外扩效果的启发,做了个实验,在第一个pass中使用Filter对Font Texture的Alpha进行4或者8方向采样,第二个pass正常渲染字体,然后将两者进行Alpha blend。

Font Outline in Unity_第1张图片

No Outline

Font Outline in Unity_第2张图片

Tow-Pass Outline with Four-Direction Sampling

Font Outline in Unity_第3张图片

Outline in UGUI

从结果上来看,在一定范围的纹理坐标偏移下可以接受,但限制也很明显,下图是偏移过大导致失真

Font Outline in Unity_第4张图片

你可能感兴趣的:(Font Outline in Unity)