Documentation

Unity Engine


User Manual

Script Reference

Unity Engine


LineRenderer

The line renderer is used to draw free-floating lines in 3D space.
Read time 10 minutesLast updated 4 days ago

Definition

public sealed class LineRenderer : Renderer

Remarks

This class is a script interface for a line renderer component.

Examples

// Programatically add a LineRenderer component and draw a 3D line.using UnityEngine;public class LineRendererExample : MonoBehaviour{ void Start() { // Add a LineRenderer component LineRenderer lineRenderer = gameObject.AddComponent<LineRenderer>(); // Set the material lineRenderer.material = new Material(Shader.Find("Sprites/Default")); // Set the color lineRenderer.startColor = Color.red; lineRenderer.endColor = Color.green; // Set the width lineRenderer.startWidth = 0.2f; lineRenderer.endWidth = 0.2f; // Set the number of vertices lineRenderer.positionCount = 3; // Set the positions of the vertices lineRenderer.SetPosition(0, new Vector3(0, 0, 0)); lineRenderer.SetPosition(1, new Vector3(1, 1, 0)); lineRenderer.SetPosition(2, new Vector3(2, 0, 0)); }}

Constructors

Constructor

Description

LineRenderer()Instead of using this constructor, either use GameObject.AddComponent\<LineRenderer\>(), or if you have an existing LineRenderer component on a GameObject, use GameObject.GetComponent\<LineRenderer\>().

Properties

Property

Description

alignmentSelect whether the line will face the camera, or the orientation of the Transform Component.
applyActiveColorSpaceSet whether colors will be converted appropriately before being passed to the GPU when using Linear Rendering.
colorGradientSet the color gradient describing the color of the line at various points along its length.
endColorSet the color at the end of the line.
endWidthSet the width at the end of the line.
generateLightingDataConfigures a line to generate Normals and Tangents. With this data, Scene lighting can affect the line via Normal Maps and the Unity Standard Shader, or your own custom-built Shaders.
loopConnect the start and end positions of the line together to form a continuous loop.
maskInteractionSpecifies how the LineRenderer interacts with SpriteMask.
numCapVerticesSet this to a value greater than 0, to get rounded corners on each end of the line. The default is 0.
numCornerVerticesSet this to a value greater than 0, to get rounded corners between each segment of the line.
positionCountSet/get the number of vertices.
shadowBiasApply a shadow bias to prevent self-shadowing artifacts. The specified value is the proportion of the line width at each segment.
startColorSet the color at the start of the line.
startWidthSet the width at the start of the line.
textureModeChoose whether the U coordinate of the line texture is tiled or stretched.
textureScaleA multiplier for the UV coordinates of the line texture.
useWorldSpaceIf enabled, the lines are defined in world space.
widthCurveSet the curve describing the width of the line at various points along its length.
widthMultiplierSet an overall multiplier that is applied to the LineRenderer.widthCurve to get the final width of the line.

Methods

Method

Description

BakeMeshCreates a snapshot of LineRenderer and stores it in
mesh
.
GetPositionGet the position of a vertex in the line.
GetPositionsGet the positions of all vertices in the line.
SetPositionSet the position of a vertex in the line.
SetPositionsSet the positions of all vertices in the line.
SimplifyGenerates a simplified version of the original line by removing points that fall within the specified tolerance.

Inheritance

Inherited Members

Operators

Operator

Description

operator ==Compares two object references to see if they refer to the same object.
boolDetermines whether the object exists.
operator !=Compares if two objects refer to a different object.