PVRTexTool -legacypvr with OGLPVRTC4

I used to use PVRTexTool v. 3.23 from the command line to create textures for iOS OpenGL ES 1.1, like this:

PVRTexTool -f OGLPVRTC4 -m -pvrtcbest -yflip 0 -i strokes.png -o strokes.pvr

Worked great; way better than Apple's tool. I'm now trying to do a larger, 4096x4096 texture for iPad. This tells me:

"The active PVRTC compressor cannot handle MIP-levels bigger than 2048x2048"

Okay, so I read a post on this forum saying that this version can only do 4096x4096 in -pvrtcfast, which works, but looks bad. I download the latest version, 3.40.

PVRTexToolCL -f OGLPVRTC4 -m -q pvrtcbest -legacypvr -i strokes~ipad.png -o strokes~ipad.pvr

This tells me: 

"Deprecation Warning: Used old PVRTexTool interface. This is now deprecated and may be turned off in a future release. Please see PVRTexTool manual for help"

Despite this, it still doesn't write a PVR2 file header, but instead something like a PVR3?  OGLPVRTC4 is not listed in the supported formats, either:

"-Valid Formats: PVRTC1_2, PVRTC1_4, PVRTC1_2_RGB, PVRTC1_4_RGB, PVRTC2_2, PVRTC2_4, ETC1, UYVY, YUY2, 1BPP, RGBE9995, RGBG8888, GRGB8888, ETC2_RGB, ETC2_RGBA, ETC2_RGB_A1, EAC_R11, EAC_RG11"

I then tried changing some of the other formats, like PVRTC1_4 and PVRTC2_4. PVRTC1_4 actually works, with the right file header, but it looks bad. PVRTC2_4 generates the right header, but it is, of course, the wrong texture code. Similar results when trying from the GUI interface.

Is there some way I can get the familiar quality out of PVRTexTool while encoding a 4096x4096 texture in PVRTC4 in the old header format? Thanks!

nick2012-09-23 18:39:29

Hi Nick,

Using version 3.40, you should be able to compress a 4k by 4k texture using -q pvrtcbest, and get decent quality out as long as you have sufficient memory (at least 2GB free, so probably 3GB minimum on the system). Using the command below should produce the output you expect:

PVRTexToolCL -f PVRTC1_4 -m -q pvrtcbest -legacypvr -flip y,flag -i strokes~ipad.png -o strokes~ipad.pvr

Are you seeing issues with this?

For reference the PVRTC2_… types are PVRTC version 2, which is a different format to PVRTC1_… which are the original PVRTC formats.






/* Style Definitions */
{mso-style-name:"Table Normal";
mso-padding-alt:0cm 5.4pt 0cm 5.4pt;
font-family:"Times New Roman","serif";}

Ah, I see. That command works, but the output quality is much lower with the same images (combined into one big texture instead of into seventeen smaller textures). Is there a reason why the quality would suffer so?

Hi Nick,

I’m not aware of anything that should cause this issue. Would it be ok for you to share your images with us? If you could send them to DevTech@imgtec.com, I can take a look to see what the issue is. If you could also send it as the original seventeen textures that’d be a big help.