diff options
| author | Joe Ludwig <[email protected]> | 2013-12-23 14:58:45 -0800 |
|---|---|---|
| committer | Joe Ludwig <[email protected]> | 2013-12-23 15:00:03 -0800 |
| commit | 7309a5f13f63fdcc7b1e090f6c176113a9d95061 (patch) | |
| tree | ad65c7fbe46a3c70bdc0a1426e88247ce1b0d7f5 /mp/src/materialsystem/stdshaders/WaterCheapOpaque_ps11.psh | |
| parent | Merge pull request #182 from ardneran/master (diff) | |
| download | source-sdk-2013-7309a5f13f63fdcc7b1e090f6c176113a9d95061.tar.xz source-sdk-2013-7309a5f13f63fdcc7b1e090f6c176113a9d95061.zip | |
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.
Diffstat (limited to 'mp/src/materialsystem/stdshaders/WaterCheapOpaque_ps11.psh')
| -rw-r--r-- | mp/src/materialsystem/stdshaders/WaterCheapOpaque_ps11.psh | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/mp/src/materialsystem/stdshaders/WaterCheapOpaque_ps11.psh b/mp/src/materialsystem/stdshaders/WaterCheapOpaque_ps11.psh new file mode 100644 index 00000000..50d7f803 --- /dev/null +++ b/mp/src/materialsystem/stdshaders/WaterCheapOpaque_ps11.psh @@ -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
+
+
|