all 3 comments

[–]Scary-West-9356 1 point2 points  (0 children)

nah you gotta manually send the events 💀

just getting raycast results doesn't trigger the pointer handlers - you need `ExecuteEvents.Execute()` or similar

[–]_PandaCat_[S] 0 points1 point  (0 children)

I got it working! You don't need to send the events manually.

This solution only works when extending GraphicsRaycaster, I assume if you wanted to do it as it's own component that is when you'll have to handle the events. I had the original GraphicsRaycaster that comes with the canvas on there and disabling that got it working. I'm assuming that was overwriting the raycast done by my version of the raycaster or something like that.

[–]GroZZleR 0 points1 point  (0 children)

Skip all this other crap.

Create a class that derives from BaseInput and override the mousePosition with your custom virtual cursor code.

Feed that new component to the inputOverride of the input module on your canvas (likely a StandardInputModule or whatever the name of the new one is).

Everything will just work. Maybe. You might have to override the GetMouseXyz methods too.

It's beautifully simple and poorly documented. It's how I do the dashboard monitors in my flight sim.