最近在了解并使用Cocos2d的一些功能以便在iPhone上画一个页面。然而,在使用其中一个CCBitmapFontAtlas类的时候发现了一些问题。
该类可以按照一定的字体风格显示字符。使用该类本身并没有什么困难和问题。然而该类所需的字体文件是需要一个.fnt文件和.png文件。当调用该类生成文字时,它会去访问.fnt文件,然后通过.fnt文件里该文字对应的坐标,到.png文件里去寻找相对应的区域,最后将该区域的图片显示到iPhone的界面上。而.fnt文件和.png文件要用Hiero软件生成。问题就在这里产生了。
第一个问题是一定要从http://www.n4te.com/hiero/hiero.jnlp和http://slick.cokeandcode.com/demos/hiero.jnlp这两个链接去下载。我之前从其它的链接下载了一个Hiero v2.0版,但是使用的时候发现它生成的.png文件里面的内容竟然是反的,在把该文件倒转、保存后,iPhone上显示的界面都正常,因此可以确定是我下载的Hiero软件在生成.png文件的时候有Bug。然后到Cocos2d主页上重新找过,在http://www.cocos2d-iphone.org/wiki/doku.php/prog_guide:labels页面上找到上述两个链接。重新下载后生成的.png文件就正常了。
第二个问题是使用Hiero软件生成.fnt文件和.png文件的时候一定要注意,如果先生成了一对字体文件,保存名字为font_sample.fnt和font_sample.png,然后没有关掉软件,再生成下一对字体文件,无论是覆盖之前的两个文件还是重新生成两个文件如font_sample2.fnt和font_sample.png,你都会发现新的一对字体文件里.fnt文件是更新了,但是.png文件并没有更新,里面的文字还是第一次生成的那个字体。使用这样的一对文件去生成iPhone的界面,只能显示出来一堆不知所谓的线条。然而,如果再生成好第一份字体文件之后,关闭软件,再重新打开,生成第二份字体文件的话,就不会出现该问题,估计可能是Hiero程序在创建新字体的时候没有清掉Cache之类的问题。虽然这样每生成一次字体都要重启一次软件,带来不少麻烦,但好在该软件的使用频率不高,因此还可以忍受。
分享到:
相关推荐
《cocos2d-x -2.0-rc2-x-2.0.1:跨平台手机游戏开发的强大引擎》 cocos2d-x是一个广泛使用的开源游戏开发框架,专为构建2D游戏、演示和其它图形交互应用而设计。这个框架的版本"2.0-rc2-x-2.0.1"是其发展过程中的一...
cocos2d-2.0-x-2.0.2.zip.002第二部分,总共三部分,都是免费的
《基于cocos2d-2.0-x-2.0.3的游戏实例——魔塔(win版)详解》 在游戏开发的世界里,cocos2d-x是一个广受欢迎的开源跨平台2D游戏引擎,它基于C++,并提供了Python和Lua等语言的绑定,使得开发者能够快速构建游戏。...
cocos2d-2.0-x-2.0.2.zip.001 第一部分总共三部分
《Cocos2d-html5-v0.5.0-alpha2:HTML5游戏开发新篇章》 Cocos2d-html5-v0.5.0-alpha2是一款基于HTML5技术的游戏开发框架,于2012年6月18日发布。这款开源软件为开发者提供了一个强大的工具集,用于创建互动式的2D...
开发cocos2d-20.0-x-2.0.4用的jar包,这个是最新的。懒人必备!!
cocos2d-2.0-x-2.0.2.zip.003第三部分,总共三部分
cocos2d-x不仅适用于游戏开发,还可以用于创建教育软件、互动媒体和其他2D图形应用,其强大的场景管理、精灵(Sprite)系统和粒子效果等功能,使得开发者能够快速构建各种复杂的2D场景。 总的来说,cocos2d-x 2.2.2...
《使用cocos2d-x-2.0-2.0.4开发的简单跨平台益智类魔塔小游戏》 cocos2d-x是一个开源的游戏开发框架,它基于C++,支持多平台,包括iOS、Android、Windows以及Mac OS等。在本项目中,开发者利用cocos2d-x 2.0.4版本...
《cocos2d-x与第三方库的IPv6适配及WebSocket技术详解》 在移动游戏开发领域,cocos2d-x是一个广泛使用的2D游戏引擎,它为开发者提供了丰富的功能和高效的性能。随着网络环境的变化,IPv6逐渐成为主流,对于cocos2d...
cocos引擎老版本下载集合(cocos2d-x-2.2.1 - 3.5),分别有cocos2d-x-3.5、cocos2d-x-3.4、cocos2d-x-3.2、cocos2d-x-2.2.6、cocos2d-x-2.2.2和cocos2d-x-2.2.1。
cocos引擎老版本下载集合(cocos2d-x-2.2.1 - 3.5),分别有cocos2d-x-3.5、cocos2d-x-3.4、cocos2d-x-3.2、cocos2d-x-2.2.6、cocos2d-x-2.2.2和cocos2d-x-2.2.1。
是由object-C移植而来的JavaScript版本。 主要功能: 流程控制(Flow control):非常容易地管理不同场景(scenes)之间的流程控制 ...http://article.ityran.com/archives/tag/cocos2d-html5系列教程
《基于cocos2d-2.0-x-2.0.3的游戏实例Stua(win版)》 本文将深入探讨使用Cocos2d-x 2.0.3版本开发的游戏实例——Stua,以及与Box2D物理引擎的集成应用。Cocos2d-x是一个开源的、跨平台的2D游戏开发框架,它基于C++...
Cocos2d-x教程视频Cocos2d-x功能扩展-C++-Cocos2d-x-Android-iOS混合编程与NDK开发环境搭建提取方式是百度网盘分享地址
使用cocos2d-x开发的跨平台知识问答小游戏,基于cocos2d-x-2.0-2.0.4版本,在ipad4.3,ipad5.0,ipad6.0,iphone4.3,iphone5.0,iphone6.0系统中运行成功,后续添加android系统工程,更新中... 软件开发设计:PHP、QT、...
《cocos2d-x与libluajit.a:解决设备崩溃问题》 在移动游戏开发领域,cocos2d-x是一个广泛使用的开源2D游戏引擎,它基于C++,并且支持Lua脚本语言,为开发者提供了高效且便捷的游戏制作工具。然而,在实际开发过程...
Cocos2dx-win8-Cocos2dx-2.1.0-wp8-2.0-alpha 是一个针对Windows Phone 8平台的Cocos2d-x框架的特定版本。Cocos2d-x是一款开源的游戏开发框架,它基于C++,并提供了Python、Lua等多种脚本语言接口,让开发者能够高效...
Cocos2d-x教程视频Cocos2d-x游戏实战项目开发-Flappy Bird游戏提取方式是百度网盘分享地址
Cocos2d-x是一款开源的游戏开发框架,特别适用于2D游戏、实时渲染应用程序以及互动式教育软件的开发。2.2.0是该框架的一个历史版本,它在当时提供了丰富的功能和性能优化,但随着时间的发展,为了保持最佳的兼容性和...