BlueRose
文章97
标签28
分类7
TextRender显示中文的方法

TextRender显示中文的方法

前言

早几年学习UE的时候发现TextRender渲染中文的时候会出现□的情况,一直都去解决。最近又遇到这个需求了,最终在官方论坛上找到了解决方案,现在分享给大家。

步骤

  1. 导入一个字体生成Font资产或者新建一个Font资产,接下来对Font资产进行设置。
  2. FontCacheType 设置成Offline
  3. 下面设置ImportOptions,设置FontName为想要的字体名称。
  4. 设置UnicodeRange4E00-9FFF
  5. 勾选Use Distance Field Alpha选项。
  6. 在Font资产编辑器汇总点击Asset-Reimport Font_XXXX,来重新导入字体资产,之后会卡比较长的时间。
  7. 复制默认字体材质球EngineContent-EngineMaterials->DefaultTextMaterialOpaque,或者新建一个字体材质球作为TextRender的材质,并且修改材质里的Font资产。
  8. 在对应的TextRender中修改材质与Font资产即可显示中文。

TextRender_Result.png
但是可以看得出一些中文符号是没办法正常显示的,原因是4E00-9FFF只包含了文字,没有包含中文符号。所以要么是使用英文符号来代替,要么就是提高Unicode-Range的范围。