Ver Fonte

[shgraph] Removed dependency to hide.tools.Extensions.ArrayExtensions

Clement Espeute há 1 ano atrás
pai
commit
0d01f0d14b
1 ficheiros alterados com 14 adições e 9 exclusões
  1. 14 9
      hrt/shgraph/ShaderGraph.hx

+ 14 - 9
hrt/shgraph/ShaderGraph.hx

@@ -2,7 +2,6 @@ package hrt.shgraph;
 
 import hxsl.SharedShader;
 using hxsl.Ast;
-using hide.tools.Extensions.ArrayExtensions;
 using haxe.EnumTools.EnumValueTools;
 using Lambda;
 import hrt.shgraph.AstTools.*;
@@ -238,16 +237,16 @@ class ShaderGraph extends hrt.prefab.Prefab {
 					switch(split[0]) {
 						case "input": {
 							v.name = split[1] ?? throw "Invalid variable name";
-							inputInputVars.pushUnique(v);
+							inputInputVars.push(v);
 						}
 						case "global": {
 							v.name = split[1] ?? throw "Invalid variable name";
-							globalInputVars.pushUnique(v);
+							globalInputVars.push(v);
 						}
 						default: {
 							if (split.length > 1)
 								throw "Var has a dot in its name without being input or global var";
-							shaderData.vars.pushUnique(v);
+							shaderData.vars.push(v);
 						}
 					}
 				}
@@ -298,7 +297,7 @@ class ShaderGraph extends hrt.prefab.Prefab {
 						iv.parent = v;
 					}
 
-					shaderData.vars.pushUnique(v);
+					shaderData.vars.push(v);
 				}
 			}
 
@@ -321,7 +320,7 @@ class ShaderGraph extends hrt.prefab.Prefab {
 			// }
 
 			for (v in gen.outVars)
-				shaderData.vars.pushUnique(v.v);
+				shaderData.vars.push(v.v);
 
 			var fnKind : FunctionKind = switch(graph.domain) {
 				case Fragment: Fragment;
@@ -402,7 +401,7 @@ class ShaderGraph extends hrt.prefab.Prefab {
 			}
 
 			for (init in gen.inits) {
-				inits.pushUnique(init);
+				inits.push(init);
 			}
 		}
 
@@ -877,7 +876,7 @@ class Graph {
 			}
 			if (isInput) {
 				if (graphInputVars.find((o) -> o.v == v) == null) {
-					graphInputVars.pushUnique({v: v, internal: internal, defVal: null, isDynamic: false});
+					graphInputVars.push({v: v, internal: internal, defVal: null, isDynamic: false});
 				}
 			}
 			else {
@@ -1012,7 +1011,13 @@ class Graph {
 				for (input in inputs) {
 					var def = getDef(input.node);
 
-					var inputVarId = def.inVars.findIndex((v) -> v.v.name == input.inputName);
+					var inputVarId = -1;
+					for (i => v in def.inVars) {
+						if (v.v.name == input.inputName) {
+							inputVarId = i;
+							break;
+						}
+					}
 					if (inputVarId < 0)
 						throw "Missing var " + input.inputName;