Non-dynamic group members off by 1/1 pixel
Mitalie opened this issue ยท 0 comments
Describe the bug
Auras within normal (non-dynamic) groups are one pixel up and to the right from the expected position.
To Reproduce
Create/import these auras showing a 4x4 pixel colored texture:
-
Centered standalone:
!WA:2!Df5ZUnnqqyCSYHQ6dajGQqIdiXbehiLKwAOhjonrfuAB0gZFUf217y7vYExRzxN2YXCaXvYJqoZP8iWtGvfpb8i0Na21jQh40o76VXF)MVXBuR8w8w8F8SBnWvMse(mslotXbYGX9pBYkJkAoGAHs(eVz)KqZksPnWRUiowdgVLAilEIsinSbdppCiHLlquHP41BvSMkJsvyTMQDirQmf(bVgEnwYYaj350b9p5KviKy9i86ca3cYn0sJTZlkm2pO9xfPKCXMAKgvx0JOnu04ZIfsHo1pWEy8REaR7HDo(TDxyqrsIL(7)cCB53xXbwzCCTrNoC8KrFCCGXEHqlr6bl0fqw275A))QlzWCqAMAvlUA9Sb9NgoBAyFsyqP1fwrg9AajsAoO9j1szNc0mt6DTobbBRKPtgoE8Ys5we8lA6WFoeU5Ulc(19U1MpakPzFAtAFg5sb3KU7sQuKtDtBVQhn63avdtniitmP7u90aPsc3WTO7umZniOgCjLEHtQBmRAhKtfYrvVY2qv7Q9REDvh75J))xEUGx8qvCCxoKRAVDlCqPGV(4GtZppV4YxYdwhJ2j2Ia1qBC7ML7i3toRythqgo88IMCHocbdmdvMA08ywOIfj(28xtnoGH0v2GIuV31(SuqKKA2Lv3b81GmfL3lWUpI2JKxMze(KOmQwVx178d0IVbUIf39)BPlAE4(D2)O2D71o5nh194UXh2A(F(Y)o
-
Centered within a centered group:
!WA:2!fov3UTrruywTcfYiOuBGqjuOHkrksihStiUPq5hVU2kTYUXA9Mw4kZS7C2Dh1X7SmZSHKCzUik3sEe81CLFe6tWrr8e0hH8eWSEnub3Wn7E0z((oNV58DgNNvxNxBNTAU1UnA1UrYxVBR9AfVt9P1z1zxC7RcPrVGPK5DLcP6jUUUJCTqFvOuXaL3YdZVPNGF6PufBJaPuy45(6iQaCdRWLQo5G4ynyCMPGeUml4KCWprjlYNvHym)u4nNxfx1khhh3zgz0rGsBzClNj)U64LvrrJm2C62(AdvziE8mUHegB)PtjNzu8KelT13uTm88zmiSioUSVQ97nyu)dh4zkfbTqr3(mDoiepMPjVsxechbzMXw08JNpPBNXbtgh0XpWRW2KWCb9eq9pWgPalm)XJ6nyG)ImH7duHj1pJof0KllYwkbYYBApwcKxB8VwqvWg9leInEEk3axZZmGkJkEw19D4CAwuQunsApiSBVNg0Z)sniIxKyM3bbbhmCqV(b3LZMjJJBXGPYgjBxWzZ7sLb8xyOp5NBppwz1XyJIAOUxxvY(LPkNeHJ763R3tdJKzX8eYYX)JZSJy3ROfgl2dYxmOjZSxy)fwNM8YkCvEXQZSSz8kuEcjL12ZonJwZFAHDrG4hjOA9A4EepT1JldUKMXNslz0gF3(4AEzYm4LavxQtilXKUYvmRTuIysPjP0qzt0NvIPu44d9Ms5zwU4dXVBf87XFa)rByT)BM6rRFXDU2ahBkuWZv08Hsg43DqNHJW3UCL6mL0SOro42eSHB4uUsjvP4ko4M49W3X5YqbKXk5TDNh9i8TulRg(TvQ)FRGo))AYpQ6PKD)gVHTge8MeSgbRFJnX37C89XpWs4dXBrWpcxh)y824NGFkEhCd8Zi4Dj51kx(pccQwRkf2F8g4(HT2P5E3Vf(5dXDj4xG3ZUxKx)1lgn(BzVf(v(urEk11)34mt6Q51yCDKcmWKxpm(Y5nfmtZdfDFG(q7Jhn1u6iqkUdjmf4jPMvdxah(fSDB8(Lgl(GfF)MfFBsQF0F(t)1
-
Centered within a centered dynamic group:
!WA:2!nov3YTnruy0OPe82sBJlekHFAMqiqNbhItAcLlTCCMKItIzLBcdCr6kTRK2PYAf7Uk)DPNoD6T4hbFnx5hH8eCMm8eKhH8eWUsUDaUIBKwF8zp6778995CyDv(SRVYQRSrJMB2i(jB08PnJwV(G606030WlwkoD8ohG39xpy)(T6EDGqszsps4lPsrE(99s5xCbrsxOVqKQ55xrk0jc5b5AUitHKNFquKIPDMqYcn17j4z6G2D2VFh8KQz1wKkKpZXXXfRYjHSBjjHLxEtSstKAKhpJRrbrMxQe0qTKhhZKQ5xwo94Rhtzbfrr9ppNj3Pt3EB)8UEAZpWKcjzTHQCwA6Uuf6Avra7ewM230n)Sjh3ULF)J973c33RW8rcYtjNZKVRTEsMPnSFVoD7IlReSdJKQtWzKbmfAur2uiGMekslgK5BzG7ngsYKzK0dn40qL9grY4diwwTj8HBdFKxMiJDjJOy(AjllwNmZvudwTDCSf5sfluKrvdT9y5fSK3acpZCxyj4RNbwg(g4BnhV3)TcMKYJZGAsZYZImNXg2GzXLYHxQGq30ZSqcNdpOWiyiCykrPMd(EKNIFbZE4QGPYBL04662Z14pKvKGLmv42nZiSgrlKKYCdQQLmU6DhAmlFw)FVGizlSDrA6chLW1SXYsGyj0L0ZnlrEOXGvKp9w(gaClpLqQHLgrKHDlxnVAUXrMj0MldtzViqsO8c1RUZ1MfKHJz6Tn(fHma3ARDFU)WcfRlFaxNCz1mR8F1WP2I3ESweEsLO8qNJ)Jf50jIOOMu2ardA8WyjNAb3I4TgzpFeNQtU9nvE3TLgr3(Vb(TXD6S)KiBbJas0e3adAI4XO1kmJ0)0d35jBSE0PTdKNnnam0eKQChJTklVkFmsXsJkdfqnth6shGt9W5FZJUrZotxizhjj57jOmC7UT2Rh0XIBJHxr0wddlbhona56c)KBWaUukKjWmoWha1G3hnkiLLrTtyTwBTf8JYPZfoWjO8lYEbChJTeb3fb3db3)UldZ(AOo8aJZ6JH5qWNape(uyE4ZGph(c4lHhHGfq5ZAJPNW6xfaSZ)pFp43cAU(Qp9hAclUx(SuUkuY0SJFhXamuZSZZFW)yP34T45RQYg)B)9J)F54ZtiU4tTIvnW3b6IG9MiF5gCXJ1BSZ(e47qbjmECIUg8ZiOXMWkwFoSA5ZMLp3fEw9t(RF5Vd
The one in a normal group (red) is not aligned with the other two (blue + green = cyan). Magnified screenshot:
Measuring the full screenshot reveals that red is incorrectly centered and the other two are correctly centered.
Did you try having WeakAuras as the only enabled addon and everything else (especially something like ElvUI) disabled?
Yes
Which version of WeakAuras are you using?
3.0.5-16-g45181f3
Are you on World of Warcraft Classic or Retail?
- Classic
- Retail
The problem should apply to both
Was it working in a previous version? If yes, which was the last good one?
I didn't test. The relevant code doesn't seem to have changed for a long time, except for 6472469 (point 3 below) which simply enforces what was already restricted in the options UI.
Additional Info
This is caused by the following factors:
- Normal groups have an invisible 2x2 frame
WeakAuras2/WeakAuras/RegionTypes/Group.lua
Lines 30 to 31 in 45181f3
- Normal groups are anchored by their bottom left corner
WeakAuras2/WeakAuras/RegionTypes/Group.lua
Lines 80 to 81 in 45181f3
- Members of a group anchored to the parent group are anchored to the invisible frame's center
WeakAuras2/WeakAuras/WeakAuras.lua
Lines 4980 to 4985 in 45181f3
Obviously there is 1/1 pixel offset between the center and the bottom left of a 2x2 frame.
The invisible frame used to be 1x1 until b761c2f, causing only half pixel difference between bottom left and center. Change to 2x2 was done to help with texel snapping related issues caused by the partial pixel offset, but a better fix might be to actually align the anchors, e.g. set the selfPoint
of a group to CENTER to match the anchorPoint
of the children.