On a side note, the FX shader I used was "RTTNormalMap.fx". I'm clueless on this code stuff, though. If someone could make it support 3 lights, transparency, and specular, I'll have your baby
Looks to me like max isn't calculating nor using the tangents and bitangents, which are required for proper lighting with tangent space maps. The tangents and bitangents need to be calculated per-vertex from the UV coordinates of the model. Once they're created, they can be stored in an unused UV channel. Then the light…
Awesome. Thanks for looking into this, everyone. I knew I wasn't crazy! Hopefully someone here is crafty with code/maxscript, and is willing to take this up.
Thanks for the info Eric and Ben. Vassago: I'm wondering if the engine your friend tested that in, is an OpenGL or DirectX graphics engine? Do you know? If it's DirectX, then what could it be that's causing Max's hardware renderer to screw up the display, if it's possible to have a perfectly working tangent-space normal…
Nice to get feedback directly from the developers themselves, thanks Michaelson for your time. Does RTT store the tangent/bitangent data when it creates a normal map? I can't find any options to turn it on, at least in Max 7. It seems to me both the scanline dlm and viewport fx shaders would need to access that data for it…
I'm pretty sure I've found a work around to this issue. All of my shaders put the light vector and eye vector in tangent space in the vertex shader before passing them to the pixel shader. That should work, but for some reason Max doesn't like it and you end up with weird lighting artifacts. Recently I've done some tests…