版本: Unity 6 (6000.0)
语言英语
  • C#

Physics.Linecast

建议修改

成功!

感谢您帮助我们提高 Unity 文档的质量。尽管我们无法接受所有提交,但我们确实会阅读用户提出的每项修改建议,并在适用的情况下进行更新。

关闭

提交失败

由于某些原因,您的修改建议无法提交。请<a>稍后再试</a>。感谢您抽出时间帮助我们提高 Unity 文档的质量。

关闭

取消

声明

public static bool Linecast(Vector3 start, Vector3 end, int layerMask = DefaultRaycastLayers, QueryTriggerInteraction queryTriggerInteraction = QueryTriggerInteraction.UseGlobal);

参数

start 起始点。
end 结束点。
layerMask 用于在投射射线时选择性地忽略碰撞体的层遮罩
queryTriggerInteraction 指定此查询是否应命中触发器。

描述

如果在startend之间的线上有任何碰撞体相交,则返回true。

using UnityEngine;
using System.Collections;

public class ExampleClass : MonoBehaviour { public Transform target; void Update() { if (Physics.Linecast(transform.position, target.position)) { Debug.Log("blocked"); } } }

声明

public static bool Linecast(Vector3 start, Vector3 end, out RaycastHit hitInfo, int layerMask = DefaultRaycastLayers, QueryTriggerInteraction queryTriggerInteraction = QueryTriggerInteraction.UseGlobal);

参数

start 起始点。
end 结束点。
layerMask 用于在投射射线时选择性地忽略碰撞体的层遮罩
queryTriggerInteraction 指定此查询是否应命中触发器。
hitInfo 如果返回true,则hitInfo将包含有关碰撞体被击中位置的更多信息。(其他资源:RaycastHit)。

描述

如果在startend之间的线上有任何碰撞体相交,则返回true。

如果返回true,则hitInfo将包含有关碰撞体被击中位置的更多信息。(其他资源:RaycastHit)。层遮罩用于在投射射线时选择性地忽略碰撞体。