Daikon Forge GUI 制作图集和字体集
在上次的学习中制作了一个简单的面板,下面来学习制作图集以及字体。
1.DF-GUI 图集(Atlas)制作
操作步骤
选中UI Root根节点,在Scene场景中右键鼠标弹出如下菜单,选择需要制作的一个控件,在这里我选择了一个Texture sprite如下图。
在右方面板出现如下图的组件
Texture Sprite不需要制作图集,只需要导入位图,拖到图中所指示的位置即可。但是另外的Sprite ,如 Sliced Sprite需要制作图集才可以用。
制作图集(Texture Atlas)
在Sliced Sprite中出现如下图
这里就需要制作图集。首先随便拖一些图片素材进去,这时候要注意设置一下图片的属性,有几个地方要改。否则无法制作图集。
全部选中右击,选择如下选项。
取好名字后得到3个文件 ,一个是大的图片集合,一个是图片的材质盒,最后一个是一个prefab,里面有一个DF Atlas脚本。在这里可以添加删除图片,但是添加的图片依然需要之前的设置。
这样一个图集就制作完成,图集里面包含了许许多多小的图片,这样的目的是为了减少gpu 渲染的回调(draw call 或者opengl call),每次成批得渲染图片,而不是一张张去处理。
2.DF-GUI 字体(Font)制作
位图字体(BitMap Font)
(1)首先是位图字体(BitMap Font),一般用作制作默认字体,可以用不同的工具,制作出的文字效果跟图片类似,因此可以做的很炫酷,一般在游戏中用作很少一部分的hud字体 。原理是根据位图中各个字母的位置获得相应的信息保存到一个文件,每次需要文字的时候,从数据文件读取信息,截取图片中的字母。因此需要有两个文件被选中才能制作。
随便拖入或者从DF-GUI demo中获得2个BM Font文件。如下图制作。
之后获得一个字体集的prefab,里面包含一个Df Font脚本,这时候需要把这个字体加入到一个大的图集里(因为BM Font也有一张大的图片),将这个字体图片拖入之前制作的图集中
再将图集 拖入字体集相应的红色拖选框
选择刚才制作的字体集,OK
动态字体(Dynamic Font)
(2)其次是动态字体(Dynamic Font),一般用作游戏中可以变化的字体,比如显示一些游戏信息用一个字体,显示提示用另外一个字体等等,这些字体是动态添加的,而不是被默认的,一般以.ttf作为后缀。其原理可以参考 http://venrar.blog.163.com/blog/static/60699459200881102648855/ 这篇文章。
工程中拖入一个ttf文件,如下图操作,相对于BMFont比较简单。
两种字体比较
BM font的适用范围和Dynamic Font的适用范围不同
前者适用于 label,而后者适用于 Rich Text Label,如下图。
这个在可以尝试一下就可以知道。效果对比图:
(4)如果需要默认的图集和默认BMfont字体,则在UI Root上的Df UIManager上拖入响应的图集和字体集,这样每次新建一个图片或者label,都以此图片集和字体集作为默认的。如下图所示操作
这样就完成了图集和字体集的制作。
说明
转载自:http://blog.csdn.net/mlyx_ycy/article/details/14450791
Daikon Forge GUI 制作图集和字体集的更多相关文章
- Daikon Forge GUI 制作UI面板
因为是第一次写技术博客,文章的结构和层次估计不标准,但是并不妨碍我想表达的内容. DF-GUI知识 DF-GUI初窥 DF-GUI于今年10月份面世,作为为数不多的unity UI插件,其功能值得一窥 ...
- unity3d插件Daikon Forge GUI 中文教程1-Daikon Forge介绍
DF-GUI特点: · 深编辑器集成:DF-GUI提供广泛的整合与Unity3D编辑环境,包括自定义检查人员对每个组件向导来简化复杂的多步任务,提高生产力的上下文菜单,编辑控件在一个所见 ...
- unity3d插件Daikon Forge GUI 中文教程-1-Daikon Forge介绍
(游戏蛮牛首发)大家好我是孙广东官网提供了专业的视频教程http://www.daikonforge.com/dfgui/tutorials/,只是是在youtube上,要观看是须要FQ的. 只是教程 ...
- Daikon Forge GUI Library(dfgui)之Event Binding
点击按钮并弹出对话框,就用下面的大问题按钮吧 1,选中按钮,Component/Daikon Forge/Data Binding/Event Binding 2,UI上创建DfPanel,并将其Be ...
- unity3d插件Daikon Forge GUI 中文教程2-基础控件Label的使用
我们先来设置 UI Root 中的如下:屏幕大小为1024*768 2.1 新建一个Label 控件 先来看看Control Properties (基本上是所有控件都共用的)的以后不再介绍,参数: ...
- unity3d插件Daikon Forge GUI 中文教程6-高级控件richtextlabel的使用
3.5.richtextlabel文本 可以像Word文档一样编辑出多样的内容,图片,字体颜色大小下划线.超链接背景等等. Defaults: 默认字体 默认图集 Blank Texture :空白的 ...
- unity3d插件Daikon Forge GUI 中文教程5-高级控件listbox和progress bar的使用
3.3.listbox列表框 Atlas 图集: 下面应用到的精灵都是在这里的. ListBox中的内容: 背景精灵 图片的主颜色 Padding边距 Scrollbar 滚动条对象的预制体或者对象, ...
- unity3d插件Daikon Forge GUI 中文教程4-高级控件Checkbox和dropdownlis的使用
第三节 高级的控件 Checkbox单选和多选.dropdownlis下拉列表.listbox列表框.progressbar进度条.richtextlabel富文本.slider滑块.textbox ...
- unity3d插件Daikon Forge GUI 中文教程3-基础控件Button和Sprite的使用
2.2添加一个按钮Button 来看看特有的属性:Button Properties Data 显示的文本 Behavior 中的几个: Aoto Size 选中时就是按钮的背景会根据Data中的文本 ...
随机推荐
- DWR的Reverse Ajax技术实现
DWR的逆向ajax其实主要包括两种模式:主动模式和被动模式.其中主动模式包括Polling和Comet两种,被动模式只有Piggyback这一种. 所谓的Piggyback指的是如果后台有什么内容需 ...
- mysql乱码以及Data too long for column全解(最完整实用版)
今天系统升级,开发.测试说本地环境.测试环境都没有问题,都用ssh client升的,演示环境报错了Data too long for column. 仔细检查了下,表字符集都是utf-8,目测长度肯 ...
- 七年IT生涯的经验教训
七年IT生涯的经验教训[转]我在IT界也拼打了有好几年了,但是现在和别人比较起来不是很如意.从天分上来说,我在属于智商不低的人:从技术上说,几乎没有我拿不下的:从见解上看,我是很有点子看法的人. ...
- ArcGIS中的style样式的使用
MapGIS安装包大小(以M计算)与ArcGIS (以G计算)在数量级存在差异,就可以隐约知道ArcGIS功能的强大.ArcGIS更注重重用(比如符号库.模块等).数据与制图分离(尤其是制图表达最能体 ...
- github 基础教程推荐
github现在很火的样子 我在一篇博客上看到说“如果你不知道什么是github,那你就不能说你是个coder,如果你现在看到这篇博客,那么你已经是个coder了”. 我对github一直很好奇,可是 ...
- Swift字符与字符串
学习来自<极客学院:Swift中的字符串和集合> 工具:Xcode6.4 直接上基础的示例代码,多敲多体会就会有收获:百看不如一敲,一敲就会 import Foundation /**** ...
- Eclipse 导入项目后启动报异常:java.lang.UnsatisfiedLinkError: Native Library *.dll already loaded in another classloade 解决方法
tomcat 服务器的配置信息如下:
- su su -
http://www.ha97.com/4001.html su命令和su -命令最大的本质区别就是:前者只是切换了root身份,但Shell环境仍然是普通用户的Shell:而后者连用户和Shell环 ...
- Entity Framework中的Identity map和Unit of Work模式
阅读目录: 一.什么是Identity map模式 二.关于Identity map模式的验证示例 三.Unit of Work 模式 四.总结和注意的问题 一,什么是Identity map模式 I ...
- 测试mysql的sql语句预编译效果
玩Oracle的都比较关注shared pool,特别是library cache,在使用了绑定变量(预编译sql)之后确实能得到很大的性能提升.现在在转Mysql之后特别是innodb很多东西都还能 ...