> For the complete documentation index, see [llms.txt](https://zerodensitydocumentation.gitbook.io/docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://zerodensitydocumentation.gitbook.io/docs/reality-4.27/reality-4.27/reality-tutorials-and-examples/reality-editor-tutorials/custom-blueprint-node-tutorials/using-event-tick-functions-and-properties.md).

# Using Event Tick Functions and Properties

Zero Density Blueprint Node object provides **node-based** pin *I/O* system for "Reality Setup" in real-time. Only **specified** pin data types can be exported into Reality Setup. You cannot place your object instance into level, because ZD Blueprint Node Class is not an actor. In this tutorial, we will instantiate a new Blueprint Node object and expose it on Reality Setup. This tutorial is aiming to understand properties and using Event Tick nodes.

This tutorial aims to show the following topics.

* How to instantiate Object and setup environment
* Usability of ZD Blueprint Node member functions.
* Using ZD Blueprint node on reality setup.

### Getting Started with Properties and Functions <a href="#usingeventtickfunctionsandproperties-gettingstartedwithpropertiesandfunctions" id="usingeventtickfunctionsandproperties-gettingstartedwithpropertiesandfunctions"></a>

* Click On ADD NEW button on the Content Browser tab.

![](/files/3IRUasVnQ6Pg4x8fZKnG)

* Click on BLUEPRINT CLASS from menu.

<div align="left"><img src="/files/mZA7ZbY5IrCYG07FNMwn" alt=""></div>

* Click on ZD BLUEPRINT NODE

<div align="left"><img src="/files/c0bg7M4db5iJY1YhTJmM" alt=""></div>

* Rename it as **ColorNode**, press enter and double click to open it. (You can also hit **F2** key rename after select on.)

<div align="left"><img src="/files/MlPsZpdROVDPEgL3dKKx" alt=""></div>

* After double click on **ColorNode,** the Blueprint Event-graph will appear.

<div align="left"><img src="/files/LOimQCkoX6LbUevvpgnm" alt=""></div>

* Click on +ADD NEW and VARIABLE &#x20;

![](/files/d8iuCb5vk7EWscUIO6Dp)

* Rename it as **ColorStruct** and press Enter.

![](/files/37bywQJNs6SMPhcelW3z)

* Click on **ColorStruct** under the Variables section.

![](/files/PA52NeW68rgT5PMRGUqR)

* Click on BOOLEAN near to **Variable Type** on Details Panel. (Details tab is on right side.)

<div align="left"><img src="/files/0fKF55XJzaNfN4v1udnw" alt=""></div>

* Search it for "linear" word and select on **Linear Color**.

<div align="left"><img src="/files/P70DPbRJDNXh122DoFHl" alt=""></div>

* Click COMPILE and SAVE from top menu.

<div align="left"><img src="/files/wvOqTsQBpH4RvEcRhRkR" alt=""></div>

From now on, we created a new ZD Node Blueprint class object and renamed it as **ColorNode**. We created a new variable named ad ColorStruct. Changing **variable type** to “Linear Struct”. We prepared our objects and variables. From there, we need to set event nodes and execute pins. We are ready to expand our node blueprint.

* On left panel, move your cursor on functions. **Override** button will be appear. Click override and click ON CONSTRUCT. The on construct will be created.

<div align="left"><img src="/files/lLmg8dfBpEuDuSHrXJrj" alt=""></div>

* Right click on the space area on event-graph. Search for "add color" and Click ADD COLOR PROPERTY

<div align="left"><img src="/files/ioP4pCQcMORu8qPzcnF4" alt=""></div>

* Drag and place the execution pins(white ones) as shown in below:

<div align="left"><img src="/files/AzYbCWe3aCRUNXxN4dpu" alt=""></div>

* Change Property Name to **ColorStruct** on the ADD COLOR PROPERTY function.

<div align="left"><img src="/files/yEXGNwRCgB6kv7fFhVBz" alt=""></div>

* Right click on the space and search for *Set Node Tick* and connect the nodes. Afterwards, check **New Needs Tick** on SET NODE TICK

<div align="left"><img src="/files/bPvEoF2Rqhshfix459dF" alt=""></div>

* Drag and Drop **ColorStruct** from variables section to the event-graph space. Select **Set ColorStruct**. (As alternatively, hold **ALT** key and drag ColorStruct to the space.)

<div align="left"><img src="/files/DOqWzafQQjPz1mGqDi12" alt=""></div>

* Right click into space. Search for "event tick" and click **Event On Tick.**

<div align="left"><img src="/files/LrqTZv3UeK57BueLTpdo" alt=""></div>

* Right click on space, **search** for nodes and **connect** the pins shown as in below. You can search for \`Set ColorStruct\` for assigning a value into ColorStruct. Do not forget to set **Random Float in Range** Max pin to 255. Do not forget to set the Property Name as **ColorStruct**.

<div align="left"><img src="/files/WugXAHHoRvjzWo0xzVpH" alt=""></div>

* The full of blueprint looks like this. Nodes could be set up on different locations. Click COMPILE and SAVE. Check if the blueprint is correct. Close the **ColorNode** blueprint.&#x20;

<div align="left"><img src="/files/x198EXNjQslqOoUzphZZ" alt=""></div>

As so far, We finished the functionally part of blueprint. We used ADD COLOR PROPERTY, SET COLOR PROPERTY and SET NODE TICK to modify our blueprint node. You can look at Blueprint Node Reference for furthermore functions. We set random RGB colors for every tick(frame change). The components of ColorStruct will be changed for every frame change and our node will be updated.

* Click EDIT and EDITOR PREFERENCES  from top menu.

<div align="left"><img src="/files/alfrFKhJQxrXY3N7GAfk" alt=""></div>

* Scroll down, Click EXPORT under REALITY category. Follow the steps. Click + button for a new **NodeClass**. Click 0 to expand. Click Node Class and select **ColorNode**. You can fill other areas. Close Project Settings.

<div align="left"><img src="/files/d0tbgleSXKbrwwmnoP2G" alt=""></div>

* Launch **Reality Setup** application. After launched, click play on top menu from Reality Editor.

<div align="left"><img src="/files/9Oz7PVsMdRFf3MNRg45R" alt=""></div>

* While Run Reality Setup. **Right click** on **space**. Click **Create**, click category named as "**First Category**". Click to Color Node.

![](/files/tqnRGoksPnM1fZiyAcjp)

* &#x20;Click on First Node and watch the ColorStruct values.

<div align="left"><img src="/files/nSjG1IFtyonocafBuvKW" alt=""></div>

### Conclusion <a href="#usingeventtickfunctionsandproperties-conclusion" id="usingeventtickfunctionsandproperties-conclusion"></a>

We learned how the create ZD Blueprint Node Class with using Unreal Engine Blueprints. We added blueprint variable into our node for create Color Property. You can modify your Input/Output pins with creating nodes. You also can to add **Input/Output** pins with using ADD INPUT PIN or ADD OUTPUT PIN to server data.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://zerodensitydocumentation.gitbook.io/docs/reality-4.27/reality-4.27/reality-tutorials-and-examples/reality-editor-tutorials/custom-blueprint-node-tutorials/using-event-tick-functions-and-properties.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
