Quote:

maybe I sgould try passing the worldToTangent(normal,tangent) to the pixel shader...



I wouldn't do that, as it will be very slow. There are many more pixels than vertices, so as a general rule you should keep as much calculations in the vertex shader as possible.

Maybe I or someone else can spot the error if you post your code.