【发布时间】:2017-02-12 16:57:19
【问题描述】:
我正在尝试单击游戏对象并以与鼠标相同的速度移动它。我可以让物体移动,但我必须做一些疯狂的修改才能让它不会从屏幕上消失。
注意:我的最终目标是为移动设备执行此操作,但我从鼠标开始。
public class ItemController : MonoBehaviour {
private Vector3 startPos;
private bool ObjectMouseDown = false;
void Update()
{
Debug.Log(Input.mousePosition + new Vector3(0,0,15));
}
void OnMouseDown()
{
startPos = transform.position;
ObjectMouseDown = true;
}
void OnMouseDrag()
{
if (ObjectMouseDown == true)
{
transform.position = Vector3.MoveTowards(transform.position, Input.mousePosition + new Vector3(0, 0, 5), Time.deltaTime * 2f);
// transform.position = Vector3.MoveTowards(transform.position, endPosition, speed * Time.deltaTime);
}
}
void OnMouseUp()
{
ObjectMouseDown = false;
}
}
注意我必须添加一个 15 的 z 值,这样对象就不会浮出屏幕。
任何帮助都会很棒。
【问题讨论】:
标签: unity3d