使用的版本是u3d 5.6
这里要提到两种3D字的方式
一种是3dtext 也就是unity自带的那个片状,有个免费pro版本也可以在assets store里搜到
另一种是真正的立体字,要用插件,可以支持中文,文章后面再说
首先是使用TextMesh Pro 设置中文的方式
导入后可以进行字体等等设置,场景例子也挺多的可以自己看看
下面记录下导入中文字体的方式,因为这个坑也有些
这里用的字体是ttf格式,(注意这个字体要有中文)
导入字体后选window里面按照上面设置需要的文字
另外我使用的方法是加载外部文字,注意外部文字写在txt里要是utf8格式
下面是generate字多的话需要很长时间生成,如果生成没反应,请检查文本格式,然后重启unity...
最后生成后可以再右侧看到(其他参数都基本是调生成文字图片大小的),save文字资产备用
然后这里选例子里的一个场景
字体改成刚刚生成的文字资产
然后就能输入中文(仅限于刚刚文本里面的字)
这里再记录一个文字始终面向摄像机的方式
比如加上下面脚本,记得加摄像机
public GameObject mycamera;
void Start () {
}
// Update is called once per frame
void Update () {
transform.rotation = Quaternion.LookRotation(transform.position - mycamera.transform.position);
}
效果虽然不是很好,距离摄像机近的地方会弯曲,没有直接在屏幕上的效果好
当然这种方式的3d字本质还是片状的,不是立体的
下面就介绍一个立体字的方法,这个需要插件完成
这里使用的插件是VText,同样用u3d 5.6
https://www.assetstore.unity3d.com/en/#!/content/24768
放入工程后
首先设置字体,选一个有中文的字体,这里我也是用ttf
设置如下
下面打的是要输入的中文字
下面加载设置
安装你刚刚设置的字体
就好了
或者按下面方式更改字体
最后就是中文了
这个插件还是挺方便的
以前有好多插件都没法在高版本用了
比如下面的
版本老 不支持中文
Simple Helvetica https://www.assetstore.unity3d.com/en/#!/content/2925
unity3d-ttftext-master http://ttftext.computerdreams.org/