Рисование текстур с переменной прозрачностью

Я разработчик C# со средним опытом, но я новичок в XNA и графике в целом. Я делаю 2D-игру и пытаюсь нарисовать частично прозрачную текстуру. Желаемое значение прозрачности сохраняется в переменной с плавающей запятой. Единственное решение, которое я нашел, - это напрямую редактировать альфа-значения в текстуре в каждом кадре, но это кажется неэффективным. Я пытался использовать альфа-смешивание, но не смог понять, как использовать собственное значение прозрачности. Есть ли лучший способ сделать это?

Изменить: добавлено больше информации.


person GregoryComer    schedule 23.09.2011    source источник
comment
Можете ли вы опубликовать код, который вы пытаетесь использовать?   -  person thedaian    schedule 24.09.2011
comment
Ни один код, который я пробовал, не делал того, что я хочу, поэтому у меня пока нет кода.   -  person GregoryComer    schedule 24.09.2011


Ответы (2)


если вы используете spritebatch, это легко:

 float alpha = desired_alpha;

 spritebatch.Draw(texture, pos, source, Color.White * alpha);
person Blau    schedule 23.09.2011

Вы можете попробовать использовать этот конструктор Color для передачи альфа-значения:

http://msdn.microsoft.com/en-us/library/dd231957(v=xnagamestudio.31).aspx

person Community    schedule 23.09.2011