Added many shader source files
This should include the latest version of every shader that was in the 2007 SDK. It also includes a smattering of debug shaders, both VR distortion shaders, and other assorted shaders that will hopefully be useful. None of these new files are included in the game shader DLL project. If you need to modify one of these shaders for use in your mod you will need to rename it so that you don't collide with the version of that shader that lives in stdshader_dx9.dll.
This commit is contained in:
26
sp/src/materialsystem/stdshaders/WaterCheapOpaque_ps11.psh
Normal file
26
sp/src/materialsystem/stdshaders/WaterCheapOpaque_ps11.psh
Normal file
@@ -0,0 +1,26 @@
|
||||
ps.1.1
|
||||
|
||||
; Get the 3-vector from the normal map
|
||||
tex t0
|
||||
|
||||
; Perform matrix multiply to get a local normal bump. Then
|
||||
; reflect the eye vector through the normal and sample from
|
||||
; a cubic environment map.
|
||||
texm3x3pad t1, t0_bx2
|
||||
texm3x3pad t2, t0_bx2
|
||||
texm3x3vspec t3, t0_bx2
|
||||
|
||||
mul r0, t3, c1 ; envmap color * envmaptint
|
||||
|
||||
dp3_sat t2, v0_bx2, t0_bx2 ; dot eye-vector with per-pixel normal from t0
|
||||
|
||||
; run Fresnel approx. on it: R0 + (1-R0) (1-cos(q))^5 in alpha channel
|
||||
; NOTE: This is not perspective-correct and results in strange artifacts
|
||||
mul r1.a, 1-t2.a, 1-t2.a ; squared
|
||||
mul r1.a, r1.a, r1.a ; quartic
|
||||
mul_sat r1.a, r1.a, 1-t2.a ; quintic
|
||||
|
||||
; t1.a is now the fresnel factor
|
||||
lrp r0.rgb, r1.a, r0, c0 ; blend between reflected color and fog color based on fresnel
|
||||
|
||||
|
||||
Reference in New Issue
Block a user