Grandpa Demo on iPhone
Grandpa从设计之初就定位于跨平台,渲染API无关的库。核心代码仅依赖c++标准库,理论上可以在任何平台,用任何(基本)符合c++标准的编译器编译。
但是这次还是碰到了一些问题,主要还是VC用的时间太长了,没有意识到某些特性实际上是非标准的,例如:
- hash_map头文件的位置不同。大家都知道该容器是非标准的,在vc下该头文件和其他容器在一起,而gcc下在ext子目录中
- gcc警告最后一行非空(也就是说源代码文件最后一个字符必须是回车,标准的确是这么规定的),vc不会警告
- vc允许只声明enum,gcc不允许
- gcc没有“安全版”(带_s)的字符串处理函数
另外,Mac OS X(以及Linux等其他Unix系的操作系统)是用utf-8表示unicode,而Windows则采用utf-16,这一点也引起了一些小麻烦。
还有一个很讨厌,gcc居然不认识utf-8的bom(ef,bb,bf)。导致我所有的源代码文件都要改为multibytes编码
好在这些都是小问题,花了不到一天时间就都解决了。
特别感谢张志鹏同学,帮我把原来基于d3d的Demo移植到了Opengl es上。
另外从今天开始,Grandpa SDK开放svn更新,地址为 Http://www.multi-crash.com/release
推荐使用TortoiseSVN。
呵呵,我从gameres上来看了,支持一下.
另,我用gcc可以编译utf8啊,可能是无bom的utf8,你可以保存为utf8无bom试试..
😀
linux是utf32吧..wchar_t是4字节
utf8是通用的说~ CEGUI就用utf8,内部存储使用utf32,不过在windows下调试挺不方便的,一怒之下把它改成utf16了,呵呵