Version: 2018.4
  • C#


Suggest a change


Thank you for helping us improve the quality of Unity Documentation. Although we cannot accept all submissions, we do read each suggested change from our users and will make updates where applicable.


Submission failed

For some reason your suggested change could not be submitted. Please <a>try again</a> in a few minutes. And thank you for taking the time to help us improve the quality of Unity Documentation.



public static Vector3[] MakeBezierPoints(Vector3 startPosition, Vector3 endPosition, Vector3 startTangent, Vector3 endTangent, int division);


Retuns an array of points to representing the bezier curve.

The division argument provides the number of lines used to make the bezier curve.

See Also: Handles.DrawBezier.

using UnityEngine;
using UnityEditor;

// Generates 20 points that define the bezier curve

[CustomEditor(typeof(DrawBezier))] public class DrawBezierExample : Editor { private Vector3[] points;

private void OnSceneGUI() { points = Handles.MakeBezierPoints( new Vector3(1.0f, 0.0f, 0.0f), new Vector3(-1.0f, 0.0f, 0.0f), new Vector3(-1.0f, 0.75f, 0.75f), new Vector3(1.0f, -0.75f, -0.75f), 20);

Handles.DrawAAPolyLine(points); } }

This is the second script:

using UnityEngine;

// The class called by the DrawBezierExample

public class DrawBezier : MonoBehaviour { // no script needed, just the class }