• 重载方法1:

1.需要传入Ray射线。

 2.创建一个Ray射线并传参,注意射线可能与自己发生碰撞,从而Debug结果一直True,需要设置射线起点为自身之外。

  • 重载方法中其他参数含义:

origin是存放起点的Vector3

maxDistance代表射线最大检测距离

out RaycastHit HitInfo是存储碰撞信息用的

layerMask是标记层级用的,射线只检测标记过的层级,Layer在这儿设置:

  • 测试重载方法示例:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;public class player : MonoBehaviour
{// Start is called before the first frame updatevoid Start(){}// Update is called once per framevoid Update(){//Physics.Raycast重载1//Ray ray = new Ray(transform.position+new Vector3 (transform.position.x,0,0), transform.forward);//可能跟自身发生碰撞,所以要大约+一个position的x距离//Physics.Raycast(ray);//bool isCollider = Physics.Raycast(ray);//Debug.Log(isCollider);//Physics.Raycast重载2Ray ray = new Ray(transform.position+new Vector3 (transform.position.x,0,0), transform.forward);Physics.Raycast(ray,out RaycastHit hit);//out RaycastHit HitInfo是存储碰撞信息用的Debug.Log(hit.collider);//被碰撞的信息:hit.transform。hit.collider.gameObject不能Debug,因为hit.collider可能是空指针Debug.Log(hit.point);//碰撞到的点//Physics.Raycast重载3//Ray ray = new Ray(transform.position+new Vector3 (transform.position.x,0,0), transform.forward);//bool isCollider = Physics.Raycast(ray,Mathf.Infinity,LayerMask.GetMask("Enemy1"));//Debug.Log(isCollider);//只对Enemy1有射线检测反应}
}

Unity中射线检测实现瞄准等功能——Physics.Raycast相关推荐

  1. 直播笔记 | Unity中射线检测详解

    本文首发于洪流学堂微信公众号. 洪流学堂,学Unity快人几步 你好,我是郑洪智,你的技术探路者. 这周三我们直播剖析了Unity中射线检测的功能,以下是直播内容精华部分笔记. 完整录播:https: ...

  2. unity中射线碰撞检测总结

    这阵子通过看视频,看书对unity中射线碰撞检测,有了一些了解,这里我把它总结一下写下来,希望能帮助到你们,也希望通过各位大神来指正不足之处: 射线碰撞检测,就是由某一物体发射出一道射线,射线碰撞到物 ...

  3. 在unity中内置一个查询物流信息功能

    项目需求,在unity中内置查询物流信息的功能 需要用到查询物流 的API 在这选择的是快递100的API 首先需要申请快递100的API,官方会给你一个KEY,使用该KEY,就可以进行物流查询了 u ...

  4. unity通关射线检测实现3d模型自适应地形起伏

    unity通关射线检测实现3d模型自适应地形起伏 该方法是一种取巧的方式,不通关人物碰撞器什么的,很简单的一种思路 通过在模型的位置每次移动时向下发射一条射线检测,检测到地面碰撞器时,获取碰撞点的坐标 ...

  5. Unity 2019 射线检测失效

    之前在做毕设的一个FPS游戏时,遇到了使用射线检测失效的情况,特此记录以下. 前因 在FPS游戏中,对于子弹的发射主要通过两种方式来实现. 一种可以通过实例化子弹的GameObject对其施加物理效果 ...

  6. Unity - Ray射线检测

    一:射线 Ray射线 定义:射线是一条从原点出发,沿某一方向运动的无限直线. //创建一条初始位置为startPos,方向为dir的一条射线 Ray ray = new Ray (startPos, ...

  7. 【Unity】射线检测

    射线检测,发射一条射线检测射线是否碰撞到物体,同时可以获取物体的相关属性 射线可以是有长度的,也可以是不限长度的 射线检测的条件,物体必须有碰撞器 实现射线检测的简单代码,将脚本挂在物体上,当物体前方 ...

  8. Unity 常用射线检测方法

    1.普通射线检测(一般用于检测某一个物体) Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);Debug.DrawRay(ray. ...

  9. Unity中关于作用力方式ForceMode的功能注解

    牛顿运动定律包含以下三个定律: 牛顿第一运动定律: 孤立质点保持静止或做匀速直线运动: 用公式表达为:   ,式中   为合力,   为速度,   为时间. 牛顿第二运动定律: 动量为   的质点,在 ...

最新文章

  1. 如何使用BigDecimal?
  2. Mac OS X Terminal 101:终端使用初级教程
  3. 华为-yolo系列详解
  4. Git 学习笔记--3.EGit使用手册
  5. 利用Hadoop Streaming处理二进制格式文件
  6. python:文件路径多级获取
  7. ScrollView内嵌ListView或GridView的滑动处理
  8. 贾扬清撰文详解Caffe2:从强大的新能力到入门上手教程
  9. 关于Ehcache缓存中timeToLiveSeconds和timeToIdleSeconds
  10. Python 抛异常处理(精)
  11. MyBatis-Plus: 谨慎入坑
  12. JavaScript 使用面向对象的技术创建高级 Web 应用程序
  13. 如何实现大数据可视化系统
  14. 哇哦!《Java核心技术》都更到12版了,牛逼!
  15. 直播预告丨技术干货:易鲸捷HTAP融合型分布式数据库连接服务层介绍
  16. 激励机制:区块链的幕后英雄
  17. unity商店的Standard Assets自带人物移动插件的bug修改
  18. 设计模式(二)-软件开发过程中需要遵循的设计原则
  19. 循环神经网络RNN——利用LSTM对脑电波信号进行分类,Keras实现
  20. 爬取今日头条街拍美女图片

热门文章

  1. 对于租客来说,租房APP有哪些用处呢
  2. 基于ssh果蔬、水果、蔬菜销售系统
  3. 练习案例2:幸运大抽奖
  4. PyQt5设置软件窗口图标与任务栏图标
  5. strcat函数与strncat函数——追加字符串
  6. 机器学习(九) K-Means(K-均值)聚类算法介绍
  7. php制作图片计数器,用PHP制作动态计数器
  8. Visual c++ 2010 express 学习版离线安装方法
  9. c#中使用redis
  10. ftp的端口号20、21有何区别