# Buildable Free Object Type SO

These scriptable objects store all the data for buildable free objects.&#x20;

For each buildable free object, you need to create one of these assets and fill in the required data. \


You can create a new scriptable object, go to _**Asset > Create > SoulGames > Easy Grid Builder Pro > BuildableFreeObjectTypeSO.**_

_**NOTE:** Buildable Grid Objects snap to the grid cells and Buildable Free Objects do not snap to grid cells._

<figure><img src="https://4076857463-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FzgUHYggWkJIGXQGAerRm%2Fuploads%2FllNA5YlwVsRqru76xe37%2FScreenshot_29.png?alt=media&#x26;token=4f0cd2cf-7af0-4865-8969-45c41f993a55" alt=""><figcaption></figcaption></figure>

<table><thead><tr><th width="218.33333333333331">Property</th><th width="428">Function</th><th>Required</th></tr></thead><tbody><tr><td>Unique Object Name</td><td>Name for the buildable object - Must be unique.</td><td><mark style="color:red;"><strong>Yes</strong></mark></td></tr><tr><td>Object Description</td><td>A description of the object - Will be used in the UI in future.</td><td>No</td></tr><tr><td>Object Tool Tip Description</td><td>A tool tip description of the object - Will be used in the UI in future.</td><td>No</td></tr><tr><td>Buildable Category SO</td><td>Require BuildableCategorySO asset - If this object is not added it will not be displayed in Easy Grid Builder Pro UI.</td><td>No</td></tr><tr><td>Object Icon</td><td>Require a sprite - Used to display the object in Easy Grid Builder Pro UI.</td><td>No</td></tr><tr><td>Object Prefab</td><td>List of object prefabs - This is the prefab that will be spawned. If more than one is provided, one prefab will choose randomly each time to spawn.</td><td><mark style="color:red;"><strong>Yes</strong></mark></td></tr><tr><td>Ghost Prefab</td><td>This is used to display a temporary ghost visual before spawn the object in build mode. If this is empty first prefab of the Object Prefab list will be used instead.</td><td>No</td></tr><tr><td>Pleaceable Ghost Material</td><td>A custom material to be used in temporary ghost objects when they are place-able on the grid. If empty, the ghost object's default material will be used instead.</td><td>No</td></tr><tr><td>Not Pleaceable Ghost Material</td><td>A custom material to be used in temporary ghost objects when they are not place-able on the grid. If empty, the ghost object's default material will be used instead.</td><td>No</td></tr><tr><td>Set Built Object Layer</td><td>Set the build object's layer after the build is complete</td><td>No</td></tr><tr><td>Built Object Layer</td><td>The Layer that built object will have after the placement/build</td><td>No</td></tr><tr><td>Hold Key To Place</td><td>Enable the ability to place objects while holding the placement key (Paint Mode)</td><td>No</td></tr><tr><td>Snap To Object Snappers</td><td>Enable the ability to snap this object to object snappers</td><td>No</td></tr><tr><td>Enable Build Condition</td><td>Enable using build conditions for the buildable object</td><td>No</td></tr><tr><td>Build Condition SO</td><td>Require BuildConditionSO asset - This asset will hold all the build condition data.</td><td>No</td></tr></tbody></table>

Your defined BuildableFreeObjectTypeSO assets should be added to the Buildable Free Object Type SO List in all the Easy Grid Builder Pro grid systems in order to use them in the specific grids.

<figure><img src="https://4076857463-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FzgUHYggWkJIGXQGAerRm%2Fuploads%2FVvoGHuTcNPrHiPiVNniu%2FScreenshot_30.png?alt=media&#x26;token=05de962e-a9dc-40fc-b46c-9f19b2574880" alt=""><figcaption></figcaption></figure>

Also, you need to add the asset to the Buildable Free Object components in all the object prefab/prefabs.

<figure><img src="https://4076857463-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FzgUHYggWkJIGXQGAerRm%2Fuploads%2FbrppnNXa3AmYaa49M8iZ%2FScreenshot_31.png?alt=media&#x26;token=a1ea4c52-a7d6-4f77-9cd1-a9357ab3082f" alt=""><figcaption></figcaption></figure>

If you are using build conditions in your defined BuildableFreeObjectTypeSO asset, you will also need to add the asset to the Buildable Free Object Type So List under Multi Grid Build Condition Manager component.

<figure><img src="https://4076857463-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FzgUHYggWkJIGXQGAerRm%2Fuploads%2FGFAWQ9KefJYNlaKvf6Nn%2FScreenshot_32.png?alt=media&#x26;token=86deeaaf-189b-4cf9-9b3a-c1158a5d7ee3" alt=""><figcaption></figcaption></figure>

_You can find pre-defined_ BuildableFreeObjectTypeSO _assets located in **EasyGridBuilder Pro > Scriptable Objects > Buildable Free Object Type SO.**_
