具体如何部署控件,建立关联,参照第一篇【Vuforia】基于Vuforia增强现实开发(一)之识别图像播放声音
1、Plane是上一篇文章里建立的,挡住旋转下去的部位。就当地面了。
2、新建一个在Canvas下新建一个Image用来拖拽。设置透明度为半透明,以及拉伸方式。Image要放在控件树的顶层,也就是所有空间的最底下,从而不会遮挡住其他控件。
要按照世界坐标去旋转,所以旋转的参照系用的模型在旋转时,是沿Y轴旋转,所以在脚本中,Y轴和X轴的位置是相反的,并且模型是依照世界坐标轴旋转,所以需要让他调用世界坐标轴(Space.World)
脚本里实现IDragHandler接口,必须要引用命名空间 UnityEngine.EventSystem;
重写里边的方法即可。
using UnityEngine;
using System.Collections;
using UnityEngine.EventSystems;
public class RoteButton : MonoBehaviour,IDragHandler {
public Transform target;
float speed = .3f;
public void OnDrag (PointerEventData eventData){
Vector3 Vec3rote = new Vector3 (eventData.delta.y,-eventData.delta.x);
target.Rotate (Vec3rote * speed, Space.World);
}
}
最后将脚本赋给模型就好了。