Преглед изворни кода

Simpler highlight shader, used by hide as screen outline

trethaller пре 7 година
родитељ
комит
edc76d2a8b
1 измењених фајлова са 4 додато и 16 уклоњено
  1. 4 16
      hxd/prefab/Prefab.hx

+ 4 - 16
hxd/prefab/Prefab.hx

@@ -47,29 +47,17 @@ class Prefab {
 		if( !b ) {
 			for( m in materials ) {
 				m.mainPass.stencil = null;
-				m.removePass(m.getPass("outline"));
+				m.removePass(m.getPass("highlight"));
 			}
 			return;
 		}
 
-		var outlineShader = new h3d.shader.Outline();
-		outlineShader.size = 0.12;
-		outlineShader.distance = 0;
-		outlineShader.color.setColor(0xffffff);
-
-		var s1 = new h3d.mat.Stencil();
-		s1.setFunc(Always, 1);
-		s1.setOp(Keep, Keep, Replace);
-
-		var s2 = new h3d.mat.Stencil();
-		s2.setFunc(Greater, 1, 0xFF, 0);
+		var shader = new h3d.shader.FixedColor(0xffffff);
 		for( m in materials ) {
-			m.mainPass.stencil = s1;
-			var p = m.allocPass("outline");
+			var p = m.allocPass("highlight");
 			p.culling = None;
 			p.depthWrite = false;
-			p.addShader(outlineShader);
-			p.stencil = s2;
+			p.addShader(shader);
 		}
 	}
 	#end