Какой лучший выбор при попытке замаскировать текстуру
например, ColorSplash или другие приложения, такие как iSteam и т. д.
Я начал изучать OPENGL ES как ... 4 дня назад (я всего
новичок) и попробовал следующий подход:
1) Я создал цветную texture2D, версию первого в градациях серого.
текстура и третий texture2D под названием маска
2) Я также создал texture2D для кисти ... которая имеет оттенки серого и
непрозрачный (кисть = черный = 0,0,0,1 и окружающая среда = белый =
1,1,1,1). Моим намерением было создать сглаженную кисть с гладкой
края, но я в порядке с нормальным прямо сейчас
3) Я искал технику маскировки в интернете и нашел это
учебное пособие ZeusCMD - учебные пособия по проектированию и разработке: учебные пособия по программированию ES OpenGL - маскировка
о маскировке. Учебник говорит мне использовать смешивание для достижения
маскировка ... сначала нарисуйте цветной, а затем замаскируйте
glBlendFunc (GL_DST_COLOR, GL_ZERO) и затем в оттенках серого с
glBlendFunc (GL_ONE, GL_ONE) ... и это дает мне что-то близкое к
что я хочу ... но не совсем то, что я хочу. Результат замаскирован, но
это как-то ярко выражено
4) Для рисования на маску текстуры я использовал дополнительный объект буфера кадра (FBO)
Я не очень доволен полученным изображением (закрашенная картинка)
ни со скоростью, достигнутой этим методом. Я думаю нормальный путь
было рисовать непосредственно в оттенках серого (наложение) texture2D, влияющих
только это альфа-канал в тех местах, где кисть попадает. Есть ли
быстрый способ достичь этого? Я много искал и не получил
ответ понятен и понятен. Затем в основном цикле розыгрыша I
можно только нарисовать цветную текстуру, а затем смешать оттенки серого поверх
с glBlendFunc (GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA).
Я просто хочу научиться использовать OPENGL ES, и это сводит меня с ума, потому что я не могу заставить его работать должным образом. Совет, ссылка на учебник будет высоко ценится.