Прозрачные области текстуры PVR загружаются белым цветом в cocos2d

Я загружаю большое количество текстур PVR в cocos2d в приложении для iOS, но прозрачные области текстур PVR загружаются белыми.

Я создал текстуры с помощью команды texturetool -e PVRTC -o $file.pvr -f PVR $file

Текстуры, кажется, демонстрируют прозрачность при просмотре в приложении TexturePacker.

Есть ли что-то, что мне нужно установить в cocos2d, чтобы это работало? Или мне нужно запускать texturetool с другими флагами?

Текстура, просмотренная в TexturePacker

Текстура, просматриваемая в приложении


person tobyc    schedule 24.03.2012    source источник


Ответы (1)


Возможно, «предварительное умножение альфа» помогает. Это флажок в TexturePacker, который находится на левой панели внизу в разделе «Дополнительно».

Наведите указатель мыши на этот флажок, чтобы получить дополнительную информацию. В частности, вам нужно включить предварительное умножение альфа-канала в cocos2d с помощью

[CCTexture2D PVRImagesHavePremultipliedAlpha:YES];
person LearnCocos2D    schedule 24.03.2012
comment
Бум. Я думаю, ты попал в точку. Кажется, что альфа на краях прозрачных пленок немного грубовата для того, что мы хотим сделать. Но спасибо за ответ! - person tobyc; 25.03.2012