Объявление
public static void DrawRay(Vector3 start, Vector3 dir, Color color = Color.white, float duration = 0.0f, bool depthTest = true);Параметры
start | Точка в мировом пространстве, где должен начинаться луч. |
dir | Направление и длина луча. |
color | Цвет нарисованной линии. |
duration | Как долго линия будет видна (в секундах). |
depthTest | Должна ли линия быть затенена другими объектами, расположенными ближе к камере? |
Описание
Рисует линию от start
до start
+ dir
в мире координаты.
Параметр duration
определяет, как долго линия будет видна после отрисовки кадра. Если продолжительность равна 0 (по умолчанию), то строка отображается в 1 кадре.
Если для параметра depthTest
задано значение true, линия будет закрыта другими объектами сцены, расположенными ближе к камере.
Линия будет нарисована в представлении сцены редактора. Если в игровом представлении включено рисование гизмо, линия также будет нарисована там.
using UnityEngine;
public class Example : MonoBehaviour
{
// Frame update example: Draws a 10 meter long green line from the position for 1 frame.
void Update()
{
Vector3 forward = transform.TransformDirection(Vector3.forward) * 10;
Debug.DrawRay(transform.position, forward, Color.green);
}
}
using UnityEngine;
public class Example : MonoBehaviour
{
// Event callback example: Debug-draw all contact points and normals for 2 seconds.
void OnCollisionEnter(Collision collision)
{
Debug.DrawRay(collision.contacts[0].point, collision.contacts[0].normal, Color.green, 2, false);
}
}