瀏覽代碼

added technicolor shader

Charlie 11 年之前
父節點
當前提交
137863491e
共有 1 個文件被更改,包括 47 次插入0 次删除
  1. 47 0
      examples/js/shaders/TechnicolorShader.js

+ 47 - 0
examples/js/shaders/TechnicolorShader.js

@@ -0,0 +1,47 @@
+/**
+ * @author flimshaw / http://charliehoey.com
+ *
+ * Technicolor Shader
+ * Simulates the look of the two-strip technicolor process popular in early 20th century films.
+ * More info here: http://www.widescreenmuseum.com/oldcolor/technicolor1.htm
+ * 
+ */
+
+THREE.TechnicolorShader = {
+
+	uniforms: {
+
+		"tDiffuse": { type: "t", value: null },
+
+	},
+
+	vertexShader: [
+
+		"varying vec2 vUv;",
+
+		"void main() {",
+
+			"vUv = uv;",
+			"gl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );",
+
+		"}"
+
+	].join("\n"),
+
+	fragmentShader: [
+
+		"uniform sampler2D tDiffuse;",
+		"varying vec2 vUv;",
+
+		"void main() {",
+
+			"vec4 tex = texture2D( tDiffuse, vec2( vUv.x, vUv.y ) );",
+			"vec4 newTex = vec4(tex.r, (tex.g + tex.b) * .5, (tex.g + tex.b) * .5, 1.0);",
+
+			"gl_FragColor = newTex;",
+
+		"}"
+
+	].join("\n")
+
+};