2014-09-07 2 views
0

У меня есть приложение захвата C#, которое захватывает скриншот приложения и рисует его в другое окно. Теперь я хочу, чтобы один цвет (или диапазон) снимка экрана был прозрачным, а затем рисовал его так.SharpDX и установка одного цвета как прозрачного (directx9)

Я рисую скриншот как спрайт на поверхность 3d (directx9) с помощью SharpDX.

Как я могу сделать эту прозрачность?

ответ

0

При преобразовании скриншота в текстуру ваши цвета должны быть определены четырьмя значениями R, G, B, A. Альфа-канал отвечает за прозрачность, поэтому вы должны проверить, имеет ли цвет значение/диапазон, который вы хотите вырезать, и измените его значение альфа на 0.

0

Было немного странно. Мои альфа-модифицированные фотографии не отображались при рисовании: ing. Это потому, что я не указал режим alphablend в .Begin-statement. И я не нашел другого способа сделать это, чем пройти через все растровые изображения и изменить альфа-значение на один пиксель в то время.