在unity3d中用户通过触摸屏选中虚拟3D世界中的物体进行操控,就需要掌握3d 拾取技术。
3d拾取技术非常的简单:由摄像机与屏幕上的触控点之间确定一条射线,由此射线射向3d世界,
最先和此射线相交的物体就是被选中的物体,在对此物体的操控编写相应的代码即可。
最需要下面的几句代码:
For(var touch : Touch in Input.touches)//对当前的触控事件循环监听
{
var ray = Camera.main.ScreenPointToRay(touch.position);//声明一条由屏幕触控点发出垂直于屏幕的射线
var hit : RaycastHit;
if(Physics.Raycast(ray,hit))//判断此物理事件
{
if(hit.transform.root.transform == this.transform){
}
}
}
时间: 2024-10-29 10:46:19