Skip to content

Commit 18e178a

Browse files
committed
Fixed matrix transformation order for batchTexture
1 parent f3e0ae8 commit 18e178a

1 file changed

Lines changed: 18 additions & 11 deletions

File tree

src/renderer/webgl/pipelines/TextureTintPipeline.js

Lines changed: 18 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1866,7 +1866,6 @@ var TextureTintPipeline = new Class({
18661866
}
18671867

18681868
flipY = flipY ^ (texture.isRenderTexture ? 1 : 0);
1869-
rotation = -rotation;
18701869

18711870
var roundPixels = this.renderer.config.roundPixels;
18721871
var vertexViewF32 = this.vertexViewF32;
@@ -1878,13 +1877,13 @@ var TextureTintPipeline = new Class({
18781877
var y = -displayOriginY + ((srcHeight) * (flipY ? 1.0 : 0.0));
18791878
var xw = x + width;
18801879
var yh = y + height;
1881-
var translateX = srcX - camera.scrollX * scrollFactorX;
1882-
var translateY = srcY - camera.scrollY * scrollFactorY;
1880+
var translateX = srcX;
1881+
var translateY = srcY;
18831882
var sr = Math.sin(rotation);
18841883
var cr = Math.cos(rotation);
18851884
var sra = cr * scaleX;
1886-
var srb = -sr * scaleX;
1887-
var src = sr * scaleY;
1885+
var srb = sr * scaleX;
1886+
var src = -sr * scaleY;
18881887
var srd = cr * scaleY;
18891888
var sre = translateX;
18901889
var srf = translateY;
@@ -1904,12 +1903,17 @@ var TextureTintPipeline = new Class({
19041903
var pmd = parentMatrix[3];
19051904
var pme = parentMatrix[4];
19061905
var pmf = parentMatrix[5];
1907-
var pca = cma * pma + cmb * pmc;
1908-
var pcb = cma * pmb + cmb * pmd;
1909-
var pcc = cmc * pma + cmd * pmc;
1910-
var pcd = cmc * pmb + cmd * pmd;
1911-
var pce = cme * pma + cmf * pmc + pme;
1912-
var pcf = cme * pmb + cmf * pmd + pmf;
1906+
var cse = -camera.scrollX * scrollFactorX;
1907+
var csf = -camera.scrollY * scrollFactorY;
1908+
var pse = cse * cma + csf * cmc + cme;
1909+
var psf = cse * cmb + csf * cmd + cmf;
1910+
var pca = pma * cma + pmb * cmc;
1911+
var pcb = pma * cmb + pmb * cmd;
1912+
var pcc = pmc * cma + pmd * cmc;
1913+
var pcd = pmc * cmb + pmd * cmd;
1914+
var pce = pme * cma + pmf * cmc + pse;
1915+
var pcf = pme * cmb + pmf * cmd + psf;
1916+
19131917
mva = sra * pca + srb * pcc;
19141918
mvb = sra * pcb + srb * pcd;
19151919
mvc = src * pca + srd * pcc;
@@ -1919,6 +1923,9 @@ var TextureTintPipeline = new Class({
19191923
}
19201924
else
19211925
{
1926+
sre -= camera.scrollX * scrollFactorX;
1927+
srf -= camera.scrollY * scrollFactorY;
1928+
19221929
mva = sra * cma + srb * cmc;
19231930
mvb = sra * cmb + srb * cmd;
19241931
mvc = src * cma + srd * cmc;

0 commit comments

Comments
 (0)