Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Мультимедия, OpenGL/DirectX > альфа канал


Автор: rubenhak 2.3.2007, 00:34
у меня 2 текстуры

Код

glBindTexture(GL_TEXTURE_2D, Texture0);
glTexEnvi(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_REPLACE);

glBindTexture(GL_TEXTURE_2D, Texture1);
glTexEnvi(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_COMBINE);
glTexEnvi(GL_TEXTURE_ENV, GL_COMBINE_RGB, GL_INTERPOLATE);
                
glTexEnvi( GL_TEXTURE_ENV, GL_SOURCE0_RGB, GL_TEXTURE );
glTexEnvi( GL_TEXTURE_ENV, GL_OPERAND0_RGB, GL_SRC_COLOR );

glTexEnvi( GL_TEXTURE_ENV, GL_SOURCE1_RGB,  GL_PREVIOUS);
glTexEnvi( GL_TEXTURE_ENV, GL_OPERAND1_RGB, GL_SRC_COLOR );

glTexEnvi( GL_TEXTURE_ENV, GL_SOURCE2_RGB, GL_TEXTURE );
glTexEnvi( GL_TEXTURE_ENV, GL_OPERAND2_RGB, GL_SRC_ALPHA );


теперь мне нужно вместо GL_SRC_ALPHA  использовать x*GL_SRC_ALPHA, как это сделать не знаю.

пробовал
Код

glTexEnvf(GL_TEXTURE_ENV, GL_ALPHA_SCALE, 0.5);

но никакой разници

Автор: rubenhak 5.3.2007, 14:17
люди добрые, никто не в курсе да? smile smile 

Автор: Rickert 6.3.2007, 08:53
Так а разве glColor4f(), четвёртым параметром не делает этого?

Автор: rubenhak 6.3.2007, 22:16
Rickert, 
должен, но никак не получается

Автор: Rickert 7.3.2007, 08:45
Что значит "не получается"? Приведи скриншоты и подробнее давай...

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)