【Unity 3D】学习笔记四十:射线

本文介绍了Unity 3D中的射线概念,将其比喻为游戏中的子弹,并详细讲解了射线的创建原理,包括起点和终点的设置。通过Debug.DrawLine方法在Scene视图中展示射线。此外,还探讨了射线在碰撞检测中的应用,如使用Camera.main.ScreenPointToRay方法创建从摄像机到鼠标位置的射线,结合Physics.Raycast进行碰撞检查,实现交互式的场景交互。
摘要由CSDN通过智能技术生成

射线

射线,类比的理解就是游戏中的子弹。是在3D世界里中一个点向一个方向发射的一条无终点的线。在发射的过程中,一旦与其他对象发生碰撞,就停止发射。


射线的原理

创建一个射线时,首先需要知道射线的起点和终点在3D世界里的坐标。

using UnityEngine;
using System.Collections;


public class Script_06_08 : MonoBehaviour {

	void Update()
	{
		//创建射线,从零点发射到对象
		Ray ray = new Ray(Vector3.zero, transform.position);
		//计算射线的起点和终点
		RaycastHit hit;
		Physics.Raycast(ray, out hit, 100);
		//使用调试方法绘制这条线(调试方法记载scene视图中存在)
		Debug.DrawLine(ray.origin, hit.point);
	}
	
}
运行后:


上述代码中,Debug.DrawLine(  )方法只

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值