SLineRenderer
Index
Functions Index
void SetPosition (int index, SVector position)
SVector GetPosition (int index)
void SetPositions (SVector[] positions)
SVector[] GetPositions ()
void SetWidth (float start, float end)
void SetColors (SColor start, SColor end)
Properties Index
bool Enabled get set
bool ReceiveShadows get set
bool IsVisible get
bool CastShadows get set
bool MotionVectors get set
bool UseLightProbes get set
float StartWidth get set
float EndWidth get set
float WidthMultiplier get set
SColor StartColor get set
SColor EndColor get set
int PositionCount get set
bool UseWorldSpace get set
bool Loop get set
int NumCornerVertices get set
int NumCapVertices get set
int TextureMode get set
int Alignment get set
SGameObject GameObject get
Functions
SetPosition
void SetPosition (int index, SVector position)
Set the position of a vertex in the line.
Space.Host.ExecutingObject.LineRenderer.SetPosition(1,Vector.New(0,0,0))--this object will continuously render a line between two different game objects
refObject1 = Space.Host.GetReference("object1") --Add in References section of Scripting Runtime Component
refObject2 = Space.Host.GetReference("object2") --Add in References section of Scripting Runtime Component
thisObject = Space.Host.ExecutingObject
function OnUpdateFunction()
thisObject.LineRenderer.PositionCount = 2 --this is necessary
thisObject.LineRenderer.SetPosition(1,refObject1.WorldPosition)
thisObject.LineRenderer.SetPosition(2,refObject2.WorldPosition)
end
thisObject.OnUpdate(OnUpdateFunction)GetPosition
SVector GetPosition (int index)
Get the position of a vertex in the line
vectorPosition = Space.Host.ExecutingObject.LineRenderer.GetPosition(1)SetPositions
void SetPositions (SVector[] positions)
Set the positions of all vertices in the line.
Space.Host.ExecutingObject.LineRenderer.SetPositions({Vector.New(0,0,0) , Vector.New(1,1,1)})--this object will continuously render a line between two different game objects
refObject1 = Space.Host.GetReference("object1") --Add in References section of Scripting Runtime Component
refObject2 = Space.Host.GetReference("object2") --Add in References section of Scripting Runtime Component
thisObject = Space.Host.ExecutingObject
function OnUpdateFunction()
thisObject.LineRenderer.PositionCount = 2 --this is necessary
thisObject.LineRenderer.SetPositions({refObject1.WorldPosition,refObject2.WorldPosition})
end
thisObject.OnUpdate(OnUpdateFunction)GetPositions
SVector[] GetPositions ()
Get the positions of all vertices in the line.
tableVectorPositions = Space.Host.ExecutingObject.LineRenderer.GetPositions()SetWidth
void SetWidth (float start, float end)
Set width at start and end
Space.Host.ExecutingObject.LineRenderer.SetWidth(5,7)--the below script will make a slider set both the Line Renderer's Start Width and End Width
thisGameObject = Space.Host.ExecutingObject
refSlider = Space.Host.GetReference("Slider") --Add Reference to Scripting Runtime Component
refLineRenderer = Space.Host.GetReference("LineRenderer") --Add Reference to Scripting Runtime Component
OVC = function()
local width = (refSlider.UISlider.Value * 5) -- from 0 to 5
refLineRenderer.LineRenderer.SetWidth(width,width)
end
refSlider.UISlider.OnValueChanged(OVC)SetColors
void SetColors (SColor start, SColor end)
Set color at start and end (Line shader necessary)
Space.Host.ExecutingObject.LineRenderer.SetColors(Color.Red, Color.Blue)--clicking the object will open a color picker that changes both Line Renderer's Start Color and End Color
thisGameObject = Space.Host.ExecutingObject
originalStartColor = thisGameObject.LineRenderer.StartColor
originalEndColor = thisGameObject.LineRenderer.EndColor
OnChange = function(SColor)
thisGameObject.LineRenderer.SetColors(SColor,SColor)
end
OnSelect = function(SColor)
thisGameObject.LineRenderer.SetColors(SColor,SColor)
end
OnCancel = function()
thisGameObject.LineRenderer.SetColors(originalStartColor,originalEndColor)
end
OnClick = function()
Space.Dialogues.ColorPicker("title","okbutton", OnChange, OnSelect, OnCancel, originalStartColor)
end
thisGameObject.AddClickable()
thisGameObject.Clickable.OnClick(OnClick)Properties
Enabled
bool Enabled get set
Makes the renderer visible if enabled.
Space.Host.ExecutingObject.LineRenderer.Enabled = false--clicking this object toggles it's LineRenderer component On/Off
thisObject = Space.Host.ExecutingObject
function OnClickFunction()
thisObject.LineRenderer.Enabled = not thisObject.LineRenderer.Enabled
end
thisObject.AddClickable()
thisObject.Clickable.OnClick(OnClickFunction)ReceiveShadows
bool ReceiveShadows get set
Enable this option to make the line display any shadows that are cast upon it.
Space.Host.ExecutingObject.LineRenderer.ReceiveShadows = false--clicking this object toggles it's Recieve Shadows options
thisObject = Space.Host.ExecutingObject
function OnClickFunction()
thisObject.LineRenderer.ReceiveShadows = not thisObject.LineRenderer.ReceiveShadows
end
thisObject.AddClickable()
thisObject.Clickable.OnClick(OnClickFunction)IsVisible
bool IsVisible get
To check if this renderer is visible.
isVisible = Space.Host.ExecutingObject.LineRenderer.IsVisibleCastShadows
bool CastShadows get set
Specify if and how the line casts shadows when a suitable Light shine on it.
Space.Host.ExecutingObject.LineRenderer.CastShadows = trueMotionVectors
bool MotionVectors get set
Specifies whether this renderer has a per-object motion vector pass. If set to true, this object will have a per-object motion vector pass rendered
Space.Host.ExecutingObject.LineRenderer.MotionVectors = true--clicking this object toggles it's Line Renderer's Motion Vectors (Per Object Motion or Force no motion)
thisObject = Space.Host.ExecutingObject
function OnClickFunction()
thisObject.LineRenderer.MotionVectors = not thisObject.LineRenderer.MotionVectors
end
thisObject.AddClickable()
thisObject.Clickable.OnClick(OnClickFunction)UseLightProbes
bool UseLightProbes get set
The light probe interpolation type.
Space.Host.ExecutingObject.LineRenderer.UseLightProbes = true--clicking this object toggles it's Light Probe between Off and Blend Mode
thisObject = Space.Host.ExecutingObject
function OnClickFunction()
thisObject.LineRenderer.UseLightProbes = not thisObject.LineRenderer.UseLightProbes
end
thisObject.AddClickable()
thisObject.Clickable.OnClick(OnClickFunction)StartWidth
float StartWidth get set
Set the width at the start of the line.
Space.Host.ExecutingObject.LineRenderer.StartWidth = 1--the below script will make a slider change the Line Renderers start width
thisGameObject = Space.Host.ExecutingObject
refSlider = Space.Host.GetReference("Slider") --Add Reference to Scripting Runtime Component
refLineRenderer = Space.Host.GetReference("LineRenderer") --Add Reference to Scripting Runtime Component
refSlider.UISlider.Value = refLineRenderer.LineRenderer.StartWidth / 2 --initial position of slider
OVC = function()
refLineRenderer.LineRenderer.StartWidth = (refSlider.UISlider.Value * 2) -- from 0 to 2
end
refSlider.UISlider.OnValueChanged(OVC)EndWidth
float EndWidth get set
Set the width at the end of the line.
Space.Host.ExecutingObject.LineRenderer.EndWidth = 2--the below script will make a slider change the Line Renderer's End Width
thisGameObject = Space.Host.ExecutingObject
refSlider = Space.Host.GetReference("Slider") --Add Reference to Scripting Runtime Component
refLineRenderer = Space.Host.GetReference("LineRenderer") --Add Reference to Scripting Runtime Component
refSlider.UISlider.Value = refLineRenderer.LineRenderer.EndWidth / 2 --initial position of slider
OVC = function()
refLineRenderer.LineRenderer.EndWidth = (refSlider.UISlider.Value * 2) -- from 0 to 2
end
refSlider.UISlider.OnValueChanged(OVC)WidthMultiplier
float WidthMultiplier get set
Set an overall multiplier that is applied to the LineRenderer.widthCurve to get the final width of the line.
Space.Host.ExecutingObject.LineRenderer.WidthMultiplier = 1.2--the below script will make a slider change the Line Renderer's Width Multiplier
thisGameObject = Space.Host.ExecutingObject
refSlider = Space.Host.GetReference("Slider") --Add Reference to Scripting Runtime Component
refLineRenderer = Space.Host.GetReference("LineRenderer") --Add Reference to Scripting Runtime Component
refSlider.UISlider.Value = refLineRenderer.LineRenderer.WidthMultiplier / 5 --initial position of slider
OVC = function()
refLineRenderer.LineRenderer.WidthMultiplier = (refSlider.UISlider.Value * 5) -- from 0 to 5
end
refSlider.UISlider.OnValueChanged(OVC)StartColor
SColor StartColor get set
Set the color at the start of the line.
Space.Host.ExecutingObject.LineRenderer.StartColor = Color.Red--clicking the object will open a color picker that changes the Line Renderer's Start Color
thisGameObject = Space.Host.ExecutingObject
originalColor = thisGameObject.LineRenderer.StartColor
OnChange = function(SColor)
thisGameObject.LineRenderer.StartColor = SColor
end
OnSelect = function(SColor)
thisGameObject.LineRenderer.StartColor = SColor
end
OnCancel = function()
thisGameObject.LineRenderer.StartColor = originalColor
end
OnClick = function()
Space.Dialogues.ColorPicker("title","okbutton", OnChange, OnSelect, OnCancel, originalColor)
end
thisGameObject.AddClickable()
thisGameObject.Clickable.OnClick(OnClick)EndColor
SColor EndColor get set
Set the color at the end of the line.
Space.Host.ExecutingObject.LineRenderer.EndColor = Color.Blue--clicking the object will open a color picker that changes the Line Renderer's End Color
thisGameObject = Space.Host.ExecutingObject
originalColor = thisGameObject.LineRenderer.EndColor
OnChange = function(SColor)
thisGameObject.LineRenderer.EndColor = SColor
end
OnSelect = function(SColor)
thisGameObject.LineRenderer.EndColor = SColor
end
OnCancel = function()
thisGameObject.LineRenderer.EndColor = originalColor
end
OnClick = function()
Space.Dialogues.ColorPicker("title","okbutton", OnChange, OnSelect, OnCancel, originalColor)
end
thisGameObject.AddClickable()
thisGameObject.Clickable.OnClick(OnClick)PositionCount
int PositionCount get set
Set/get the number of vertices.
Space.Host.ExecutingObject.LineRenderer.PositionCount = 10--the below script will make a slider change the Line Renderer's Position Count
thisGameObject = Space.Host.ExecutingObject
refSlider = Space.Host.GetReference("Slider") --Add Reference to Scripting Runtime Component
refLineRenderer = Space.Host.GetReference("LineRenderer") --Add Reference to Scripting Runtime Component
refSlider.UISlider.Value = refLineRenderer.LineRenderer.PositionCount / 20 --initial position of slider
OVC = function()
refLineRenderer.LineRenderer.PositionCount = refSlider.UISlider.Value * 20 -- from 0 to 20
end
refSlider.UISlider.OnValueChanged(OVC)UseWorldSpace
bool UseWorldSpace get set
If enabled, the points are considered as world space coordinates. If disabled, they are local to the transform of the GameObject to which this component is attached.
Space.Host.ExecutingObject.LineRenderer.UseWorldSpace = true--clicking this object toggles it's Use World Space option
thisObject = Space.Host.ExecutingObject
function OnClickFunction()
thisObject.LineRenderer.UseWorldSpace = not thisObject.LineRenderer.UseWorldSpace
end
thisObject.AddClickable()
thisObject.Clickable.OnClick(OnClickFunction)Loop
bool Loop get set
Enable this to connect the first and last positions of the line, and form a closed loop.
Space.Host.ExecutingObject.LineRenderer.Loop = true--clicking this object toggles it's Loop option
thisObject = Space.Host.ExecutingObject
function OnClickFunction()
thisObject.LineRenderer.Loop = not thisObject.LineRenderer.Loop
end
thisObject.AddClickable()
thisObject.Clickable.OnClick(OnClickFunction)NumCornerVertices
int NumCornerVertices get set
Set this to a value greater than 0, to get rounded corners between each segment of the line.
Space.Host.ExecutingObject.LineRenderer.NumCornerVertices = 2--the below script will make a slider change the Line Renderer's Corner Vertices
thisGameObject = Space.Host.ExecutingObject
refSlider = Space.Host.GetReference("Slider") --Add Reference to Scripting Runtime Component
refLineRenderer = Space.Host.GetReference("LineRenderer") --Add Reference to Scripting Runtime Component
refSlider.UISlider.Value = refLineRenderer.LineRenderer.NumCornerVertices / 10 --initial position of slider
OVC = function()
refLineRenderer.LineRenderer.NumCornerVertices = refSlider.UISlider.Value * 10 -- from 0 to 10
end
refSlider.UISlider.OnValueChanged(OVC)NumCapVertices
int NumCapVertices get set
Set this to a value greater than 0, to get rounded corners on each end of the line.
Space.Host.ExecutingObject.LineRenderer.NumCapVertices = 2--the below script will make a slider change the Line Renderer's End Cap Vertices
thisGameObject = Space.Host.ExecutingObject
refSlider = Space.Host.GetReference("Slider") --Add Reference to Scripting Runtime Component
refLineRenderer = Space.Host.GetReference("LineRenderer") --Add Reference to Scripting Runtime Component
refSlider.UISlider.Value = refLineRenderer.LineRenderer.NumCapVertices / 20 --initial position of slider
OVC = function()
refLineRenderer.LineRenderer.NumCapVertices = refSlider.UISlider.Value * 20 -- from 0 to 10
end
refSlider.UISlider.OnValueChanged(OVC)TextureMode
int TextureMode get set
Control how the Texture is applied to the line. (0-3)
Space.Host.ExecutingObject.LineRenderer.TextureMode = 2--clicking this object toggles between it's 4 Texture Modes
thisObject = Space.Host.ExecutingObject
function OnClickFunction()
if thisObject.LineRenderer.TextureMode == 3 then
thisObject.LineRenderer.TextureMode = 0
else
thisObject.LineRenderer.TextureMode = thisObject.LineRenderer.TextureMode + 1
end
end
thisObject.AddClickable()
thisObject.Clickable.OnClick(OnClickFunction)Alignment
int Alignment get set
Set the direction that the line faces. (0 or 1)
Space.Host.ExecutingObject.LineRenderer.Alignment = 1--clicking this object toggles it's Alignment option between View (0) and Transform Z (1)
thisObject = Space.Host.ExecutingObject
function OnClickFunction()
if thisObject.LineRenderer.Alignment == 0 then
thisObject.LineRenderer.Alignment = 1
else thisObject.LineRenderer.Alignment = 0
end
end
thisObject.AddClickable()
thisObject.Clickable.OnClick(OnClickFunction)GameObject
SGameObject GameObject get
Property Description
theGameObject = Space.Host.ExecutingObject.LineRenderer.GameObject