关闭

Unity3d·射线·射线检测碰撞

标签: unity3d射线Ray反弹检测
310人阅读 评论(0) 收藏 举报
分类:

做2个Cube,成同意竖直线上
这里写图片描述

上面的Cube设置刚体RigidBody(会受重力影响掉落)
这里写图片描述

新建一个C#脚本把它赋给Cube(在上的那个),脚本内的Update方法如下:

    void Update(){
        float distance = 3f;
        Ray ray = new Ray (this.transform.position, Vector3.down);//新建射线
        Debug.DrawRay(ray.origin, ray.direction*distance, Color.green);//画出射线,在Scene窗口里可见,Game窗口里不可见
        RaycastHit hit;
        if (Physics.Raycast (ray, out hit, distance)) {//返回true则表示射线碰撞到物体
            Debug.Log(""+hit.collider.name+","+hit.collider.tag);
            this.GetComponent<Rigidbody> ().AddForce (Vector3.up * 100f);
        }
    }

运行效果如下:
这里写图片描述

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:14407次
    • 积分:467
    • 等级:
    • 排名:千里之外
    • 原创:25篇
    • 转载:2篇
    • 译文:0篇
    • 评论:1条
    文章分类
    最新评论