Рисование растрового изображения (шара) на многоугольнике с прозрачными краями вокруг шара на Android с использованием OpenGL - PullRequest
0 голосов
/ 18 января 2012

Игра, которую я пишу, имеет два слоя.Первый - это фоновый слой, который я рисую, текстурируя фоновое изображение на многоугольник.Второй уровень имеет небольшой многоугольник (представляющий шар), который перемещается по экрану поверх фонового слоя.

Когда я накладываю PNG шара на маленький многоугольник (второй слой), текстуранарисован, но остальная часть маленького многоугольника черная.Я хочу, чтобы черный цвет за шаром был прозрачным, чтобы вы могли видеть фон за ним.Другими словами, каждый пиксель на многоугольнике, который не является частью шара, должен быть прозрачным.

Я экспериментировал со смешиванием, но безуспешно.

Как мне это сделать?

1 Ответ

1 голос
/ 18 января 2012

Включить смешивание при рисовании мяча.Шарик PNG должен иметь альфа-канал и быть прозрачным в нужных местах.

glDisable(GL_BLEND);
draw_background();

glEnable(GL_BLEND);
glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
draw_ball();
...