Version: 5.4
public static void DrawBezier (Vector3 startPosition, Vector3 endPosition, Vector3 startTangent, Vector3 endTangent, Color color, Texture2D texture, float width);

Parameters

startPosition @param rotation Вращение маркера.
endPosition @param center Центр круга.
startTangent @param center Центр круга.
endTangent @param center Центр круга.
color Мягкий цвет, использующийся для общих вещей.
texture Функция, использующаяся для отображения маркера, Handles.RectangleCap.
width @param center Центр круга.

Description

Draw textured bezier line through start and end points with the given tangents.

Рисует текстурированную кривую Безье через начальную и конечную точку по текущим касательным. Чтобы получить эффект сглаживания, используйте текстуру с 1x2 пикселями, одним прозрачным белые пикселем и одним непрозрачным белым пикселем. Кривая Безье будет отображена с помощью этой текстуры.

Важно: Используйте HandleUtility.GetHandleSize если вам нужны маркеры постоянного размера.


Bezier Line in the Scene View.

To use this example, save this script to the Assets/Editor folder:

using UnityEngine;
using UnityEditor;

[CustomEditor( typeof( DummyBezier ) )] public class DrawBezierHandleEditor : Editor { void OnSceneGUI( ) { DummyBezier t = target as DummyBezier;

Handles.DrawBezier( t.transform.position, Vector3.zero, Vector3.up, -Vector3.up, Color.white, null, HandleUtility.GetHandleSize( Vector3.zero ) ); } }

Скрипт, прикрепленный к маркеру:

using UnityEngine;
          
[ExecuteInEditMode]
public class DummyBezier : MonoBehaviour
{
	public void Start( )
	{
		Debug.Log( "I have a Bezier curve handle attached!" );
	}
}