Unity - Scripting API: LineRenderer
class in UnityEngine
/
Inherits from:Renderer
/
Implemented in:UnityEngine.CoreModule
Success!
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.
Description
The line renderer is used to draw free-floating lines in 3D space.
This class is a script interface for a line renderer component.
// 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)); } }
Properties
| Property | Description |
|---|---|
| alignment | Select whether the line will face the camera, or the orientation of the Transform Component. |
| applyActiveColorSpace | Set whether colors will be converted appropriately before being passed to the GPU when using Linear Rendering. |
| colorGradient | Set the color gradient describing the color of the line at various points along its length. |
| endColor | Set the color at the end of the line. |
| endWidth | Set the width at the end of the line. |
| generateLightingData | Configures 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. |
| loop | Connect the start and end positions of the line together to form a continuous loop. |
| maskInteraction | Specifies how the LineRenderer interacts with SpriteMask. |
| numCapVertices | Set this to a value greater than 0, to get rounded corners on each end of the line. The default is 0. |
| numCornerVertices | Set this to a value greater than 0, to get rounded corners between each segment of the line. |
| positionCount | Set/get the number of vertices. |
| shadowBias | Apply a shadow bias to prevent self-shadowing artifacts. The specified value is the proportion of the line width at each segment. |
| startColor | Set the color at the start of the line. |
| startWidth | Set the width at the start of the line. |
| textureMode | Choose whether the U coordinate of the line texture is tiled or stretched. |
| textureScale | A multiplier for the UV coordinates of the line texture. |
| useWorldSpace | If enabled, the lines are defined in world space. |
| widthCurve | Set the curve describing the width of the line at various points along its length. |
| widthMultiplier | Set an overall multiplier that is applied to the LineRenderer.widthCurve to get the final width of the line. |
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>(). |
Public Methods
| Method | Description |
|---|---|
| BakeMesh | Creates a snapshot of LineRenderer and stores it in mesh. |
| GetPosition | Get the position of a vertex in the line. |
| GetPositions | Get the positions of all vertices in the line. |
| SetPosition | Set the position of a vertex in the line. |
| SetPositions | Set the positions of all vertices in the line. |
| Simplify | Generates a simplified version of the original line by removing points that fall within the specified tolerance. |
Inherited Members
Public Methods
| Method | Description |
|---|---|
| BroadcastMessage | Calls the method named methodName on every MonoBehaviour in this game object or any of its children. |
| CompareTag | Checks the GameObject's tag against the defined tag. |
| GetComponent | Gets a reference to a component of type T on the same GameObject as the component specified. |
| GetComponentInChildren | Gets a reference to a component of type T on the same GameObject as the component specified, or any child of the GameObject. |
| GetComponentIndex | Gets the index of the component on its parent GameObject. |
| GetComponentInParent | Gets a reference to a component of type T on the same GameObject as the component specified, or any parent of the GameObject. |
| GetComponents | Gets references to all components of type T on the same GameObject as the component specified. |
| GetComponentsInChildren | Gets references to all components of type T on the same GameObject as the component specified, and any child of the GameObject. |
| GetComponentsInParent | Gets references to all components of type T on the same GameObject as the component specified, and any parent of the GameObject. |
| SendMessage | Calls the method named methodName on every MonoBehaviour in this game object. |
| SendMessageUpwards | Calls the method named methodName on every MonoBehaviour in this game object and on every ancestor of the behaviour. |
| TryGetComponent | Gets the component of the specified type, if it exists. |
| GetInstanceID | Gets the instance ID of the object. |
| ToString | Returns the name of the object. |
| GetClosestReflectionProbes | Returns an array of closest reflection probes with weights, weight shows how much influence the probe has on the renderer, this value is also used when blending between reflection probes occur. |
| GetMaterials | Returns all the instantiated materials of this object. |
| GetPropertyBlock | Get per-Renderer or per-Material property block. |
| GetSharedMaterials | Returns all the shared materials of this object. |
| HasPropertyBlock | Returns true if the Renderer has a material property block attached via SetPropertyBlock. |
| ResetBounds | Reset custom world space bounds. |
| ResetLocalBounds | Reset custom local space bounds. |
| SetMaterials | Assigns the shared materials of this renderer using the list of materials provided. |
| SetPropertyBlock | Lets you set or clear per-renderer or per-material parameter overrides. |
| SetSharedMaterials | Assigns the shared materials of this renderer using the list of materials provided. |
Static Methods
| Method | Description |
|---|---|
| Destroy | Removes a GameObject, component, or asset. |
| DestroyImmediate | Destroys the specified object immediately. Use with caution and in Edit mode only. |
| DontDestroyOnLoad | Do not destroy the target Object when loading a new Scene. |
| FindAnyObjectByType | Retrieves any active loaded object of Type type. |
| FindFirstObjectByType | Retrieves the first active loaded object of Type type. |
| FindObjectsByType | Retrieves a list of all loaded objects of Type type. |
| Instantiate | Clones the object original and returns the clone. |
| InstantiateAsync | Captures a snapshot of the original object (that must be related to some GameObject) and returns the AsyncInstantiateOperation. |
Operators
| Operator | Description |
|---|---|
| bool | Does the object exist? |
| operator != | Compares if two objects refer to a different object. |
| operator == | Compares two object references to see if they refer to the same object. |
Messages
| Message | Description |
|---|---|
| OnBecameInvisible | OnBecameInvisible is called when the object is no longer visible by any camera. |
| OnBecameVisible | OnBecameVisible is called when the object became visible by any camera. |