Объявление
public static void DrawLine(Vector3 start, Vector3 end, Color color = Color.white, float duration = 0.0f, bool depthTest = true);Параметры
start | Точка в мировом пространстве, где должна начинаться линия. |
end | Точка в мировом пространстве, где должна заканчиваться линия. |
color | Цвет линии. |
duration | Как долго линия должна быть видна. |
depthTest | Должна ли линия быть затенена объектами, расположенными ближе к камере? |
Описание
Рисует линию между указанными начальной и конечной точками.
Линия будет нарисована в представлении «Игра» редактора, когда игра запущена и включено рисование гизмо. Линия также будет отображаться в сцене, когда она видна в игровом представлении. Оставьте игру работающей и показывающей линию. Переключитесь в режим просмотра «Сцена», и линия будет видна.
duration
– это время (в секундах), в течение которого строка будет отображаться после первого отображения. Нулевая длительность показывает строку только для одного кадра.
Примечание. Это предназначено только для отладки игрового режима. Гизмо редактора следует рисовать с помощью Gizmos.Drawline или Handles.DrawLine.
using UnityEngine;
public class ExampleScript : MonoBehaviour
{
void Start()
{
// draw a 5-unit white line from the origin for 2.5 seconds
Debug.DrawLine(Vector3.zero, new Vector3(5, 0, 0), Color.white, 2.5f);
}
private float q = 0.0f;
void FixedUpdate()
{
// always draw a 5-unit colored line from the origin
Color color = new Color(q, q, 1.0f);
Debug.DrawLine(Vector3.zero, new Vector3(0, 5, 0), color);
q = q + 0.01f;
if (q > 1.0f)
{
q = 0.0f;
}
}
}
using UnityEngine;
public class Example : MonoBehaviour
{
// Event callback example: Debug-draw all contact points and normals for 2 seconds.
void OnCollisionEnter(Collision collision)
{
foreach (ContactPoint contact in collision.contacts)
{
Debug.DrawLine(contact.point, contact.point + contact.normal, Color.green, 2, false);
}
}
}