2

私は現在、プレイヤーが 3D オブジェクトを積み重ねることができるゲームに取り組んでいるので、オブジェクトをドラッグして配置できるようにしたいと考えています。

オブジェクトをドラッグ/マウスカーソルに追従させる方法を何度もグーグル検索しましたが、残念ながらそれを行う方法が見つかりませんでした。やり方を知っている人がいたら教えてください。

ここに私のコードを添付しました。マウスの位置を検出するのですが、画面をクリックすると、オブジェクトがカーソルにまったく追従せずに右上に移動します。

extends KinematicBody

var velocity = Vector3()

const SPEED = 300 

func _physics_process(delta):
    if(Input.is_action_pressed("mouse_down")):

        var mouse  = get_viewport().get_mouse_position()

        print(mouse)

        var velocity = Vector3(mouse.x-get_translation().x,mouse.y-get_translation().y,0)

        velocity = velocity.normalized()*SPEED*delta

        velocity = move_and_slide(velocity, Vector3(0,1,0))
4

1 に答える 1