Ver código fonte

make dx scissor bit slightly less hackish

ncannasse 7 anos atrás
pai
commit
640d8976a7
2 arquivos alterados com 4 adições e 1 exclusões
  1. 1 1
      h3d/impl/DirectXDriver.hx
  2. 3 0
      h3d/mat/Pass.hx

+ 1 - 1
h3d/impl/DirectXDriver.hx

@@ -550,7 +550,7 @@ class DirectXDriver extends h3d.impl.Driver {
 		updateResCount++;
 		updateResCount++;
 	}
 	}
 
 
-	static inline var SCISSOR_BIT = 1 << (Pass.blendAlphaOp_offset + 4);
+	static inline var SCISSOR_BIT = Pass.reserved_mask;
 
 
 	override public function selectMaterial(pass:h3d.mat.Pass) {
 	override public function selectMaterial(pass:h3d.mat.Pass) {
 		var bits = @:privateAccess pass.bits;
 		var bits = @:privateAccess pass.bits;

+ 3 - 0
h3d/mat/Pass.hx

@@ -39,6 +39,9 @@ class Pass implements hxd.impl.Serializable {
 
 
 	@:s public var stencil : Stencil;
 	@:s public var stencil : Stencil;
 
 
+	// one bit for internal engine usage
+	@:bits(bits) @:noCompletion var reserved : Bool;
+
 	public function new(name, ?shaders, ?parent) {
 	public function new(name, ?shaders, ?parent) {
 		this.parentPass = parent;
 		this.parentPass = parent;
 		this.shaders = shaders;
 		this.shaders = shaders;