瀏覽代碼

make sure that we create per class _SHADER

Nicolas Cannasse 11 年之前
父節點
當前提交
fb0f41cca3
共有 2 個文件被更改,包括 11 次插入2 次删除
  1. 9 0
      hxsl/Macros.hx
  2. 2 2
      hxsl/Shader.hx

+ 9 - 0
hxsl/Macros.hx

@@ -226,6 +226,15 @@ class Macros {
 				access : [AOverride],
 			});
 		}
+
+		fields.push( {
+			name : "_SHADER",
+			kind : FVar(macro : hxsl.SharedShader),
+			pos : pos,
+			access : [AStatic],
+			meta : [{ name : ":keep", pos : pos }],
+		});
+
 		return fields;
 	}
 

+ 2 - 2
hxsl/Shader.hx

@@ -12,11 +12,11 @@ class Shader {
 
 	public function new() {
 		var cl : Dynamic = std.Type.getClass(this);
-		shader = cl.SHADER;
+		shader = cl._SHADER;
 		constModified = true;
 		if( shader == null ) {
 			shader = new SharedShader(cl.SRC);
-			cl.SHADER = shader;
+			cl._SHADER = shader;
 		}
 	}