Browse Source

bugfix : material switch was not always handled when shader was the same

ncannasse 11 năm trước cách đây
mục cha
commit
91020125f7
1 tập tin đã thay đổi với 1 bổ sung1 xóa
  1. 1 1
      h3d/pass/Default.hx

+ 1 - 1
h3d/pass/Default.hx

@@ -147,7 +147,6 @@ class Default extends Base {
 			if( prevShader != p.shader ) {
 				prevShader = p.shader;
 				ctx.engine.selectShader(p.shader);
-				ctx.engine.selectMaterial(p.pass);
 				if( buf == null )
 					buf = cachedBuffer = new h3d.shader.Buffers(p.shader);
 				else
@@ -161,6 +160,7 @@ class Default extends Base {
 				ctx.engine.uploadShaderBuffers(buf, Textures);
 			}
 			ctx.drawPass = p;
+			ctx.engine.selectMaterial(p.pass);
 			p.obj.draw(ctx);
 			p = p.next;
 		}