# Quick Start Guide

## <mark style="color:green;">Overview</mark>

**Easy Grid Builder Pro 2** is currently in its beta phase, and this guide is here to help you quickly get started with exploring its powerful features. Whether you’re a beginner or an experienced user, the **Quick Start Guide** will walk you through the essential steps for integrating and working with the asset effectively.

***

## <mark style="color:green;">Importing</mark>

**Easy Grid Builder Pro 2** requires the following Unity Package Manager dependencies to function properly:

* Cinemachine
* New Input System
* Spline Package
* Shader Graph
* TextMeshPro

When you import **EGB Pro 2** from the Unity Package Manager, Unity will automatically prompt you to install or upgrade these packages if they aren't already set up. Simply follow the prompts to complete the process.&#x20;

{% hint style="info" %}
After importing the Easy Grid Builder Pro 2 package into your project, go to the Window menu, select **TextMesh Pro**, and click Import **TMP Essential Resources**
{% endhint %}

<div align="center"><figure><img src="https://2651556506-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FeumhICLT4oHoEIEssOjB%2Fuploads%2F5DCQEaAbKHpZhrqN6kOs%2Fimage.png?alt=media&#x26;token=f82cac8f-1ba0-43ad-b3a9-b9496e4f9020" alt="" width="462"><figcaption></figcaption></figure></div>

***

## <mark style="color:green;">Adding Dependencies Manually</mark>

If you prefer to add the dependencies manually, First open the Unity Package Manager. In the 'Packages: Unity Registry' category, locate the required packages and install them in the following order:&#x20;

* **Cinemachine:** Find the Cinemachine package and click 'Install'.&#x20;

<figure><img src="https://2651556506-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FeumhICLT4oHoEIEssOjB%2Fuploads%2FbpSfqbZfJcI0o2MhPygm%2Fimage.png?alt=media&#x26;token=b57d2489-2b8c-4376-8cbc-4f71584da7ea" alt="" width="563"><figcaption></figcaption></figure>

* **Splines:** Locate the Splines package and click 'Install'.&#x20;

<figure><img src="https://2651556506-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FeumhICLT4oHoEIEssOjB%2Fuploads%2FwhdmQoFNsx4XtppmPiNH%2Fimage.png?alt=media&#x26;token=8ac1f4cb-62d9-4a6e-9a4b-e46d5d3120ca" alt="" width="563"><figcaption></figcaption></figure>

* **Shader Graph:** Locate the Shader Graph package and click 'Install'.

<figure><img src="https://2651556506-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FeumhICLT4oHoEIEssOjB%2Fuploads%2FnA1MysOLNEmf2UAyNPHJ%2Fimage.png?alt=media&#x26;token=2f566637-5fba-466b-8929-807cabfb07ae" alt="" width="563"><figcaption></figcaption></figure>

* **TextMeshPro:** Locate the TextMeshPro package and click 'Install'. After installing TextMeshPro, go to the 'Window' menu, select '**TextMeshPro**', and click '**Import TMP Essential Resources**'.&#x20;

<figure><img src="https://2651556506-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FeumhICLT4oHoEIEssOjB%2Fuploads%2FmLXOPbtLVJamKHQTqDOl%2Fimage.png?alt=media&#x26;token=7d565f80-9fb0-4cb8-8a2c-d614e4a9a0f7" alt="" width="563"><figcaption></figcaption></figure>

* **Input System:** Locate the Input System package and click 'Install'. After installing the New Input System package, Unity may prompt you to restart the editor. Save your work and restart Unity as required.

<figure><img src="https://2651556506-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FeumhICLT4oHoEIEssOjB%2Fuploads%2FGCF7DL4kFNotCnjUnM59%2Fimage.png?alt=media&#x26;token=829438c9-0c21-47d9-ab61-59ca68897493" alt="" width="563"><figcaption></figcaption></figure>

Next, ensure that **“Active Input Handling”** is set to **"Both"** in <mark style="color:purple;">**Edit > Project Settings > Player**</mark><mark style="color:purple;">.</mark> This will resolve any console errors you may have encountered.

<figure><img src="https://content.gitbook.com/content/eumhICLT4oHoEIEssOjB/blobs/ilO0NSaxzBScBzR27XLl/Screenshot_3.png" alt="" width="563"><figcaption></figcaption></figure>

***

## <mark style="color:green;">Adding Tag and Layer Manager</mark>

To set up the Tag and Layer Manager:

1. Select any object in your currently opened scene.
2. Click on **Tag** in the Inspector.
3. Select **Add Tag** from the dropdown.
4. In the newly opened window, click the **preset** icon (located in the top-right corner).
5. From the list, select **EGB Pro 2 TagManager**. This will automatically configure the necessary tags and layers for Easy Grid Builder Pro 2.

<figure><img src="https://2651556506-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FeumhICLT4oHoEIEssOjB%2Fuploads%2FfD9Wsy40Nsdx4tzfy9Gu%2Fimage.png?alt=media&#x26;token=b25a7883-064e-466c-883b-1a40c9953484" alt="" width="452"><figcaption></figcaption></figure>

This will add three new layers required for Easy Grid Builder Pro 2.

* `Layer 29:`<mark style="color:green;">`Character`</mark>
* `Layer 30:`<mark style="color:green;">`Terrain`</mark>
* `Layer 31:`<mark style="color:green;">`Grid`</mark>

{% hint style="info" %}
These layers are essential for the asset's functionality and integration with your project. If you don’t want to overwrite your existing Tag Manager preset, you can manually add these three layers instead.
{% endhint %}

***

## <mark style="color:green;">Adding Render Pipeline Package</mark>

{% hint style="success" %}
Easy Grid Builder Pro 2 only supports **Universal Render Pipeline (URP)** and **High Definition Render Pipeline (HDRP)**.
{% endhint %}

### <mark style="color:orange;">Universal Render Pipeline (URP) Setup</mark>

By Default EGB Pro 2 is configured for **Universal Render Pipeline (URP)**. To ensure proper functionality with URP, follow these steps:

* Open the **Universal Render Pipeline Global Settings** asset. In the **Rendering Layers 3D** section, rename **Layer 1** to **Decal**.

{% hint style="info" %}
If you're using Unity 6 or above, adding the Decal Layer manually is unnecessary. It will be added automatically when you import the provided '**EGB Pro 2 TagManager**.' Rendering layers can be found in the *Tags and Layers* section in Unity 6
{% endhint %}

<figure><img src="https://2651556506-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FeumhICLT4oHoEIEssOjB%2Fuploads%2FHrvEvQSVT9nokaNwVELl%2Fimage.png?alt=media&#x26;token=f6d5691d-d2e9-4363-a23b-5a1799424c94" alt="" width="452"><figcaption></figcaption></figure>

* Go to your **URP Render Pipeline Asset** (e.g., High Fidelity, Balanced, Performance, or any custom URP Renderer Asset you are using).
  * Inside the **Renderer Features** section, add a new **Decal renderer feature**. Then configure the following settings for the Decal renderer feature:
  * **Technique:** Set to DBuffer.
  * **Surface Data:** Set to Albedo.
  * **Max Draw Distance:** Set to 1000.
  * **Use Rendering Layers:** Enable this option (tick True).

<figure><img src="https://2651556506-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FeumhICLT4oHoEIEssOjB%2Fuploads%2F9H0rAw9Y6yxsMPocyfUE%2Fimage.png?alt=media&#x26;token=89f94520-5c25-4dfb-a98f-21ecd51ea1d5" alt="" width="451"><figcaption></figcaption></figure>

### <mark style="color:orange;">High Definition Render Pipeline (HDRP) Setup</mark>

Follow these steps to configure EGB Pro 2 in **High Definition Render Pipeline (HDRP)**:

* First Add the **EGB Pro 2 HDRP Package** to your project in the **SoulGames** folder. This will override the exciting files with **HDRP** compatible files.
* Then go to your **HDRP Render Pipeline Asset** (e.g., High Fidelity, Balanced, Performance, or any custom HDRP Renderer Asset you are using)
  * Inside the **Rendering** section, enable the **Decal renderer feature**. Then configure the following settings for the **Decal renderer feature**.
  * **Draw Distance:** Set to 1000.
  * **Layers:** Enable this option (tick True).

{% hint style="info" %}
These steps are essential for enabling **Custom Surface Projection** in **EGB Pro 2 Grids**. For example, they allow you to project your grid onto custom surfaces like a Terrain or any other object.
{% endhint %}

<figure><img src="https://2651556506-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FeumhICLT4oHoEIEssOjB%2Fuploads%2Fu2lHvhDEjk0yokkkHrrx%2Fimage.png?alt=media&#x26;token=8ff1021c-8cdd-49a1-b1f3-8dc864605462" alt="" width="398"><figcaption></figcaption></figure>

***

## <mark style="color:green;">Creating a Quick Scene</mark>

To quickly create a new scene with Easy Grid Builder Pro 2 first **open** or **create a new scene** you want to set up in your Unity project. Then in the Project window, navigate to <mark style="color:purple;">**SoulGames > Easy Grid Builder Pro 2 > Prefabs**</mark><mark style="color:purple;">.</mark> Locate the prefab named **Grid Managers** and drag and drop it into your scene. Next, locate the **EGB Pro 2 Grid XY** or **EGB Pro 2 Grid XZ** prefab in the same folder.&#x20;

* The **EGB Pro 2 Grid XZ** prefab is primarily designed for 3D games as it operates on the **XZ** plane.
* The **EGB Pro 2 Grid XY** prefab is mainly for 2D games as it operates on the **XY** plane

{% hint style="info" %}
Both prefabs can be used interchangeably in either 2D or 3D games depending on your project’s needs.
{% endhint %}

Navigate to <mark style="color:purple;">**SoulGames > Easy Grid Builder Pro 2 > Prefabs > Built-in UI**</mark><mark style="color:purple;">.</mark> Inside this folder, you will find three prefabs:&#x20;

* **EGB Pro 2 UI Prefab**
* **EGB Pro 2 UI Prefab Vertical Layout**
* **EGB Pro 2 UI Third Person Cursor**

If you are not using a **Third-person** or **First-person** setup, you can simply just drag and drop the **EGB Pro 2 UI Prefab** into your scene.

{% hint style="info" %}
**EGB Pro 2 UI Prefab** can also be used in a **Third-person** or **First-person** setup with the combination of **EGB Pro 2 UI Third Person Cursor** prefa&#x62;**.**
{% endhint %}

{% hint style="info" %}
The **EGB Pro 2 UI Prefab Vertical Layout** is designed primarily for **mobile** or **touchscreen** devices, but for this quick guide, we’ll use the **EGB Pro 2 UI Prefab**.
{% endhint %}

**Select** all the prefabs you have dragged into your scene, including the **Grid Managers**, **EGB Pro 2 Grid XY/XZ**, and **EGB Pro 2 UI Prefab**. Then **right-click** on the selected prefabs, go to **Prefab,** and choose **Unpack Completely**.&#x20;

**Select** the **EGB Pro 2 Grid XZ** or **EGB Pro 2 Grid XY** object you dragged into your scene. In the Inspector window, locate the **EasyGridBuilder Pro XZ** or **EasyGridBuilder Pro XY** component attached to this object. Inside this component, go to the **Core Grid Properties** section. Find the property called **GridUniqueID**. To the right of this property, there is a small **refresh icon**. Click on the refresh icon to generate a new **Unique ID** for the grid.

<figure><img src="https://2651556506-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FeumhICLT4oHoEIEssOjB%2Fuploads%2FY7BQjttPV9HLnJoFzS31%2Fimage.png?alt=media&#x26;token=047658d7-94b5-45d4-ae1b-c010d47b5884" alt="" width="563"><figcaption></figcaption></figure>

At this stage, you may notice there is no visual indication of the grid in your scene. To enable the grid view, In the **Easy Grid Builder Pro XZ** component, go to the **Core Grid Properties** section. Find the property called **Update Grid In Editor**. Tick the checkbox next to **Update Grid In Editor** to enable the grid view in the scene.

{% hint style="info" %}
If you still don’t see the grid visual after enabling the **Update Grid In Editor** property, follow these steps to troubleshoot:

1. Navigate to <mark style="color:purple;">**SoulGames > Easy Grid Builder Pro 2 > Prefabs > Grid Visuals**</mark><mark style="color:purple;">.</mark> Locate the **Object Grid (Object Prefab)**. Double-click the prefab to open it, then close it. This will refresh the prefab and may resolve the issue.
2. If the issue persists, go to <mark style="color:purple;">**SoulGames > Easy Grid Builder Pro 2 > Misc Assets > Materials**</mark><mark style="color:purple;">.</mark> Locate the **Grid Plane Shader Graph Material**, right-click on it, and select **Refresh**. This will refresh the material and should resolve the problem.
   {% endhint %}

Now to add buildable objects to your grid system, If you are using an **XY Grid**, which is primarily for 2D games, you can use 2D-based Buildable objects. If you are using an **XZ Grid**, you can use 3D Buildable objects.

**Easy Grid Builder Pro 2** provides some example buildable objects that you can use. Navigate to <mark style="color:purple;">**SoulGames > Easy Grid Builder Pro 2 > Examples > Example Grid Assets**</mark> in the Project window. Inside this folder, you will find several subfolders containing example **Buildable Assets**.

* **2D Grid Inventory Parts**
* **2D Platformer Buildings**
* **2D Top Down Buildings**
* **3D Buildings**
* **3D Modular Building Parts**

### <mark style="color:orange;">Adding Buildable Assets to Easy Grid Builder Pro XY Grid:</mark>

If you are using **Easy Grid Builder Pro XY** (the 2D version), follow these steps to add Buildable Assets. Navigate to <mark style="color:purple;">**Soulgames > Easy Grid Builder Pro 2 > Examples > Example Grid Assets > 2D TopDown Buildings**</mark><mark style="color:purple;">.</mark> Inside this folder, open the **SO Assets** subfolder.

You will find three **Buildable Grid Object SO** Assets in this folder. Select these three **Buildable Grid Object SO** Assets and drag and drop them into the **Buildable Grid Object SO List** property of the **Easy Grid Builder Pro XY** component Grid Buildables section in your grid object.

In the same SO Assets folder, locate the **Buildable Free Object SO** asset. Drag and drop the **Buildable Free Object SO** asset into the **Buildable Free Object SO List** property of the **Easy Grid Builder Pro XY** component Grid Buildables section in your grid object.

<figure><img src="https://2651556506-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FeumhICLT4oHoEIEssOjB%2Fuploads%2FsxgjwpvYa5cylBCFTQpb%2Fimage.png?alt=media&#x26;token=00908dc7-87e3-4a2b-bdb2-283d3c172375" alt="" width="452"><figcaption></figcaption></figure>

### <mark style="color:orange;">Adding Buildable Assets to Easy Grid Builder Pro XY Grid:</mark>

If you are using **Easy Grid Builder Pro XZ** (the 3D version), follow these steps to add buildable assets. Navigate to <mark style="color:purple;">**Soulgames > Easy Grid Builder Pro 2 > Examples > Example Grid Assets > 3D Buildings**</mark><mark style="color:purple;">.</mark> Inside this folder, open the **SO Assets** subfolder. In this folder, you will nd several **Buildable Object SO Assets**, including:

* **Buildable Grid Object SO** Assets
* **Buildable Free Object SO** Assets
* **Buildable Edge Object SO** Assets
* **Buildable Corner Object SO** Assets

Select all the **Buildable Grid Object SO** Assets and drag and drop them into the **Buildable Grid Object SO List** property of the **Easy Grid Builder Pro XZ** component Grid Buildables section in your grid object.

In the same **SO Assets** folder, Select all the **Buildable Edge Object SO** Assets and drag and drop them into the **Buildable Edge Object SO List** property in the **EasyGrid Builder Pro XZ** component's Grid Buildables section. Do the same with the **Buildable Corner Object SO** Asset and drag and drop it into the **Buildable Corner Object SO List** property. And select all the **Buildable Free Object SO** Assets and drag and drop them into the **Buildable Free Object SO List** property

<figure><img src="https://2651556506-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FeumhICLT4oHoEIEssOjB%2Fuploads%2FArmLs9B5y24HcW6a65x4%2Fimage.png?alt=media&#x26;token=2444c3f0-6557-4161-9066-bd3ab8a6ee31" alt="" width="451"><figcaption></figcaption></figure>

{% hint style="info" %}
**Quick Tip:** You can streamline the process of adding **Buildable SO** Assets by locking the&#x20;
{% endhint %}

1. Select your **EGB Pro 2 Grid XY/XZ** component in the Scene.
2. In the top-right corner of the Inspector window, click the lock icon to lock the Inspector

<figure><img src="https://2651556506-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FeumhICLT4oHoEIEssOjB%2Fuploads%2Fe8uCWTbSoKqUxfHr4czH%2Fimage.png?alt=media&#x26;token=789efdf4-36ff-479a-a08c-2dace9e81926" alt=""><figcaption></figcaption></figure>

3. Navigate to the **SO Assets** folder and select all the assets in the folder.
4. Drag and drop them into the four **Buildable Lists** in the **Easy Grid Builder Pro XZ** component.
5. The appropriate **Buildable SO** Assets will be added automatically to their respective lists.

Let's add the Camera Controller, First delete the existing **Main Camera** from your scene. Navigate to <mark style="color:purple;">**SoulGames > Easy Grid Builder Pro 2 > Prefabs > Sample Camera Controller**</mark><mark style="color:purple;">.</mark> Locate the prefab named **WASD Camera Controller Prefab**. Drag and drop this prefab into your scene.

Now hit the Play button to enter Play Mode. Use the provided UI to place objects on the grid.

{% hint style="info" %}
As you explore the UI, you will notice buttons to **Increase Grid Width**, **Decrease Grid Width**, **Increase Grid Length**, and **Decrease Grid Length**. These buttons allow you to adjust the grid's dimensions dynamically. To ensure these buttons work properly:

1. Go to the **Easy Grid Builder Pro 2** component in your grid object.
2. In the **Core Grid Properties** section, enable the property called **Update Grid Width and Length**.
   {% endhint %}

Explore over 15 different demo scenes located in the <mark style="color:purple;">**SoulGames > Easy Grid Builder Pro 2 > EGBPro 2 Examples folder**</mark><mark style="color:purple;">.</mark> These demo scenes showcase various components and features, helping you understand how to use **Easy Grid Builder Pro 2** effectively.

This concludes the **Quick Start Guide** for setting up a scene with **Easy Grid Builder Pro 2**.
