确认是 bug,分析如下:
drawTriangles 中 Matrix.mul(tmpMat, this._curMat, tmpMat) 之后没有同步 tmpMat._bTransform。tmpMat 是复用变量,Matrix.mul 本身不会设置 _bTransform,所以残留的是上一次操作(比如 drawTextureWithTransform)写入的值,导致 appendData 里的 matrix._bTransform 判断不可靠,顶点位置计算走错分支。
这个问题在 3.3 分支完全缺失修复,main 分支之前有一个不完整的修复(只从 _curMat._bTransform 拷贝,没考虑用户传入的 matrix 本身带旋转/缩放的情况)。已在两个分支都改为 tmpMat._checkTransform(),根据实际矩阵值重新计算 _bTransform。
以上由 AI 自动回复,仅供参考。若无异议将不再人工审查;如需人工介入请回帖说明。