Unity中3DText显示模糊不清的解决方案

 更新时间:2021年04月10日 10:48:51   作者:提莫从前很快乐  
这篇文章主要介绍了Unity中3DText显示模糊不清的解决方案,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

在Unity中,当我们想要给3D物体一个文字说明时,使用Canvas下的Text虽然也能通过缩放实现,但是实现起来比较麻烦,改动的多,大小和位置也不容易控制。

此时就需要用到我们的3DText了,对于初次使用这个组件的“攻城狮”来说,会发现在Game场景中很模糊

具体修改操作如下:

此时,只需要选中当前3DText的物体,修改TextMesh组件下的Character Size和Font Size两个属性值。例如:

在这里,Character Size值越小,同时Font Size越大,字体就会显示的越大越清晰,具体调节根据自己的需要。小编修改后的效果如下。

以上皆为个人观点,仅供参考。

补充:解决Unity原生UI文字模糊的小技巧

很多人都觉得Unity原生UI(uGUI)的Text不好用,功能过分简单,而且还很模糊。比如题图中第一行Text使用了size =24的字号,边缘明显模糊了。因此,目前流行使用TextMeshPro来制作UI文字,甚至Unity把TextMeshPro都买下来内置到引擎了。

TextMeshPro功能确实强大,但一个劣势是不能直接识别字体文件,需要用户自己将字体文件转换成Atlas(也就是图片式的字符集)再使用。这对于英文字体非常简单,一共也就那么多个字符需要转换,但对于中文字体来说就很麻烦了,常用中文字集有3500和6500两个版本,转换耗时非常久。

对于对UI文字要求没那么高的用户来说(比如我),还是直接使用uGUI的Text更为方便,但这个模糊问题又很恼火。

我仔细研究了一下uGUI的Text,发现:这个模糊其实是显示字体时为了抗锯齿而出现的,不同字号的Text的边缘模糊程度如果用像素来衡量的话其实是一样的。比如题图第三行Text使用了size =128的字号,给人的感觉就好很多了(虽然其实边缘模糊绝对数值和第一行是一样的)。

这说明,如果我们能将大字号的Text缩小,那么这个缩小版就比小字号Text的边缘要清晰很多。

题图中第二行字同样使用size =128的字号,但同时设置Scale为0.2,这样其实际尺寸与第一行字差不多,但边缘模糊几乎不存在了,反而感觉有点太锐化了。

这样就比较完美地解决了uGUI文字模糊的问题,我们又可以开心地使用Text来制作UI了。

PS:uGUI Text的字号(size)最大只能设置到300,但我个人感觉已经够用了。

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。如有错误或未考虑完全的地方,望不吝赐教。

相关文章

  • 详解c#索引(Index)和范围(Range)

    详解c#索引(Index)和范围(Range)

    这篇文章主要介绍了c#索引(Index)和范围(Range)的相关资料,帮助大家更好的理解和学习c#,感兴趣的朋友可以了解下
    2020-10-10
  • C#中的Action、Func和Predicate如何使用

    C#中的Action、Func和Predicate如何使用

    这篇文章主要给大家介绍了关于C#中Action、Func和Predicate如何使用的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-12-12
  • WCF如何使用动态代理精简代码架构

    WCF如何使用动态代理精简代码架构

    这篇文章主要介绍了WCF如何使用动态代理精简代码架构,帮助大家更好的理解和学习使用c#,感兴趣的朋友可以了解下
    2021-03-03
  • Unity实现动物识别的示例代码

    Unity实现动物识别的示例代码

    本文主要介绍了如何通过Unity实现动物识别,可以实现识别近八千种动物,接口返回动物名称,并可获取识别结果对应的百科信息,感兴趣的可以了解一下
    2022-02-02
  • C#实现字符串倒序的写法

    C#实现字符串倒序的写法

    这篇文章主要为大家详细介绍了C#实现字符串倒序的多种写法,以LINQ写法最为简洁,感兴趣的朋友可以参考一下
    2016-05-05
  • C# 中AutoMapper的使用方法

    C# 中AutoMapper的使用方法

    这篇文章主要介绍了C# 中AutoMapper的使用方法,帮助大家更好的理解和使用c#,感兴趣的朋友可以了解下
    2020-12-12
  • C# XML文件操作之相机参数保存和读取

    C# XML文件操作之相机参数保存和读取

    XML是可扩展标记语言是一种数据语言,它将数据以一种简单的文本格式存储,可以被人类和几乎任何计算机理解。本文将利用C#实现相机参数读取并保存至XML文件,感兴趣的可以学习一下
    2022-11-11
  • c#完美截断字符串代码(中文+非中文)

    c#完美截断字符串代码(中文+非中文)

    c#完美截断字符串代码(中文+非中文),需要的朋友可以参考下
    2012-08-08
  • C#多线程系列之线程等待

    C#多线程系列之线程等待

    本文详细讲解了C#多线程中的线程等待,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-02-02
  • C#实现JSON字符串序列化与反序列化的方法

    C#实现JSON字符串序列化与反序列化的方法

    在这篇文章中,我们将会学到如何使用C#,来序列化对象成为Json格式的数据,以及如何反序列化Json数据到对象。
    2017-01-01

最新评论