如何在cocos2d-x中生成ccFPSImage.c文件

时间:2014-12-27 12:16:43

标签: cocos2d-x libpng

我在cocos2d-x库中发现,有一个名为ccFPSImage.c的文件,它是FPS图像的十六进制格式数组。 Cocos2D-x用它来显示FPS。

我只是想知道如何生成该文件。

文件内容如下:

unsigned char cc_fps_images_png[] = {
  0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d,
  0x49, 0x48, 0x44, 0x52, 0x00, 0x00, 0x03, 0xe7, 0x00, 0x00, 0x00, 0x36,
  0x08, 0x06, 0x00, 0x00, 0x00, 0xa5, 0x74, 0xe8, 0xab, 0x00, 0x00, 0x0a,
  0x41, 0x69, 0x43, 0x43, 0x50, 0x49, 0x43, 0x43, 0x20, 0x50, 0x72, 0x6f,
  0x66, 0x69, 0x6c, 0x65, 0x00, 0x00, 0x48, 0x0d, 0x9d, 0x96, 0x77, 0x54,
  0x53, 0xd9, 0x16, 0x87, 0xcf, 0xbd, 0x37, 0xbd, 0xd0, 0x12, 0x22, 0x20,
.... (There are a lot of hex values here, I just omit them here)
}

我使用ImageMagick工具生成.h文件,但是当它加载时,它只是报告:

cocos2d: the file is not a dds file!
cocos3d: the file is not a ktx file!
Image WARNING: unsupport true color tga data pixel format. FILE: 
Fails: init fps_images
cocos2d: the file is not a dds file!
cocos3d: the file is not a ktx file!
Image WARNING: unsupport true color tga data pixel format. FILE: 
Fails: init fps_images
cocos2d: the file is not a dds file!
cocos3d: the file is not a ktx file!
Image WARNING: unsupport true color tga data pixel format. FILE: 
Fails: init fps_images

我使用以下命令生成.h文件:

convert fps.png h:->fps.h

有谁知道如何生成有效的ccFPSImage.c文件?

感谢。

1 个答案:

答案 0 :(得分:0)

到目前为止,ImageMagick"转换文件h:file.h"将创建一个包含GIF或PPM图像的头文件。

ImageMagick版本6.9.1-10将支持新的" -define h:format = PNG"选项将创建您期望的文件。

convert fps.png -define h:format=PNG -define png:exclude-chunks=all h:fps.h

(" -define png:exclude-chunks = all"将导致转换省略包含创建/修改日期等的不需要的辅助PNG块。)

也支持JPEG输出,通过" -define h:format = JPG"。