[UMG] Checkbox + 1Pixel bug for Checked image state

We want to use the checkbox as a way to handle Tabs; selected on/off etc.

You will notice that the “normal checked state” of the button has a scaling problem; when you hover your mouse the size of your button will be correct, if you press it will also be correct but if you ‘unhover’ it will scale back down one or two pixels.

We tried multiple ways such as setting the checkbox Type to “toggle button” and parenting a spacer or text, both have the same issue. Additionally if you parent text you can’t tweak the slot like buttons because the slot panel is missing.

Today for an unknow reason, opening the same project without any modification doesn’t have the 1 pixel issue anymore.
It’s very strange because the engine usually crahes quite often so I’m pretty sure I restarted the editor a couple of times!

Perhaps this problem occurs if UMG is open or some other panel.

Anyway I will leave this bug report open for now and will close it in a day or two if it doesn’t happen anymore.

Hello bigzer,

It’s been a couple of days since your last post and I was wondering if you still needed assistance with this issue?

Hello Ruddy,

Yes the problem has solved itself but I’m sure its a bug. This said I think I might have found the reason:

  1. Place a panel

  2. Place an image in it and set it as a box and scale it bigger than the original size (the image should 9 scale properly so use a sliceable image to notice the problem) Perhaps try this one that can scale horizontally:
    https://www.dropbox.com/s/ta0m6p0k16yox30/Timer2.png?dl=1

  3. Now change the size of that image in photoshop (make it larger for example)

  4. In UE4 reimport the new image (open the old one and click reimport), it should replace the old one.

  5. Notice a wrong 9 scaling occurs if you scale it horizontally; the angle of the sides are not like they should, apparently UE4 still considers the old image size valid.

I don’t know if this happens all the time or in some situations, but I have noticed that to make it work properly I had to reimport the same file under another name. Apparently when importing the image some scale data is stored (In the asset itself or in the UMG blueprint) and if you reimport that image and the size changed the data isn’t updated properly.
Trying to switch from box to image and back to box does not solve the problem.

Let me know if you can’t reproduce this I will try to understand how this happens.

Hello bigzer,

After following the steps provided, I was unable to reproduce the issue. Would it be possible to get a screen shot of this issue?

Hi, here’s a screenshot of the issue, it was easy to reproduce. http://puu.sh/eLDy3/efd2577f8c.jpg

As you can see on the top left 9 slicing has an issue (we used the bottom left picture), while on the right its fine (we used the bottom right picture).
The long middle picture was the original picture that got ‘updated’ with the one from the left.
As soon as we updated it with that new shorter version, the 9 slicing won’t work properly anymore unless you import that same picture using another name.

Hello bigzer,

Thank you for the picture, that helped me confirm that I am not experiencing the issue that you are describing I imported two versions of the image and scaled one of them up. However, the two images remained identical after re-importing the scaled image (The scaled the same way as well)

I have a few more questions i would like to ask

  1. What version of the engine are you using?
  2. Can you reproduce this in a clean project?
  3. If not, could you send me a simplified version of your project (that still has the issue) that I could test?

Hey Rudy, just to let you know I’m not forgetting you, I will make a repro project for you tonight or tomorrow.

Hello bigzer,

We have not heard back from you in a few days, so we are marking this post as Resolved for tracking purposes. If you are still experiencing the issue you reported, please respond to this message with additional information and we will offer further assistance.

Thank you.