Hey man! So glad I’m not the only one experiencing this problem!
I don’t have a knock out solution, and I’m not at my desk to take the usual screenshots; however I’ll describe what we did to get full responsiveness.
After struggling with the same issue on all of unreal’s built in hover detection (either by using the canvas ui events or by using the actor hover events), we moved to directly observing mouse position on tick.
We have a menu manager blueprint that watches the mouse position, then based on the position, signals events to the children in the menu altering their hover state.
It is a heavier solution for sure, but it does get us a flawless responsiveness from the most wild of mouse movements.
Since we know that only one entity may be hovered at a time, we aggressively “unhover” all children each frame, unless it is presently hovered.
That logic works, but requires management of screen-space correlated to individual entity.
I am presently dealing with an issue where we altered the sizes of the items on our menu… You can imagine how that may have thrown off all those precise manager calculations
So this solution is heavy cause it kind of locks in positions, making it challenging to iterate on the menus.
My commitment to responsive menus runs deep… and i hope there is another way maybe…
Until then, i dive deeper into this and am presently looking into how to draw debug shapes in screenspace. While that doesn’t seem to be possible in the same way we’d use debugDraw plane/box/sphere; I’m hoping i can use a hud/canvas blueprint to directly call some kind of debug draw functionality
Anywho, gonna be messing with ways to draw either text, textures, lines to make iterating on this easier and more manageable.
Let me know if you (or anyone) finds some setting or a simpler way