The you're doing it can work if you do the call after all D3DX BeginPass()
and CommitChanges() calls. However, this is not the right way of doing it.
Just simply bind the sampler state to a variable that you control through
the ID3DXEffect interface as you do with shader constants.
int minFilterVal = 1; // Linear
sampler mySampler = sampler_state
texture = (texDecal);
MipFilter = Linear;
MagFilter = Linear;
MinFilter = (minFilterVal);
And you don't have to explicitly bind the sampler to a sampler register this
Microsoft DirectX MVP,