将游戏对象移动到 unity 2d 中的单击位置
Move gameobject to click position in unity 2d
是否可以在 unity 2D 中将游戏对象移动到单击位置,而游戏对象是具有重力的 2d 刚体并且移动看起来像是从游戏对象的位置跳到单击位置。任何帮助参考都会很有帮助:)
有点像这样?
Transform projectile;
float speed = 5f;
void Update()
{
if(Input.GetMouseButtonDown(0))
{
Vector3 target = Camera.main.ScreenToWorldPoint(Input.mousePosition);
target.z = projectile.position.z;
Vector3 offset = target - projectile.position;
Vector3 direction = offset.normalized;
float power = offset.magnitude;
projectile.GetComponent<RigidBody2D>().AddForce(direction * power * speed);
}
}
是否可以在 unity 2D 中将游戏对象移动到单击位置,而游戏对象是具有重力的 2d 刚体并且移动看起来像是从游戏对象的位置跳到单击位置。任何帮助参考都会很有帮助:)
有点像这样?
Transform projectile;
float speed = 5f;
void Update()
{
if(Input.GetMouseButtonDown(0))
{
Vector3 target = Camera.main.ScreenToWorldPoint(Input.mousePosition);
target.z = projectile.position.z;
Vector3 offset = target - projectile.position;
Vector3 direction = offset.normalized;
float power = offset.magnitude;
projectile.GetComponent<RigidBody2D>().AddForce(direction * power * speed);
}
}