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

RaycastHit2D.normal

建议更改

成功!

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

关闭

提交失败

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

关闭

取消

public Vector2 normal;

描述

检测到的 Collider2D 的表面法线。

当物理查询检测到在特定 RaycastHit2D.point 处与 Collider2D 相交时,normal 是该位置处 Collider2D 的表面法线。表面法线是垂直于碰撞体表面边缘的向量,方向指向远离碰撞体。

其他资源: RaycastHit2D.point

using UnityEngine;

public class ExampleClass : MonoBehaviour { public Vector2 direction;

void Update() { // Cast a ray in the direction specified in the inspector. RaycastHit2D hit = Physics2D.Raycast(transform.position, direction);

// If something was hit, draw a line from the hit position in the direction of the surface normal. if (hit) Debug.DrawLine(hit.point, hit.point + hit.normal, Color.yellow); } }

注意:如果命中开始发生在碰撞体内部,则碰撞法线与线/射线查询的方向相反。