Cocos2d iphone Cocos2D/3D:如何生成和加载压缩纹理?

Cocos2d iphone Cocos2D/3D:如何生成和加载压缩纹理?,cocos2d-iphone,textures,cocos3d,Cocos2d Iphone,Textures,Cocos3d,我正在玩弄PVRTexTool GUI,但应用程序只能正确显示未压缩的32位纹理。到目前为止,我已经尝试了所有OpenGL ES 2.0格式 还有一些OpenGLES1.0 …但有些无法加载,有些则以黑色显示 我正在用这个代码加载纹理 // load texture CC3Texture* texture = [CC3Texture textureFromFile:@“my_texture.pvr”]; 加载纹理的代码正常,但并非所有由PVRTexTool生成的格式都受支持 使用命令行工具

我正在玩弄PVRTexTool GUI,但应用程序只能正确显示未压缩的32位纹理。到目前为止,我已经尝试了所有OpenGL ES 2.0格式

还有一些OpenGLES1.0

…但有些无法加载,有些则以黑色显示

我正在用这个代码加载纹理

// load texture
CC3Texture* texture = [CC3Texture textureFromFile:@“my_texture.pvr”];

加载纹理的代码正常,但并非所有由PVRTexTool生成的格式都受支持

使用命令行工具支持的格式有:

Command:
PVRTexToolCLI -i in.png -o out.pvr -f <format> [-q <quality>] [-m <numberofmipmaps>]

Options:

format
bits    format      Cocos2d  Cocos3d  transparency
32   R8G8B8A8,UBN      y        y          y
16   R8G8B8,UBN        y        y          n        
16   R4G4B4A4,USN      y        y          y
16   R5G5B5A1,USN      y        y          y
16   R5G6B5,USN        y        y          n
16   A8I8,UBN          ?        ?          ?
8    A8,UBN            y        y          y
8    I8                ?        ?          ?
4    PVRTC1_4          y        *          y        
2    PVRTC1_2          y        *          y
4    PVRTC1_4_RGB      y        *          n
2    PVRTC1_2_RGB      y        *          n
4    PVRTC2_4          n        n          ?
2    PVRTC2_2          n        n          ?

? don’t know
* needs 9 mipmaps
y supported
n really :)

quality for PVRTC:

pvrtcfastest
pvrtcfast
pvrtcnormal
pvrtchigh
pvrtcbest



I'll update this table when needed
命令:
PVRTexToolCLI-i in.png-o out.pvr-f[-q][-m]
选项:
格式
bits格式Cocos2d Cocos3d透明度
32 R8G8B8A8,UBN y
16 R8G8B8,UBN y y n
16 R4G4B4A4,USN y
16 R5G5B5A1,美国纽约
16 R5G6B5,美国纽约州
16 A8I8,UBN?
8 A8,UBN y
8i8?
4 PVRTC1_4 y*y
2 PVRTC1_2 y*y
4 PVRTC1_4_RGB y*n
2 PVRTC1_2_RGB y*n
4 PVRTC2_4 n?
2 PVRTC2_2 n?
? 不知道
*需要9张地图
y支撑
n:真的吗
PVRTC的质量:
最快的
pvrtcfast
pvrtchnormal
PVRTCHOW
pvrtcbest
需要时,我将更新此表

加载纹理的代码正常,但并非所有由PVRTexTool生成的格式都受支持

使用命令行工具支持的格式有:

Command:
PVRTexToolCLI -i in.png -o out.pvr -f <format> [-q <quality>] [-m <numberofmipmaps>]

Options:

format
bits    format      Cocos2d  Cocos3d  transparency
32   R8G8B8A8,UBN      y        y          y
16   R8G8B8,UBN        y        y          n        
16   R4G4B4A4,USN      y        y          y
16   R5G5B5A1,USN      y        y          y
16   R5G6B5,USN        y        y          n
16   A8I8,UBN          ?        ?          ?
8    A8,UBN            y        y          y
8    I8                ?        ?          ?
4    PVRTC1_4          y        *          y        
2    PVRTC1_2          y        *          y
4    PVRTC1_4_RGB      y        *          n
2    PVRTC1_2_RGB      y        *          n
4    PVRTC2_4          n        n          ?
2    PVRTC2_2          n        n          ?

? don’t know
* needs 9 mipmaps
y supported
n really :)

quality for PVRTC:

pvrtcfastest
pvrtcfast
pvrtcnormal
pvrtchigh
pvrtcbest



I'll update this table when needed
命令:
PVRTexToolCLI-i in.png-o out.pvr-f[-q][-m]
选项:
格式
bits格式Cocos2d Cocos3d透明度
32 R8G8B8A8,UBN y
16 R8G8B8,UBN y y n
16 R4G4B4A4,USN y
16 R5G5B5A1,美国纽约
16 R5G6B5,美国纽约州
16 A8I8,UBN?
8 A8,UBN y
8i8?
4 PVRTC1_4 y*y
2 PVRTC1_2 y*y
4 PVRTC1_4_RGB y*n
2 PVRTC1_2_RGB y*n
4 PVRTC2_4 n?
2 PVRTC2_2 n?
? 不知道
*需要9张地图
y支撑
n:真的吗
PVRTC的质量:
最快的
pvrtcfast
pvrtchnormal
PVRTCHOW
pvrtcbest
需要时,我将更新此表

看看
cc3demomashupsene addSkyBox
方法

在那里,您可以取消对加载
Skybox.pvr
文件的行的注释。您还需要取消对调用
addSkyBox
方法的
initializeScene
方法中的行的注释


Skybox.pvr
是一种立方体贴图纹理,包含六个压缩的PVRTC 2bpp纹理。您可以使用PVRTexTool打开此纹理,并将其与尝试加载的纹理进行比较。

请查看
cc3demomashupsene addSkyBox
方法

在那里,您可以取消对加载
Skybox.pvr
文件的行的注释。您还需要取消对调用
addSkyBox
方法的
initializeScene
方法中的行的注释


Skybox.pvr
是一种立方体贴图纹理,包含六个压缩的PVRTC 2bpp纹理。您可以使用PVRTexTool打开此纹理,并将其与您尝试加载的纹理进行比较。

Wierd,Skybox.pvr CC3Demomashupse的最新格式为PVRTC 2bpp,无符号规范化字节,线性RGB,不带mipmap,但纹理元数据以39字节而不是24字节保存,可能这是PVRTexTool v 4.1.3中的一种新格式。结果表明,PVRTC I需要9个mipmap,否则纹理将加载,但渲染为blackWierd,Skybox的clotest格式。pvr CC3Demomashupse是PVRTC 2bpp,无符号规范化字节,线性RGB,没有mipmap,但纹理元数据以39字节而不是24字节保存,可能这是PVRTexTool v 4.1.3中的一种新格式。结果表明,PVRTC I需要9个mipmap,否则纹理将加载,但渲染为黑色