[Unity3D] Dynamic Font for NGUI 2.5.0c,动态字体脚本支持NGUI最新版本
2013-04-01 14:36
1016 查看
基于NGUI最新版2.5.0c修改UIFont和其Inspector脚本,支持动态字体
使用步骤:
1、导入最新版本的NGUI包
2、导入U3D_DynamicFont_UIFont_NGUI2.5.0c
3、(Option)如果没有导入过动态字体shader,可以把shader导入U3D_DynamicFont_Shaders
文件下载
问题解决:
1、换行的问题
2、字体渲染和动态字体默认Font size尺寸的偏差
上图对比如下:
看到下面那个字体渲染比“白色”ngui的渲染体偏移了,为了解决这个bug,我们需要修改UIFont:
在开头添加一个bool变量控制(当然你可以设置false,无视这个问题)
//add to fixed dynamic font Y offset Print bug.
private const bool isDynamicFontCustomEditYoffset = true;
然后找到Print()方法中的下面位置:
//please custom edit the dynamic font y offset bug.?? if(isDynamicFontCustomEditYoffset)
{ // 16 mean input the TTF font "size" in inspector.
// -0.85f is need to Manual debugging..... v0.y = scale.y * (-y + charInfo.vert.yMax + 16) - 0.85f;
} else
v0.y = scale.x * (-y + charInfo.vert.yMin);
v1.x = scale.x * (x + charInfo.vert.xMax);
if(isDynamicFontCustomEditYoffset) {
v1.y = v0.y - scale.y * (charInfo.vert.yMax - charInfo.vert.yMin); }
else v1.y = scale.y * (-y + charInfo.vert.yMax);
如上红色标识的数字,第一个16是TTF导入后默认字体面板上的Font size,第二个需要不同字体调试出来的一个offset fixed值,我上面完整的图是雅黑默认16号字库的字体。其他字体应该需要另外测试下。
3、动态字体刷新了,然后UILabel没有找到这个刷新后的字体(因为信息已更新)
如上图,我们在UILabel中初始化添加注册这个字体到刷新消息监听,然后OnEnable中再刷新下!(确保Disable和Active UILabel时候依然会存在的问题)。理论已经解决,目前测试不会再出现该bug,然后字体全乱的现象。
PS:
如何使用在NGUI中使用动态字体教程,可以参考:http://game.ceeger.com/forum/read.php?tid=8965
相关文章推荐
- Unity动态字体文字破碎的解决方法(Dynamic Font Broken)
- DevExpress VCL for Delphi 各版本收集下载(最新支持Delphi XE 7)
- Unity3d NGUI 动态显示字体
- 【Unity3D】【NGUI】移动设备上使用动态字体Label显示不正确
- 【Untiy3D 游戏开发之一】Unity3D For Window/Mac最新4.2.0版本破解教程
- Chrome最新4.0版本支持GreaseMonkey脚本
- Unity动态字体文字破碎的解决方法(Dynamic Font Broken)
- NGUI动态字体出现character not found in font
- DevExpress VCL for Delphi 各版本收集下载(最新支持Delphi XE 5)
- Unity3D中NGUI的动态字体(TTF)制作方法!!!
- Unity动态字体文字破碎的解决方法(Dynamic Font Broken)
- Unity3D中NGUI的动态字体(TTF)制作方法!!!
- NGUI 2.6.4支持中文字体--创建动态字体库
- DevExpress VCL for Delphi 各版本收集下载(最新支持Delphi XE 7)
- 【Untiy3D 游戏开发之一】Unity3D For Window/Mac最新4.2.0版本破解教程
- 最新unity3d中关键概念全解(坐标系,脚本的执行顺序等)
- RF1001: 各浏览器对 '@font-face' 规则支持的字体格式不同,IE 支持 EOT 字体,Firefox Safari Opera 支持 TrueType 等字体
- ArcGIS API for Javascript离线部署 (最新版本jsapi3.9)
- 24种不同的ITF条形码字体版本的条形码控件Interleaved 2 of 5 Barcode Font Advantage Package
- CodeGear.Delphi.for.PHP 2.1.0.1083 最新版本(包含破解)