Getting Mouse Position During Drag and Drop UMG

Because it's undocumented, arcane knowledge obtainable only by those knowing a secret handshake.


The below assumes you have overridden and using a Game Mode, a Player Controller and created a custom Drag & Drop Operation.


  • in the Player Controller

A Custom Event converts screen space to world space via deprojection and sets actor’s position:


  • in the Custom Drag & Drop Operation blueprint

Event Dragged spits out screen space coordinates and feeds them to an Event Dispatcher, we also provide an actor reference (more on that below). We’re using an actor, not an object - the assumption is that you actually want an actor. This Actor Payload variable is flagged as Instance Editable and Exposed on Spawn.

You could use the standard Drag OP Payload Object but you’ll need to cast to actor later on. An actor is more convenient in this instance.


  • in the Widget being dragged:
    – when drag is detected, we spawn an actor
    – create the abovementioned custom Drag Op and feed the actor’s reference into Actor Payload (explained above)
    – up to you how to handle the Default Drag Visual part
    – we then bind the Drag OP’s Dispatcher call with the Player Controller’s Event (first pic)
    – return drag result

Should work in any resolution / DPI / aspect ratio. fingers crossed


There are other methods of handling similar behaviours. The approach would depend on what the end goal is and how it’s supposed to work. If in doubt, do provide the details.

5 Likes