diff options
author | Travis CI <zmoelnig@travis-ci.umlaeute.mur.at> | 2015-03-19 20:12:11 +0000 |
---|---|---|
committer | Travis CI <zmoelnig@travis-ci.umlaeute.mur.at> | 2015-03-19 20:12:11 +0000 |
commit | 17dc0febb17888015be1e4ad1ed4b096a4909865 (patch) | |
tree | 0c32573795cf15c79d5e8f792772bf952dab415b /Gem/examples/data/toon.vp | |
parent | 454d0818e5ad0820771abebefa9758c66068b8d1 (diff) |
Gem 206d71791bc3642e8c5391a4c59c30ba7411fab8 osx/i386
built 'master:206d71791bc3642e8c5391a4c59c30ba7411fab8' for osx/i386
Diffstat (limited to 'Gem/examples/data/toon.vp')
-rw-r--r-- | Gem/examples/data/toon.vp | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/Gem/examples/data/toon.vp b/Gem/examples/data/toon.vp new file mode 100644 index 0000000..621670b --- /dev/null +++ b/Gem/examples/data/toon.vp @@ -0,0 +1,36 @@ +!!ARBvp1.0 + +# Toon Shader by James A. McCombe, Tue Jun 17 2003 +# +# Implements a very crude toon shader. Basically, a simple dot product between a +# light direction vector and the vertex normal is performed. The output of this is +# used to set the texture coordinates to lookup inside a special texture which +# effectively quantises the light intensity into 3 bands. +# +# Parameters: +# program.env[0] - Light direction vector + +ATTRIB vPosition = vertex.position; +ATTRIB vNormal = vertex.normal; + +PARAM lightDirection = program.env[0]; + +TEMP t0, transVertex; + +DP4 result.position.x, state.matrix.mvp.row[0], vPosition; +DP4 result.position.y, state.matrix.mvp.row[1], vPosition; +DP4 result.position.z, state.matrix.mvp.row[2], vPosition; +DP4 result.position.w, state.matrix.mvp.row[3], vPosition; + +DP3 t0.x, state.matrix.modelview[0].invtrans.row[0], vNormal; +DP3 t0.z, state.matrix.modelview[0].invtrans.row[1], vNormal; +DP3 t0.y, state.matrix.modelview[0].invtrans.row[2], vNormal; + +# Dot product of normal and light vector to do tone lookup +DP3 t0, t0, lightDirection; +SWZ result.texcoord[0], t0, x,1,1,1; + +# Write the primary vertex color +MOV result.color, vertex.color; + +END |