All pastes #613150 Raw Edit

Unnamed

public text v1 · immutable
·published 2007-07-10 20:51 UTC
rendered paste body
class MyShaderCallBack : public video::IShaderConstantSetCallBack
{
public:


  virtual void OnSetConstants(video::IMaterialRendererServices* services, s32 userData)
  {
    services->getVideoDriver();

int c[] =
                {
                    0,1
                }
                ; // sampler2d IDs
            services->setPixelShaderConstant("Texture0", (float*)&c[0], 1);
            services->setPixelShaderConstant("Texture1", (float*)&c[1], 1);
	
}
};



/////////////vertex
varying vec2  texCoord;

void main(void)
{
   
    gl_Position = vec4((gl_MultiTexCoord0.xy-0.5)*2,0,1);
   // Texture coordinate for screen aligned (in correct range):
   texCoord = gl_MultiTexCoord0;
      
}

/////pixel
uniform sampler2D Texture0;
uniform sampler2D Texture1;

varying vec2 texCoord;

void main(void)
{
vec4 tex = texture2D( Texture0, texCoord );
vec4 alpha = texture2D( Texture1, texCoord );
alpha.r= alpha.r + alpha.g +alpha.b;
gl_FragColor = (tex.rgb,alpha.r);
}