# SRenderSettings

## Index

### Functions Index

| Function Name                                                                           |
| --------------------------------------------------------------------------------------- |
| void [**SetGlobalShaderTexture** ](#setglobalshadertexture)(string name, SResource dir) |
| void [**SetGlobalShaderFloat** ](#setglobalshaderfloat)(string name, float dir)         |
| void [**SetGlobalShaderColor** ](#setglobalshadercolor)(string name, SColor dir)        |
| void [**SetGlobalShaderVector** ](#setglobalshadervector)(string name, SVector dir)     |

### Properties Index

| Property Name                                                                          |
| -------------------------------------------------------------------------------------- |
| int [**DefaultReflectionResolution** ](#defaultreflectionresolution)`get` `set`        |
| SMaterial [**Skybox** ](#skybox)`get` `set`                                            |
| float [**FlareFadeSpeed** ](#flarefadespeed)`get` `set`                                |
| float [**FlareStrength** ](#flarestrength)`get` `set`                                  |
| float [**HaloStrength** ](#halostrength)`get` `set`                                    |
| int [**ReflectionBounces** ](#reflectionbounces)`get` `set`                            |
| float [**ReflectionIntensity** ](#reflectionintensity)`get` `set`                      |
| SColor [**SubtractiveShadowColor** ](#subtractiveshadowcolor)`get` `set`               |
| float [**AmbientIntensity** ](#ambientintensity)`get` `set`                            |
| SColor [**AmbientLight** ](#ambientlight)`get` `set`                                   |
| SColor [**AmbientGroundColor** ](#ambientgroundcolor)`get` `set`                       |
| SColor [**AmbientEquatorColor** ](#ambientequatorcolor)`get` `set`                     |
| SColor [**AmbientSkyColor** ](#ambientskycolor)`get` `set`                             |
| SAmbientMode [**AmbientMode** ](#ambientmode)`get` `set`                               |
| float [**FogEndDistance** ](#fogenddistance)`get` `set`                                |
| float [**FogStartDistance** ](#fogstartdistance)`get` `set`                            |
| float [**FogDensity** ](#fogdensity)`get` `set`                                        |
| SColor [**FogColor** ](#fogcolor)`get` `set`                                           |
| SFogMode [**FogMode** ](#fogmode)`get` `set`                                           |
| bool [**Fog** ](#fog)`get` `set`                                                       |
| float [**AmbientSkyboxAmount** ](#ambientskyboxamount)`get` `set`                      |
| SDefaultReflectionMode [**DefaultReflectionMode** ](#defaultreflectionmode)`get` `set` |

## Functions

### SetGlobalShaderTexture

void **SetGlobalShaderTexture** (string name, [SResource](https://docs.breakroom.tech/scripting/client-scripting-api-reference/types/sresource) dir)

*Set a global texture property.*

| Parameter | Type | Description |
| --------- | ---- | ----------- |
|           |      |             |

{% tabs %}
{% tab title="Lua" %}

```lua
Space.RenderSettings.SetGlobalShaderTexture("_TestTex",Space.Resources[1])
```

{% endtab %}
{% endtabs %}

### SetGlobalShaderFloat

void **SetGlobalShaderFloat** (string name, float dir)

*Set a global float property for all shaders.*

| Parameter | Type | Description |
| --------- | ---- | ----------- |
|           |      |             |

{% tabs %}
{% tab title="Lua" %}

```lua
Space.RenderSettings.SetGlobalShaderFloat("_Mult",1)
```

{% endtab %}
{% endtabs %}

### SetGlobalShaderColor

void **SetGlobalShaderColor** (string name, [SColor](https://docs.breakroom.tech/scripting/client-scripting-api-reference/types/scolor) dir)

*Set a global color property for all shaders.*

| Parameter | Type | Description |
| --------- | ---- | ----------- |
|           |      |             |

{% tabs %}
{% tab title="Lua" %}

```lua
Space.RenderSettings.SetGlobalShaderFloat("_TestColor",Color.Red)
```

{% endtab %}
{% endtabs %}

### SetGlobalShaderVector

void **SetGlobalShaderVector** (string name, [SVector](https://docs.breakroom.tech/scripting/client-scripting-api-reference/types/svector) dir)

*Set a global color property for all shaders.*

| Parameter | Type | Description |
| --------- | ---- | ----------- |
|           |      |             |

{% tabs %}
{% tab title="Lua" %}

```lua
Space.RenderSettings.SetGlobalShaderFloat("_TestVector",Vector.One)
```

{% endtab %}
{% endtabs %}

## Properties

### DefaultReflectionResolution

int **DefaultReflectionResolution** `get` `set`

*Cubemap resolution for default reflection.*

{% tabs %}
{% tab title="Lua" %}

```lua
Space.RenderSettings.DefaultReflectionResolution=256
```

{% endtab %}
{% endtabs %}

{% tabs %}
{% tab title="Lua" %}

```lua
--the below script will make a slider change the Render Setting's Cube Map Resolution

thisGameObject = Space.Host.ExecutingObject

slider = Space.Host.GetReference("slider").UISlider --add reference to Scripting Runtime

OVC = function()
Space.RenderSettings.DefaultReflectionResolution = slider.Value * 4096 -- from 0 to 40906
end

slider.OnValueChanged(OVC)
```

{% endtab %}
{% endtabs %}

### Skybox

[SMaterial](https://docs.breakroom.tech/scripting/client-scripting-api-reference/types/smaterial) **Skybox** `get` `set`

*The global skybox to use.*

{% tabs %}
{% tab title="Lua" %}

```lua
Space.RenderSettings.Skybox=Space.Resources[1].AsMaterial
```

{% endtab %}
{% endtabs %}

{% tabs %}
{% tab title="Lua" %}

```lua
--clicking this object will toggle between two Skyboxes
--[Add 2 materials to the first two Resource slots in Scripting Runtime component]
thisGameObject = Space.Host.ExecutingObject

OnClick = function()
  if Space.RenderSettings.Skybox==Space.Resources[1].AsMaterial then
    Space.RenderSettings.Skybox=Space.Resources[2].AsMaterial
  else 
    Space.RenderSettings.Skybox=Space.Resources[1].AsMaterial
  end
end


thisGameObject.AddClickable()
thisGameObject.Clickable.OnClick(OnClick)
```

{% endtab %}
{% endtabs %}

### FlareFadeSpeed

float **FlareFadeSpeed** `get` `set`

*The fade speed of all flares in the Scene.*

{% tabs %}
{% tab title="Lua" %}

```lua
Space.RenderSettings.FlareFadeSpeed=5
```

{% endtab %}
{% endtabs %}

{% tabs %}
{% tab title="Lua" %}

```lua
--the below script will make a slider change the Render Setting's Flare Fade Speed

thisGameObject = Space.Host.ExecutingObject

slider = Space.Host.GetReference("slider").UISlider --add reference to Scripting Runtime

OVC = function()
Space.RenderSettings.FlareFadeSpeed = slider.Value * 5 -- from 0 to 5
end

slider.OnValueChanged(OVC)
```

{% endtab %}
{% endtabs %}

### FlareStrength

float **FlareStrength** `get` `set`

*The intensity of all flares in the Scene.*

{% tabs %}
{% tab title="Lua" %}

```lua
Space.RenderSettings.FlareStrength=1
```

{% endtab %}
{% endtabs %}

{% tabs %}
{% tab title="Lua" %}

```lua
--the below script will make a slider change the Render Setting's Flare Strength

thisGameObject = Space.Host.ExecutingObject

slider = Space.Host.GetReference("slider").UISlider --add reference to Scripting Runtime

OVC = function()
Space.RenderSettings.FlareStrength = slider.Value * 5 -- from 0 to 5
end

slider.OnValueChanged(OVC)
```

{% endtab %}
{% endtabs %}

### HaloStrength

float **HaloStrength** `get` `set`

*Size of the light halos.*

{% tabs %}
{% tab title="Lua" %}

```lua
Space.RenderSettings.HaloStrength=1
```

{% endtab %}
{% endtabs %}

{% tabs %}
{% tab title="Lua" %}

```lua
--the below script will make a slider change the Render Setting's Halo Strength

thisGameObject = Space.Host.ExecutingObject

slider = Space.Host.GetReference("slider").UISlider --add reference to Scripting Runtime

OVC = function()
Space.RenderSettings.HaloStrength = slider.Value * 5 -- from 0 to 5
end

slider.OnValueChanged(OVC)
```

{% endtab %}
{% endtabs %}

### ReflectionBounces

int **ReflectionBounces** `get` `set`

*The number of times a reflection includes other reflections.*

{% tabs %}
{% tab title="Lua" %}

```lua
Space.RenderSettings.ReflectionBounces=5
```

{% endtab %}
{% endtabs %}

{% tabs %}
{% tab title="Lua" %}

```lua
--the below script will make a slider change the Render Setting's Reflection Bounces

thisGameObject = Space.Host.ExecutingObject

slider = Space.Host.GetReference("slider").UISlider --add reference to Scripting Runtime

OVC = function()
Space.RenderSettings.ReflectionBounces = slider.Value * 5 -- from 0 to 5
end

slider.OnValueChanged(OVC)
```

{% endtab %}
{% endtabs %}

### ReflectionIntensity

float **ReflectionIntensity** `get` `set`

*How much the skybox / custom cubemap reflection affects the Scene.*

{% tabs %}
{% tab title="Lua" %}

```lua
Space.RenderSettings.ReflectionIntensity=1
```

{% endtab %}
{% endtabs %}

{% tabs %}
{% tab title="Lua" %}

```lua
--the below script will make a slider change the Render Setting's Reflection Intensity

thisGameObject = Space.Host.ExecutingObject

slider = Space.Host.GetReference("slider").UISlider --add reference to Scripting Runtime

OVC = function()
Space.RenderSettings.ReflectionIntensity = slider.Value * 5 -- from 0 to 5
end

slider.OnValueChanged(OVC)
```

{% endtab %}
{% endtabs %}

### SubtractiveShadowColor

[SColor](https://docs.breakroom.tech/scripting/client-scripting-api-reference/types/scolor) **SubtractiveShadowColor** `get` `set`

*The color used for the sun shadows in the Subtractive lightmode.*

{% tabs %}
{% tab title="Lua" %}

```lua
Space.RenderSettings.SubtractiveShadowColor=Color.Red
```

{% endtab %}
{% endtabs %}

{% tabs %}
{% tab title="Lua" %}

```lua
--clicking the object will open a color picker that changes the Subtractive Shadow Color
thisGameObject = Space.Host.ExecutingObject
originalColor = Space.RenderSettings.SubtractiveShadowColor

OnChange = function(SColor) 
 Space.RenderSettings.SubtractiveShadowColor = SColor
end

OnSelect = function(SColor)
 Space.RenderSettings.SubtractiveShadowColor = SColor
end

OnCancel = function()
 Space.RenderSettings.SubtractiveShadowColor = originalColor
end

OnClick = function()
Space.Dialogues.ColorPicker("title","okbutton", OnChange, OnSelect, OnCancel, originalColor)
end


thisGameObject.AddClickable()
thisGameObject.Clickable.OnClick(OnClick)
```

{% endtab %}
{% endtabs %}

### AmbientIntensity

float **AmbientIntensity** `get` `set`

*How much the light from the Ambient Source affects the Scene.*

{% tabs %}
{% tab title="Lua" %}

```lua
Space.RenderSettings.AmbientIntensity = 1
```

{% endtab %}
{% endtabs %}

{% tabs %}
{% tab title="Lua" %}

```lua
--the below script will make a slider change the Render Setting's Ambient Intensity

thisGameObject = Space.Host.ExecutingObject

slider = Space.Host.GetReference("slider").UISlider --add reference to Scripting Runtime

OVC = function()
Space.RenderSettings.AmbientIntensity = slider.Value * 5 -- from 0 to 5
end

slider.OnValueChanged(OVC)
```

{% endtab %}
{% endtabs %}

### AmbientLight

[SColor](https://docs.breakroom.tech/scripting/client-scripting-api-reference/types/scolor) **AmbientLight** `get` `set`

*Flat ambient lighting color.*

{% tabs %}
{% tab title="Lua" %}

```lua
Space.RenderSettings.AmbientLight=Color.Blue
```

{% endtab %}
{% endtabs %}

{% tabs %}
{% tab title="Lua" %}

```lua
--clicking the object will open a color picker that changes the Ambient Light Color
thisGameObject = Space.Host.ExecutingObject
originalColor = Space.RenderSettings.AmbientLight

OnChange = function(SColor) 
 Space.RenderSettings.AmbientLight = SColor
end

OnSelect = function(SColor)
 Space.RenderSettings.AmbientLight = SColor
end

OnCancel = function()
 Space.RenderSettings.AmbientLight = originalColor
end

OnClick = function()
Space.Dialogues.ColorPicker("title","okbutton", OnChange, OnSelect, OnCancel, originalColor)
end


thisGameObject.AddClickable()
thisGameObject.Clickable.OnClick(OnClick)
```

{% endtab %}
{% endtabs %}

### AmbientGroundColor

[SColor](https://docs.breakroom.tech/scripting/client-scripting-api-reference/types/scolor) **AmbientGroundColor** `get` `set`

*Ambient lighting coming from below.*

{% tabs %}
{% tab title="Lua" %}

```lua
Space.RenderSettings.AmbientGroundColor=Color.Green
```

{% endtab %}
{% endtabs %}

{% tabs %}
{% tab title="Lua" %}

```lua
--clicking the object will open a color picker that changes the Ambient Ground Color
thisGameObject = Space.Host.ExecutingObject
originalColor = Space.RenderSettings.AmbientGroundColor

OnChange = function(SColor) 
 Space.RenderSettings.AmbientGroundColor = SColor
end

OnSelect = function(SColor)
 Space.RenderSettings.AmbientGroundColor = SColor
end

OnCancel = function()
 Space.RenderSettings.AmbientGroundColor = originalColor
end

OnClick = function()
Space.Dialogues.ColorPicker("title","okbutton", OnChange, OnSelect, OnCancel, originalColor)
end


thisGameObject.AddClickable()
thisGameObject.Clickable.OnClick(OnClick)
```

{% endtab %}
{% endtabs %}

### AmbientEquatorColor

[SColor](https://docs.breakroom.tech/scripting/client-scripting-api-reference/types/scolor) **AmbientEquatorColor** `get` `set`

*Ambient lighting coming from the sides.*

{% tabs %}
{% tab title="Lua" %}

```lua
Space.RenderSettings.AmbientEquatorColor=Color.Green
```

{% endtab %}
{% endtabs %}

{% tabs %}
{% tab title="Lua" %}

```lua
--clicking the object will open a color picker that changes the Ambient Equator Color
thisGameObject = Space.Host.ExecutingObject
originalColor = Space.RenderSettings.AmbientEquatorColor

OnChange = function(SColor) 
 Space.RenderSettings.AmbientEquatorColor = SColor
end

OnSelect = function(SColor)
 Space.RenderSettings.AmbientEquatorColor = SColor
end

OnCancel = function()
 Space.RenderSettings.AmbientEquatorColor= originalColor
end

OnClick = function()
Space.Dialogues.ColorPicker("title","okbutton", OnChange, OnSelect, OnCancel, originalColor)
end


thisGameObject.AddClickable()
thisGameObject.Clickable.OnClick(OnClick)
```

{% endtab %}
{% endtabs %}

### AmbientSkyColor

[SColor](https://docs.breakroom.tech/scripting/client-scripting-api-reference/types/scolor) **AmbientSkyColor** `get` `set`

*Ambient lighting coming from above.*

{% tabs %}
{% tab title="Lua" %}

```lua
Space.RenderSettings.AmbientSkyColor=Color.White
```

{% endtab %}
{% endtabs %}

{% tabs %}
{% tab title="Lua" %}

```lua
--clicking the object will open a color picker that changes the Ambient Sky Color
thisGameObject = Space.Host.ExecutingObject
originalColor = Space.RenderSettings.AmbientSkyColor

OnChange = function(SColor) 
 Space.RenderSettings.AmbientSkyColor = SColor
end

OnSelect = function(SColor)
 Space.RenderSettings.AmbientSkyColor = SColor
end

OnCancel = function()
 Space.RenderSettings.AmbientSkyColor = originalColor
end

OnClick = function()
Space.Dialogues.ColorPicker("title","okbutton", OnChange, OnSelect, OnCancel, originalColor)
end


thisGameObject.AddClickable()
thisGameObject.Clickable.OnClick(OnClick)
```

{% endtab %}
{% endtabs %}

### AmbientMode

int **AmbientMode** `get` `set`

*Ambient lighting mode.* Skybox = 1. Trilight = 2. Flat = 3. Custom = 4.

{% tabs %}
{% tab title="Lua" %}

```lua
Space.RenderSettings.AmbientMode=1
```

{% endtab %}
{% endtabs %}

{% tabs %}
{% tab title="Lua" %}

```lua
--clicking this object will toggle between 4 Ambient Modes

thisGameObject = Space.Host.ExecutingObject

OnClick = function()
  if Space.RenderSettings.AmbientMode==4 then
    Space.RenderSettings.AmbientMode=1
  else 
    Space.RenderSettings.AmbientMode = Space.RenderSettings.AmbientMode + 1
  end
end


thisGameObject.AddClickable()
thisGameObject.Clickable.OnClick(OnClick)
```

{% endtab %}
{% endtabs %}

### FogEndDistance

float **FogEndDistance** `get` `set`

*The ending distance of linear fog.*

{% tabs %}
{% tab title="Lua" %}

```lua
Space.RenderSettings.FogEndDistance=300
```

{% endtab %}
{% endtabs %}

{% tabs %}
{% tab title="Lua" %}

```lua
--the below script will make a slider change the Render Setting's Fog End Distance

thisGameObject = Space.Host.ExecutingObject

slider = Space.Host.GetReference("slider").UISlider --add reference to Scripting Runtime

OVC = function()
Space.RenderSettings.FogEndDistance = (slider.Value * 170) + 30-- from 30 to 200
end

slider.OnValueChanged(OVC)
```

{% endtab %}
{% endtabs %}

### FogStartDistance

float **FogStartDistance** `get` `set`

*The starting distance of linear fog.*

{% tabs %}
{% tab title="Lua" %}

```lua
Space.RenderSettings.FogStartDistance=10
```

{% endtab %}
{% endtabs %}

{% tabs %}
{% tab title="Lua" %}

```lua
--the below script will make a slider change the Render Setting's Fog Start Distance

thisGameObject = Space.Host.ExecutingObject

slider = Space.Host.GetReference("slider").UISlider --add reference to Scripting Runtime

OVC = function()
Space.RenderSettings.FogStartDistance = (slider.Value * 10) -- from 0 to 10
end

slider.OnValueChanged(OVC)
```

{% endtab %}
{% endtabs %}

### FogDensity

float **FogDensity** `get` `set`

*The density of the exponential fog.*

{% tabs %}
{% tab title="Lua" %}

```lua
Space.RenderSettings.FogDensity=10
```

{% endtab %}
{% endtabs %}

{% tabs %}
{% tab title="Lua" %}

```lua
--the below script will make a slider change the Render Setting's Fog Density

thisGameObject = Space.Host.ExecutingObject

slider = Space.Host.GetReference("slider").UISlider --add reference to Scripting Runtime

OVC = function()
Space.RenderSettings.FogDensity = (slider.Value * 10) -- from 0 to 10
end

slider.OnValueChanged(OVC)
```

{% endtab %}
{% endtabs %}

### FogColor

[SColor](https://docs.breakroom.tech/scripting/client-scripting-api-reference/types/scolor) **FogColor** `get` `set`

*The color of the fog.*

{% tabs %}
{% tab title="Lua" %}

```lua
Space.RenderSettings.FogColor = Color.Red
```

{% endtab %}
{% endtabs %}

{% tabs %}
{% tab title="Lua" %}

```lua
--clicking the object will open a color picker that changes the Fog color
thisGameObject = Space.Host.ExecutingObject
originalColor = Space.RenderSettings.FogColor

OnChange = function(SColor) 
 Space.RenderSettings.FogColor = SColor
end

OnSelect = function(SColor)
 Space.RenderSettings.FogColor = SColor
end

OnCancel = function()
 Space.RenderSettings.FogColor = originalColor
end

OnClick = function()
Space.Dialogues.ColorPicker("title","okbutton", OnChange, OnSelect, OnCancel, originalColor)
end


thisGameObject.AddClickable()
thisGameObject.Clickable.OnClick(OnClick)
```

{% endtab %}
{% endtabs %}

### FogMode

int **FogMode** `get` `set`

*Ambient lighting mode.* Linear = 1. Exponential = 2. ExponentialSquared = 3.

{% tabs %}
{% tab title="Lua" %}

```lua
Space.RenderSettings.FogMode=2
```

{% endtab %}
{% endtabs %}

{% tabs %}
{% tab title="Lua" %}

```lua
--clicking this object will toggle between 3 Fog Modes

thisGameObject = Space.Host.ExecutingObject

OnClick = function()
  if Space.RenderSettings.FogMode==3 then
    Space.RenderSettings.FogMode=1
  else 
    Space.RenderSettings.FogMode = Space.RenderSettings.FogMode + 1
  end
end


thisGameObject.AddClickable()
thisGameObject.Clickable.OnClick(OnClick)
```

{% endtab %}
{% endtabs %}

### Fog

bool **Fog** `get` `set`

*Whether Fog is enabled*

{% tabs %}
{% tab title="Lua" %}

```lua
Space.RenderSettings.Fog=true
```

{% endtab %}
{% endtabs %}

{% tabs %}
{% tab title="Lua" %}

```lua
--clicking this object will toggle enable/disable Fog

thisGameObject = Space.Host.ExecutingObject

OnClick = function()
Space.RenderSettings.Fog = not Space.RenderSettings.Fog
end


thisGameObject.AddClickable()
thisGameObject.Clickable.OnClick(OnClick)
```

{% endtab %}
{% endtabs %}

### AmbientSkyboxAmount

float **AmbientSkyboxAmount** `get` `set`

*How much the light from the Ambient Source affects the Scene.*

{% tabs %}
{% tab title="Lua" %}

```lua
Space.RenderSettings.AmbientSkyboxAmount=10
```

{% endtab %}
{% endtabs %}

{% tabs %}
{% tab title="Lua" %}

```lua
--the below script will make a slider change the Render Setting's Ambient Skybox Amount

thisGameObject = Space.Host.ExecutingObject

slider = Space.Host.GetReference("slider").UISlider --add reference to Scripting Runtime

OVC = function()
Space.RenderSettings.AmbientSkyboxAmount = (slider.Value * 10) -- from 0 to 10
end

slider.OnValueChanged(OVC)
```

{% endtab %}
{% endtabs %}

### DefaultReflectionMode

int **DefaultReflectionMode** `get` `set`

*Ambient lighting mode.* Skybox = 0. Custom = 1.

{% tabs %}
{% tab title="Lua" %}

```lua
Space.RenderSettings.DefaultReflectionMode = 1
```

{% endtab %}
{% endtabs %}

{% tabs %}
{% tab title="Lua" %}

```lua
--clicking this object will toggle between two Default Reflection Modes

thisGameObject = Space.Host.ExecutingObject

OnClick = function()
  if Space.RenderSettings.DefaultReflectionMode==1 then
    Space.RenderSettings.DefaultReflectionMode=0
  else 
    Space.RenderSettings.DefaultReflectionMode=1
  end
end


thisGameObject.AddClickable()
thisGameObject.Clickable.OnClick(OnClick)
```

{% endtab %}
{% endtabs %}
