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

Bounds.IntersectRay 相交射线

2015-11-18 01:31 726 查看
转载自:http://game.ceeger.com/Script/Bounds/Bounds.IntersectRay.htmlfunction IntersectRay (ray : Ray) : bool Description描述Does ray intersect this bounding box?射线与这个边界框相交么?C#JavaScript
// Creates a ray that points from the origin to the infinity among the z Axis.
// And prints if the transform touched the ray.
//沿着z轴,从原点到无限远,创建一条射线
//并且如果变换碰到射线,打印消息
var ra : Ray = new Ray (Vector3.zero, Vector3.forward);

function Update () {
// Color ra in the scene editor.
//在场景编辑器,给射线一个颜色
Debug.DrawRay (Vector3.zero, Vector3.forward * 999, Color.green);
var bounds : Bounds = transform.collider.bounds;
if (bounds.IntersectRay (ra))
Debug.Log("Touched the ray");
}
• function IntersectRay (ray : Ray, outdistance : float) : bool Description描述Does ray intersect this bounding box?射线与这个边界框相交么?When IntersectRay returns true distance will be the distance to the ray's origin. 当IntersectRay返回真,距离将是到射线原点的距离。C#JavaScript
// Creates a ray that points from the origin to 10 units among the z Axis.
// And prints if the transform touched the ray.
//沿着z轴,从原点到10个单位之间,创建一条射线
//并且如果变换碰到射线,打印消息
var ra : Ray = new Ray (Vector3.zero, Vector3.forward);
var t : float = 10.0;

function Update () {
// Color ra in the scene editor.
//在场景编辑器,给射线一个颜色
Debug.DrawRay (Vector3.zero, Vector3.forward * 10, Color.green);
var bounds : Bounds = transform.collider.bounds;
if (bounds.IntersectRay (ra, t))
Debug.Log("Touched the ray");
}

                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  unity3d