概述
在游戏制作或者应用制作中,鼠标或者触摸屏操作必不可少,像武器装备,从背包中把武器拖向人物属性,这个过程在Unity中没有相应的StarDarg、StopDrag方法。但是继承与MonoBehaviour却有一个OnMouseDrag事件,这样我们也可以模拟拖拽的效果了。
查看效果,需要把此脚本拖放到将要拖拽的物体上面,点击测试即可
using UnityEngine;
using System.Collections;
public class DragScript : MonoBehaviour {
void Start () {
}
Vector3 screenSpace;
Vector3 offset;
void Update () {
}
void OnMouseDown()
{
screenSpace = Camera.main.WorldToScreenPoint(transform.position);
offset = transform.position - Camera.main.ScreenToWorldPoint(new Vector3(Input.mousePosition.x,Input.mousePosition.y,screenSpace.z));
}
void OnMouseDrag()
{
Vector3 curScreenSpace = new Vector3(Input.mousePosition.x,Input.mousePosition.y,screenSpace.z);
Vector3 curPosition = Camera.main.ScreenToWorldPoint(curScreenSpace)+offset;
transform.position = curPosition;
}
}
最后
以上就是年轻长颈鹿为你收集整理的Unity3D 触摸拖拽效果的全部内容,希望文章能够帮你解决Unity3D 触摸拖拽效果所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复