c# - Unity raycast 未检测到之前已检测到的对象
问题描述
using UnityEngine;
public class Shoot: MonoBehaviour
{
public Camera cam;
void Update()
{
if (Input.GetButtonDown("Fire1"))
{
shooot();
}
}
void shooot()
{
RaycastHit hit;
if (Physics.Raycast(cam.transform.position, cam.transform.forward, out hit))
{
Debug.Log(hit.transform.name);
}
}
其他对象有一个盒子碰撞器和刚体。Raycast 检测到“Cube1”,并且在我向其他东西拍摄 raycast 然后再次在“Cube1”拍摄 raycast 之后,此代码没有检测到它。为什么?
解决方案
在 Unity 编辑器的控制台中按折叠以切换打印和日志应堆叠(折叠)的位置,它仍应记录两次,但右侧的计数器不会显示为两个单独的日志,而是增加显示相同的次数已记录相同的行。
推荐阅读
- node.js - 不推荐使用获取 body-Parser 警告在 Vs 代码中并且无法获取 Body 尝试使用内置的 express
- c++ - C++ clang ld:未知选项:--copy-dt-needed-entries 错误
- typo3 - TYPO3 TCA 和选择表格
- python - 我无法捕捉到 sys.exit()
- sdk - OTT 解决方案如何将他们的应用程序插入 ISP 机顶盒
- python - Python:通过 Selenium remotedriver 手动配置 Chrome://settings
- python - 对多个字符串变量应用相同的格式
- apache-kafka - kafka 连接到 Google BigQuery 引发错误 Kafka Connect 架构必须是“结构”类型
- excel - VBA Excel在出现空白行后选择内容
- .net - DbFunctions or similar to compare time of day of a datetime type column in Linq to Entity Framework