Unity日常——关于射线

本文介绍了Unity中的射线(Ray)概念,包括射线的原点(origin)和方向(direction),并提供了从摄像机和物体前方发射射线的实例,同时讲解了RaycastHit在光线投射碰撞中的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

unity关于射线

ray 表示射线。
射线是一条从原点(origin)向指定方向(direction)无限延长的直线
先来看一下从摄像机发出一条射线的例子

    void Update() {

        //按下滑鼠左键
        if (Input.GetMouseButton(0))
        {
            Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);//从摄像机上鼠标的位置发出一条射线
            RaycastHit hitInfo;
            if (Physics.Raycast(ray, out hitInfo))
            {
                GameObject gameObj = hitInfo.collider.gameObject;
                if (gameObj != null)
                {
                    Debug.DrawLine(ray.origin, hitInfo.point, Color.red);//划出射线,在scene视图中能看到由摄像机发射出的射线
                }
            }
        }
}

效果图

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值