Unity3D 入门教程 Unity中文的显示
前言:之前有朋友发信来问如何在Neoaxis中显示中文,当时答应写篇教程放上来。后来忙于I'm Lulu King!的 制作,就给搁下了。等I'm Lulu King!提交后,却又累得连打开Neoaxis编辑器的劲都没有了。这一拖就拖到了现在。想来这位朋友应该早已解决Neoaxis的中文显示问题了吧, 再写教程恐意义不大。Unity的中文显示机制和Neoaxis颇多类似,今天写这篇文章也算是向那位朋友聊表歉意了。
还要说明的是,笔者才刚开始学习Unity,讲解中有错误或不准确之处还望指正,在此先行谢过。
1)流程说明
Unity的Asset自动导入机制使得在Unity中显示中文非常简单。你所要做的就是将中文字体放到Unity的Asset目录下,Unity会自动将字体中的所有文字转换成一张字体贴图,并生成一个Unity字体。之后你可以就通过GUI Skin\GUI Style引用这个字体来显示中文。 要在Neoaxis中显示中文的话,生成字体贴图(或称Bitmap Font)的过程不是自动的,你需要先用Bitmap font generator来 生成字体贴图及字体定义,然后通过Neoaxis自带的字体转换工具将字体定义转换成Neoaxis的字体定义。对比这两个引擎的字体导入流程,不难发现 两者的设计思路差异。Unity的方式简单高效但可控性差,Neoaxis的方式略显繁琐,但你可以精确控制每一个步骤。
2)准备工作
让我们先打开任意一个Unity项目,这里我们用的是Unity官方教程中的3D平台游戏项目。 Unity的GUI采用的是Immediate Mode GUI(IM GUI),对于更习惯Windows GUI编程的朋友来说如果第一次接触可能有点不习惯。简单说来在Unity中创建GUI不需要进行通常的Init(初始化)、CleanUp (清理)步骤,也不需要进行事件的发送、订阅、处理,相反你只需在每帧的更新周期里同时绘制GUI及处理相应事件就可以了。如果想更多了解IM GUI的话,不妨看看mollyrocket.com的这段视频。mollyrocket的论坛里也有不少IM GUI的相关讨论。
在菜单中,选择 GameObject->Create Empty, 创建一个空的GameObject, 改个合适的名字,如"MyGUIObject"。MyGUIObject将充当GUI的容器,具体界面的创建及位置都将通过脚本来进行。所以我们可以不关心这个GameObject在场景中的位置。这时层级视图(Hierarchy)。。。。。。。。。。。。。。。
谢谢,感谢分享{:5_435:} 这个,这个必须支持的 学习一下啦 学习,学习 下载下来学习学习,谢谢楼主分享! 66666666666666666666
不错 不错 不错
不错 不错 不错 很不错