First you draw your objects once with one shader:
// activates shader 1 device->SetPixelShader(PixelShader1); // one that apply diffuse texture Object.Draw();
Then you draw it again with other pixel shadr but enable alpha blending, for example it could be ADD mode:
// activates shader 2 ( 1 one is now "disabled") device->SetPixelShader(PixelShader2); // one that does lightning device->SetRenderState( d3drs_alphablendenable, true) device->SetRenderState( d3drs_srcblend, one) device->SetRenderState( d3drs_destblend, one) Object.Draw();
So it blends over what is rendered before it. Get it?
Or you could do all in one shader (diffuse + lighning), but that is your choice.
Have you ever worked in Photoshop with different layers and blend them?
If so, it is the similar thing.