您的位置:首页 > 移动开发 > Unity3D

unity之射线

2015-09-06 19:50 239 查看
bool hit = Physics.Raycast(m_muzzlepoint.position, m_camTransform.TransformDirection(Vector3.forward), out info,100,9 );
//发射点,方向,out ,长度,层

RaycastHit info;
//从muzzlepoint的位置,向摄像机正面的正方向射出一根射线
//射线只能与m_layer所指定的层碰撞

TransformDirection:从自身坐标向世界坐标转变


获取鼠标的点击点

Ray ray = Camera.main.ScreenPointToRay (Input.mousePosition);
RaycastHit hit;
if (Physics.Raycast(ray, out hit)) {
if (hit.collider.name == "Plane") {
t.position = hit.point;
}
}注:你鼠标点的点,其实z=0,所以要转换一下,从摄像机通过的一条射线,要不,你就自己转
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  unity 射线