Alpha Blending в D3DXSprite - HELP!

Работа с 2D и 3D графикой, видео, звуком.

Модератор: Mikle

|kerish|
Постоялец
Постоялец
 
Сообщения: 831
Зарегистрирован: 22.10.2004 (Пт) 0:31

Alpha Blending в D3DXSprite - HELP!

Сообщение |kerish| » 28.11.2008 (Пт) 12:38

У меня есть простейший движок отрисовки спрайтов в DirectX8->Direct3D.

Я его приложил к сообщению вместе с примером.

Проблема в том, что я не пойму как правильно реализовать в нём Alpha Blending.

При Alpha Blend-инге спрайт не становится прозрачным в том смысле слова в каком я это хочу, как это исправить?
У вас нет доступа для просмотра вложений в этом сообщении.

djalex777
Постоялец
Постоялец
 
Сообщения: 461
Зарегистрирован: 23.03.2006 (Чт) 16:02

Re: Alpha Blending в D3DXSprite - HELP!

Сообщение djalex777 » 28.11.2008 (Пт) 15:48

При Alpha Blend-инге спрайт не становится прозрачным в том смысле слова в каком я это хочу

Это в каком-таком смысле? :) Если нужно спрайт сделать прозрачным, то задавай альфа-компоненту цвета.
Код: Выделить всё
Sprite.Draw Texture(SpriteIndex), RECT(SourceX, SourceY, tmpWidth, tmpHeight), Vec2(ScalingX, ScalingY), Vec2(RotationCenterX, RotationCenterY), Rotation, Vec2(DestX, DestY), D3DColorARGB(255, bTransparentColorR, bTransparentColorG, bTransparentColorB)

Вот у тебя функция рисующая спрайт. Ты в неё передаешь цвет функцией D3DColorARGB. Первый параметр функции D3DColorARGB - это и есть альфа-канал. Меняй его и будет прозрачность меняться.

|kerish|
Постоялец
Постоялец
 
Сообщения: 831
Зарегистрирован: 22.10.2004 (Пт) 0:31

Re: Alpha Blending в D3DXSprite - HELP!

Сообщение |kerish| » 29.11.2008 (Сб) 1:53

Спасибо, это я заработался сегодня, мозги отказывают...


Вернуться в Мультимедиа

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 25

    TopList