U3D常用方法总结

1,四元数与三维向量的转换

        Quaternion.eulerAngles 将四元数转为Vector3;      Quaternion.Euler(Vector3(0, 30, 0))传入一个Vector3将其转为四元数

 

2. 2D控件跟随3D场景中的物体

     主要是两个摄像机的坐标转换:

                        pos = MainCamera.WorldToScreenPoint(transform.position);   
                         pos.z = 0f;    //z一定要为0.
                         
                         //2. 使用UI摄像机转换到NGUI的世界坐标.
                         Vector3 pos2 = UICamera.currentCamera.ScreenToWorldPoint(pos);
                         
                         //3. 赋值给NGUI控件.
                         //temp为NGUI控件.
                        widge .transform.position = pos2;
3.射线检测
  Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);//射线从这里生成
RaycastHit hit;//这个是碰撞检测的目标
if (Physics.Raycast(ray, out hit, 5))//传入的参数依次是:射线、射线碰撞物、射线检测距离
{
GameObject obj = hit.transform.gameObject;//或者检测hit.collider之类的
if (obj.tag == "takes")
{
Destroy(obj);//我做的是拾取功能,所以检测到的物体如果tag是takes就自销毁
}
}
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值