It sounds like you are missing this info:

The compiled HLSL shaders are not in the shader DLL.  That DLL has the
C++ code that does the state setup and linkage.  The shaders themselves
are in your mod directory under the shaders/ subdirectory.  They are
.VCS files.  When you run the buildshaders command/process it produces
those VCS files and header files that allow you to recompile your DLL
and bind to the appropriate data/interfaces.

Jay

> -----Original Message-----
> From: [EMAIL PROTECTED]
> [mailto:[EMAIL PROTECTED] On Behalf Of John Sheu
> Sent: Tuesday, March 07, 2006 9:22 PM
> To: [email protected]
> Subject: [hlcoders] Shaders
>
> 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
>
>

_______________________________________________
To unsubscribe, edit your list preferences, or view the list archives, please 
visit:
http://list.valvesoftware.com/mailman/listinfo/hlcoders

Reply via email to