2012-03-14 50 views
3

我正在使用今天下载的最新pvrtextoolCL。pvrtextool cl不生成标准标头

问题是它没有产生与苹果的纹理工具相同的头文件或它的在线文档中的头文件。如果我使用gui工具中的遗留保存,它可以工作,但我需要命令行工具的选项。

是否有其他人有这个问题,我能做些什么来解决它?

回答

9

如果Legacy Save As选项适用于您,则您的代码将解析第2版PVR纹理标头。最新的PVRTexTool和PVRTexToolCL都使用V3版头格式V3。

如果您需要命令行,你可以

A)使用-pvrlegacy作为命令行参数

B)使用由苹果的XCode提供的texturetool来压缩纹理

Ç )更新您的代码来解析版本3 PVR纹理头

2版PVR纹理部首

typedef struct _PVRTexHeader 
{ 
    uint32_t headerLength; 
    uint32_t height; 
    uint32_t width; 
    uint32_t numMipmaps; 
    uint32_t flags; 
    uint32_t dataLength; 
    uint32_t bpp; 
    uint32_t bitmaskRed; 
    uint32_t bitmaskGreen; 
    uint32_t bitmaskBlue; 
    uint32_t bitmaskAlpha; 
    uint32_t pvrTag; 
    uint32_t numSurfs; 
} PVRTexHeader; 

3版PVR纹理头

typedef struct _PVRTexHeaderV3{ 
    uint32_t version;    
    uint32_t flags;   
    uint64_t pixelFormat;   
    uint32_t colourSpace;   
    uint32_t channelType;   
    uint32_t height;   
    uint32_t width;   
    uint32_t depth;   
    uint32_t numSurfaces;   
    uint32_t numFaces;  
    uint32_t numMipmaps;  
    uint32_t metaDataSize; 
} PVRTexHeaderV3; 

如果您正在寻找解析一个版本3纹理头,去从抢PowerVR的SDK:

http://www.imgtec.com/powervr/insider/sdkdownloads/index.asp

而且具有看看PVRTTexture .h标题。它将具有所有枚举来定义标志以及元数据的附加结构。 SDK中还有示例代码用于读取文件并将其加载到OpenGL中。

+1

SDK被严重打破在Mac(安装多次严重,因为安装封装/应用的故障)。对复制/粘贴v3头进行投票 - 但是如果有人会以人们可以真正使用它的方式发布PVR源,而不是“安装程序安装程序(安装安装程序)”,那么这将非常棒。不工作(谢谢,想象力:() – Adam 2013-06-25 00:54:20