@onready var camera=$Camera2D
var pivot_camera=Vector2.ZERO
func _physics_process(delta):
if Input.is_action_just_pressed("grab_camera"):
pivot_camera=get_global_mouse_position()
if Input.is_action_pressed("grab_camera"):
var gap=pivot_camera-get_global_mouse_position()
camera.offset+=gap
the grab_camera in InputMap:
if you want it to go back to original position, just set it from input action just released and set the camera offset again to Vector2.ZERO value