Форум: "Игры";
Текущий архив: 2004.01.16;
Скачать: [xml.tar.bz2];
ВнизAlpha-channel в Direct3D Найти похожие ветки
← →
MeF88 (2003-07-02 15:18) [0]Пишу нечто вроде спрайтового движка на Direct3D для одной игры. У меня есть 32битная текстура с альфа-каналом. Сам прямоугольник с текстурой выводится нормально, но как задать в Direct3D использование альфа-канала из текстуры?
← →
NailMan (2003-07-02 16:48) [1]Ковыряй SDK на тему Alpha Texture Blending. Стейты D3DBLEND_*** и IDirect3DDevice8.SetRenderState();
В примерах SDK есть такая прога(среди примеров D3D, названия точно не помню, но есть что-то с *tex*), в которой можно интерактивно создавать стейты(с отображением на образце) с различными режимами и он выдает тебе конечный код, который можно впихнуть в свой проект(преобразовав с C++ к паскалевскому виду).
← →
MeF88 (2003-07-02 21:54) [2]Эх. Я SDK стер недавно, так бы может быть не спрашивал. Но я пробовал все возможные D3DBlend_*, правда какой рендер стайт стоял не помню...
← →
Sapersky_ (2003-07-03 09:22) [3]SetRenderState(D3DRS_ALPHABLENDENABLE, 1);
SetRenderState(D3DRS_SRCBLEND, D3DBLEND_SRCALPHA);
SetRenderState(D3DRS_DESTBLEND, D3DBLEND_INVSRCALPHA);
SetTextureStageState(0, D3DTSS_COLORARG1, D3DTA_TEXTURE);
SetTextureStageState(0, D3DTSS_COLOROP, D3DTOP_SELECTARG1);
SetTextureStageState(0, D3DTSS_ALPHAARG1, D3DTA_TEXTURE);
SetTextureStageState(0, D3DTSS_ALPHAOP, ( SetTextureStageState) [3] SetRenderState(D3DRS_ALPHABLENDENABLE, 1);
SetRenderState(D3DRS_SRCBLEND, D3DBLEND_SRCALPHA);
SetRenderState(D3DRS_DESTBLEND, D3DBLEND_INVSRCALPHA);
SetTextureStageState(0, D3DTSS_COLORARG1, D3DTA_TEXTURE);
SetTextureStageState(0, D3DTSS_COLOROP, D3DTOP_SELECTARG1);
SetTextureStageState(0, D3DTSS_ALPHAARG1, D3DTA_TEXTURE);
SetTextureStageState(0, D3DTSS_ALPHAOP, D3DTOP_SELECTARG1);
Ну и, само собой, в текстуре должен быть альфа-канал.
Упомянутая прога из DX SDK называется MFCTex. Там, правда, используется только текстурный блендинг (SetTextureStageState), но обычный легко добавить, т.к. имеется Delphi-конверсия на http://clootie.narod.ru/index.html
Страницы: 1 вся ветка
Форум: "Игры";
Текущий архив: 2004.01.16;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.009 c