I think something is messed up with the shader compilation tools. It
could be just me, or it could be that I truly have the basis for
righteous indignation :)
A bit of background: I've been compiling shaders and sending them off to
other people to test (as I'm writing shaders for PS 3.0, but I don't
have a card that supports it). It's been a rather frustrating three
days, as everything that should work isn't. For some reason, no matter
what shaders I send them, they all fail in exactly the same way that my
first revision failed (i.e. I've sent them multiple revisions, but they
all exhibit the behavior of the first revision).
So I did a bit of testing on my own system with some PS 2.0 shaders. It
eventually came down to this: I compiled me a parallax shader and put it
in gamedir/bin, and all was well with "mat_parallaxmap 1". Then I
modified the shader to do only one thing:
return HALF4( 1.0f, 0.0f, 0.0f, 1.0f );
and compiled the shader sources but DID NOT UPLOAD THE UPDATED DLL. All
the same, the next time I was in-game, everything was bright-red, as
would be expected for the code above!
Thus I suspected that the DLL was linking to the shaders in my
development folder. To test that, I booted the DLL over to my Linux
system and did a search for strings corresponding to the location of my
development tree. Basically:
strings game_shader_generic_parallax.dll | grep 'sdkshaders'
gave me a few lines like so:
z:\src\sdkshaders\parallax\SHADERFILE
In summary, I'm pretty sure that the DLLs aren't correctly referencing
the shaders included in the DLL itself. (As a sidenote, I also found it
strange that all my shader DLLs, regardless of the contents of the
shader source, compiled to the same exact size, byte-for-byte. I don't
remember the exact byte size, but it came out to 388 KB).
Your friendly neighorhood hlcoder,
-John Sheu
_______________________________________________
To unsubscribe, edit your list preferences, or view the list archives, please
visit:
http://list.valvesoftware.com/mailman/listinfo/hlcoders