> For the complete documentation index, see [llms.txt](https://docs.overthereality.ai/over-sdk-manual/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.overthereality.ai/over-sdk-manual/over-visual-scripting-legacy/nodes/components/engine/renderer.md).

# Renderer

### Description

A Renderer [OverNode](/over-sdk-manual/over-visual-scripting-legacy/visual-scripting-essentials/overnode.md) is used to handle general functionalities for all renderers, by interacting with the Unity [Renderer](https://docs.unity3d.com/ScriptReference/Renderer.html) Component.

#### Renderer Exposer

This node is used to expose certain parameters and attributes of a given input Unity [Renderer](https://docs.unity3d.com/ScriptReference/Renderer.html) component, which are:

<table><thead><tr><th width="205.7659040188865">Name</th><th width="174.3279424240331">Type</th><th width="340.1572968009442">Description</th></tr></thead><tbody><tr><td>Ref</td><td><a href="https://docs.unity3d.com/ScriptReference/Renderer.html">Renderer</a></td><td>A reference of the input Unity Renderer Component</td></tr><tr><td>Material</td><td><a href="https://docs.unity3d.com/ScriptReference/Material.html">Material</a></td><td>The first instantiated Material assigned to the renderer.</td></tr><tr><td>Shared Material</td><td><a href="https://docs.unity3d.com/ScriptReference/Material.html">Material</a></td><td>The shared material of this object.</td></tr><tr><td>Materials</td><td><a href="https://docs.unity3d.com/ScriptReference/Material.html">Material [ ]</a></td><td>All the instantiated materials of this object.</td></tr><tr><td>Shared Materials</td><td><a href="https://docs.unity3d.com/ScriptReference/Material.html">Material [ ]</a></td><td>All the shared materials of this object.</td></tr></tbody></table>

<figure><img src="https://content.gitbook.com/content/6xdubHTzJACGqFIM7yJy/blobs/lXPfNbrXDEUusYCWIgRp/render_expo.png" alt=""><figcaption></figcaption></figure>

#### Set Material

This [OverNode](/over-sdk-manual/over-visual-scripting-legacy/visual-scripting-essentials/overnode.md) is used to modify an existing Renderer Component, by setting a new [Material](https://docs.unity3d.com/ScriptReference/Material.html). A `Material Type` can be selected to instruct the node whether or not to set the `Shared Material`.

This Flow [OverNode](/over-sdk-manual/over-visual-scripting-legacy/visual-scripting-essentials/overnode.md) accepts the following input data:

<table><thead><tr><th width="186.7659040188865">Name</th><th width="190.3279424240331">Type</th><th width="340.1572968009442">Description</th></tr></thead><tbody><tr><td>Renderer</td><td><a href="https://docs.unity3d.com/ScriptReference/Renderer.html">Renderer</a></td><td>A reference of the input Unity Renderer Component</td></tr><tr><td>Material</td><td><a href="https://docs.unity3d.com/ScriptReference/Material.html">Material</a></td><td>Material to be set</td></tr><tr><td>Material Type</td><td>Enum</td><td>Either New or Shared</td></tr></tbody></table>

and produces the following output data:

<table><thead><tr><th width="186.7659040188865">Name</th><th width="207.3279424240331">Type</th><th width="340.1572968009442">Description</th></tr></thead><tbody><tr><td>Output</td><td><a href="https://docs.unity3d.com/ScriptReference/Renderer.html">Renderer</a></td><td>A reference of the modified Unity Renderer Component</td></tr></tbody></table>

<figure><img src="https://content.gitbook.com/content/6xdubHTzJACGqFIM7yJy/blobs/fsq6wgcNckQWiSoq6lYh/render_set_mat.png" alt=""><figcaption></figcaption></figure>

#### Set Mesh

This node is used to modify an existing Renderer Component, by setting a new [Mesh](https://docs.unity3d.com/ScriptReference/Mesh.html). To perform this action, the GameObject, holding the Renderer Component, must have a [MeshFilter](https://docs.unity3d.com/ScriptReference/MeshFilter.html) assigned.

A `Mesh Type` can be selected to instruct the node either to set the `Shared Mesh` or not.

This Flow Node accepts the following input data:

<table><thead><tr><th width="186.7659040188865">Name</th><th width="215.3279424240331">Type</th><th width="340.1572968009442">Description</th></tr></thead><tbody><tr><td>Renderer</td><td><a href="https://docs.unity3d.com/ScriptReference/Renderer.html">Renderer</a></td><td>A reference of the input Unity Renderer Component</td></tr><tr><td>Mesh</td><td><a href="https://docs.unity3d.com/ScriptReference/Mesh.html">Mesh</a></td><td>Mesh to be set</td></tr><tr><td>Mesh Type</td><td>Enum</td><td>Either New or Shared</td></tr></tbody></table>

and produces the following output data:

<table><thead><tr><th width="186.7659040188865">Name</th><th width="207.3279424240331">Type</th><th width="340.1572968009442">Description</th></tr></thead><tbody><tr><td>Output</td><td><a href="https://docs.unity3d.com/ScriptReference/Renderer.html">Renderer</a></td><td>A reference of the modified Unity Renderer Component</td></tr></tbody></table>

<figure><img src="https://content.gitbook.com/content/6xdubHTzJACGqFIM7yJy/blobs/GJA3Hid3Q5Rx8rv6txcq/render_set_mesh.png" alt=""><figcaption></figcaption></figure>
