pvrtextool cl未生成标准标头



我正在使用今天下载的最新pvrtextoolCL。

问题是,它产生的标题与苹果的texturetol或在线文档中的标题不同。如果我在gui工具中使用传统的保存,它是有效的,但我需要命令行工具的选项。

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

如果Legacy Save As选项对您有效,那么您的代码将解析Version2 PVR Texture标头。最新的PVRTexTool和PVRTexToolCL都使用版本3的头格式V3。

如果你需要命令行,你可以选择

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

B) 使用苹果XCode提供的texturetol来压缩你的纹理

C) 更新代码以解析版本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中的示例代码。

为了补充@Snickers的便利帖子,这里有一个在GitHub上添加PVRv3解析的要点。它是为Cocos2D设计的,但看起来主要来自PVR SDK?

https://gist.github.com/robertjpayne/2928080

相关内容

  • 没有找到相关文章

最新更新