2016-08-24 2 views
0

SDL2 предоставляет по умолчанию 3 blend modes: альфа-смесь, добавка и умножение.Как реализовать пользовательский режим смешивания в SDL2?

Однако мне нужно сделать заполненные прямоугольники, используя режим линейного света.

Возможно ли это реализовать с использованием OpenGL или в виде комбинации трех встроенных режимов наложения или мне нужно преобразовать все мои SDL_Texture s в SDL_Surface s и изменить значения пикселей вручную?

+0

Держите экземпляр вашей поверхности, изменять эту поверхность и сделать текстуру из него. Текстура находится в памяти рядом с вашим GPU. – jordsti

+0

Да, это то, что я, вероятно, буду делать. – emlai

+0

Скорее всего, чтение и перепрограммирование программного обеспечения будут чрезвычайно медленными. Вы можете визуализировать текстуру, а затем комбинировать две текстуры с шейдером и иметь очень хорошую производительность с этим. Однако это не совсем то, что делает смешение (рендеринг нескольких фигур должен смешиваться в порядке рисования, а не только один раз). – keltar

ответ

Смежные вопросы