PDA

View Full Version : Need help on ATI fragment shader



Pod
06-16-2003, 10:45 PM
Now I try to do simple dependent texture on my R8500 and catalyst 3.4 but it doesn't work.
All I've got is black surface.

my code :

glBindFragmentShaderATI(idMyShader);
glBeginFragmentShaderATI();
glSampleMapATI(GL_REG_1_ATI, GL_TEXTURE1_ARB, GL_SWIZZLE_STR_ATI);
glColorFragmentOp2ATI(GL_MOVE_ATI, GL_REG_2_ATI, GL_NONE, GL_NONE,
GL_REG_3_ATI, GL_NONE, GL_NONE);
glSampleMapATI(GL_REG_0_ATI, GL_REG_1_ATI, GL_SWIZZLE_STR_ATI);
glEndFragmentShaderATI();

It doesn't work so I try to map base texture only.

glBeginFragmentShaderATI();
glSampleMapATI(GL_REG_0_ATI, GL_TEXTURE1_ARB, GL_SWIZZLE_STR_ATI);
glEngFragmentShaderATI();

It still doesn't work. http://www.opengl.org/discussion_boards/ubb/confused.gif
The results are the same.

I'm sure that I bound the textures right coz
when I disable GL_FRAGMENT_SHADER_ATI
in my code the textures are mapped on surface correctly.

I really need to get this working. Any help would be much appreciated.

vincoof
06-23-2003, 10:48 AM
do you call glBeginShader / glEndShader EVERY FRAME or do you call this pair ONCE in an initialization process ?

FYI , callling this line :
glSampleMapATI(GL_REG_0_ATI, GL_TEXTURE1_ARB, GL_SWIZZLE_STR_ATI);
has the effect of sampling TEXTURE0 with coordinates from TEXTURE1, if ever allowed. Is it what you want ?