Android — Как бороться с альфа-каналом etc1

Я пытаюсь поддержать ETC1 для моей игры на андроид, но я не знаю, что делать с альфа-каналом.

Может кто-нибудь сказать мне, с чего начать и как заставить ETC1 работать с альфой?

Обновить:
С помощью:
gl_fragColor = vec4 (tex1.rgb, tex2.a);

не работает, все еще есть черный прямоугольник вокруг моей текстуры

0

Решение

Вам нужно сделать шейдер с альфа-маской.

В основном вместо 1 текстуры для полной информации о цвете, включая прозрачность, есть 1 текстура для rgb (etc1) и 1 текстура для альфы (также может быть etc1).

Затем в своем фрагментном шейдере назначьте rgb из первой текстуры и альфа из 2-й.

 gl_fragColor = vec4(tex1.rgb,tex2.a);

!Обратите внимание, что приведенный выше код только для объяснения подхода, синтаксис может быть неправильным.

0

Другие решения


По вопросам рекламы ammmcru@yandex.ru
Adblock
detector