# Building Materials

The material settings is where the maps making the Sub-Layers's Material are set.&#x20;

Each option will be shown separately below, featuring the Scalability and Mobile toggles/features if present but won't be discussed in this page. &#x20;

Please see [scalability-options](https://sylvl.gitbook.io/panoramake-release/scalability-and-cross-platform-development/scalability-options "mention") to learn more about the Scalability toggles, and [unified-cross-platform-development](https://sylvl.gitbook.io/panoramake-release/scalability-and-cross-platform-development/unified-cross-platform-development "mention") for the Mobile|VR switches.

{% hint style="info" %}
Some of these parameters work in the same way as on the [Master Surfaces Shaders](https://www.unrealengine.com/marketplace/en-US/product/p-n-p-master-surfaces-shaders-ue5-compatible). \
**As such, some links to the MSS Documentation will be present instead of a detailed description.**
{% endhint %}

For most options, a  ![](https://3751470283-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F9KuznrlYB4kqrVq5qJMd%2Fuploads%2FtDjOjuVovm2sVuMxVwsv%2Freset.png?alt=media\&token=288393af-9d53-4148-ae9f-45e59f7ef466) button is available next to the option's name. \
**Clicking it will allow you to restore the default values for it.**

### Sub-Layer Material Settings

<details>

<summary>Exclude Sub-layer from Caching </summary>

*Enabled only if the Sub-Layer is uncached.*

<img src="https://3751470283-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F9KuznrlYB4kqrVq5qJMd%2Fuploads%2Ftqvzg6sjdJlnhQLGT5Eo%2Fimage.png?alt=media&#x26;token=6ac3818e-5185-4bee-9ebb-c211ae603281" alt="" data-size="original">

* Excludes this layer from caching. \
  See [Landscape Caching](https://sylvl.gitbook.io/panoramake-release/setting-up-instance/landscape-caching-for-better-performance) for more information.

</details>

<details>

<summary>Use Texture Atlasses</summary>

*Visible only on MULTI Instance mode.*

![](https://3751470283-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F9KuznrlYB4kqrVq5qJMd%2Fuploads%2FcxOVCiRdmEMFzVt9iPN3%2Fimage.png?alt=media\&token=2124ff06-5c49-4c6d-b40f-4b55e93e7650)\
\
Enables the use of Atlasses textures to reduce the number of texture samplers used if many Sub-Layers are used across multiple BIOMES.

Should be toggled only **if absolutely necessary**, as it has a big performance impact that is not justified unless the Instance crashes due to the number of Texture Samplers !

* Clicking on "Refresh Biome Atlasses" will fully refresh the Texture Arrays with all textures set in the Biome. It may be necessary if a texture shown using atlasses isn't the same as shown without.

</details>

<details>

<summary>[ES3.1] Use Sub-Layer on Mobile</summary>

*Visible only with* [*Unified Cross-Platform*](https://sylvl.gitbook.io/panoramake-release/scalability-and-cross-platform-development/unified-cross-platform-development) *enabled.*

![](https://3751470283-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F9KuznrlYB4kqrVq5qJMd%2Fuploads%2F0BSI1TN0UOgxSLb8aIGz%2Fimage.png?alt=media\&token=36990fd2-8f14-45af-811d-ec1d9a86eb93)

* See [Sub-Layer on Mobile](https://sylvl.gitbook.io/panoramake-release/scalability-and-cross-platform-development/unified-cross-platform-development/all-switches-and-features-for-es3.1#use-sub-layer-on-mobile) in [all-switches-and-features-for-es3.1](https://sylvl.gitbook.io/panoramake-release/scalability-and-cross-platform-development/unified-cross-platform-development/all-switches-and-features-for-es3.1 "mention").

</details>

### Sub-Layer Texture Settings

<details>

<summary>UV Tiling</summary>

![](https://3751470283-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F9KuznrlYB4kqrVq5qJMd%2Fuploads%2FCWCoSL9ZOMSwTNyNHtWA%2Fimage.png?alt=media\&token=1872c77d-b606-4d64-98dc-8ca38381cd9f)

* [Scales the texture map tiling on the terrain.](https://sylvl.gitbook.io/untitled/guide/global-settings#uv-scale)

</details>

<details>

<summary>Distance-Based UV Scaling</summary>

![](https://3751470283-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F9KuznrlYB4kqrVq5qJMd%2Fuploads%2FJu39aagEzoErN3rnTmvR%2FCapture%20d%E2%80%99%C3%A9cran%202023-09-15%20210100.png?alt=media\&token=c96cf71e-c170-43c3-8ee6-c133a024fc18)

* When enabled, samples the texturing at a different UV Scaling and shows it when the player is at a certain distance of the surface. Useful for keeping "crisp" materials far away like rock surfaces.
* If the second distance is toggled, an additional layer of different UV Scaling will be used at set values.

In the example below, a version of the current Material with a UV Scale of 2.5 will be shown starting from the distance of 6000 units on top of the normal Material.

![](https://3751470283-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F9KuznrlYB4kqrVq5qJMd%2Fuploads%2FtZZKHAxXswXECoe84Fbu%2Fimage.png?alt=media\&token=f18a5130-d32a-44b1-90ad-177623485a07)

</details>

<details>

<summary>Break UV Tiling</summary>

![](https://3751470283-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F9KuznrlYB4kqrVq5qJMd%2Fuploads%2FJW6z6pEVxL734KJKpyGh%2FCapture%20d%E2%80%99%C3%A9cran%202023-09-15%20213847.png?alt=media\&token=7677067c-6eaf-43f6-a964-4ddc77714ae8)

* [Samples the texture differentely to break texture repetition. Settings are the same as on the Master Surfaces Shaders.](https://sylvl.gitbook.io/untitled/guide/global-settings#uv-breaking)

</details>

<details>

<summary>Triplanar Mapping</summary>

![](https://3751470283-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F9KuznrlYB4kqrVq5qJMd%2Fuploads%2F7oR07uD6tGwVGHcR8bf7%2Fimage.png?alt=media\&token=a167a319-df57-4543-820e-bb3acfe2539f)

* [Reduces texture deformation on stretched surfaces like high terrain spikes.](https://sylvl.gitbook.io/untitled/guide/global-settings#triplanar-mapping) \
  [Smoothness changes the transition's smoothness.](https://sylvl.gitbook.io/untitled/guide/global-settings#triplanar-mapping)

</details>

<details>

<summary>Parallax Occlusion Mapping</summary>

*Unavailable if Break UV Tiling is enabled, or if the Layer is cached.*

![](https://3751470283-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F9KuznrlYB4kqrVq5qJMd%2Fuploads%2FTpVUZ8z2BU3ss0lDuIqq%2Fimage.png?alt=media\&token=d75ad757-5f88-49a4-9604-e8933b7baec6)

* [Uses a heightmap to simulate depth.](https://sylvl.gitbook.io/untitled/guide/global-settings#parallax-occlusion-mapping)

</details>

<details>

<summary>Specular Settings</summary>

![](https://3751470283-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F9KuznrlYB4kqrVq5qJMd%2Fuploads%2FKuvVvJOyW23Ge5a1JUcr%2Fimage.png?alt=media\&token=21f604b8-a042-4593-a3cc-beb92bb83b32)

* Uses a channel of the Base Color as the specular output. \
  The value is a cap as natural landscape aren't surfaces with a lot of specularity.

</details>

### Texture Maps Input

<details>

<summary>Base Color</summary>

![](https://3751470283-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F9KuznrlYB4kqrVq5qJMd%2Fuploads%2FbY42WafcwMEeFjMzI7Ph%2Fimage.png?alt=media\&token=5319983c-6cd7-45f1-a9c4-2d60f9184b7e)

* Base Color slot of the Material
* If "Use Uniform Color" is checked, a uniform color will be used instead of a texture map. The color can be changed by clicking the Uniform Color thumbnail.
* **Texture Adjustements are available below :**&#x20;
  * Hue Shift (from 0 to 360)
  * Saturation (Values under 0 to desaturate, over 0 to saturate)
  * Contrast
  * Luminosity (0 for black, 1 by default, more than 1 to increase lightness)
  * Tint (Color)

</details>

<details>

<summary>Normal Map</summary>

<img src="https://3751470283-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F9KuznrlYB4kqrVq5qJMd%2Fuploads%2FJ1042ktJHk7w3OKvHl9U%2Fimage.png?alt=media&#x26;token=b49002dc-eb1f-4740-a77c-163510e036c9" alt="" data-size="original">

* Normal Map slot of the Material
* **Texture Adjustements are available below :**&#x20;
  * Regular Flatness (1 for full flat, values under 0 to increase normal strength)
  * Distance 1 & 2 Flatness available when Distance-Based UV Scaling is enabled
  * Reverse Normal can be checked for inverting the Map

</details>

<details>

<summary>ORM Values</summary>

![](https://3751470283-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F9KuznrlYB4kqrVq5qJMd%2Fuploads%2FWFoHOIypgwErGaDO3ppc%2Fimage.png?alt=media\&token=e4699752-a51b-4455-a65b-1db6e77a0f47)

* Occlusion/Roughness/Metallic slot of the Material
* Packed "ORM" Texture can be enabled/disabled, but should **always be used for optimization purposes if more than 1 map is used** for any of the ORM channels.
* If Uniform Roughness/Metalness is checked, the texture won't be used and an uniform value will be used.&#x20;
* If "Use Occlusion Map" is checked, the Occlusion map will be multiplied with the Color and Specular values following the Occlusion map adjustement options.
* **Texture Map & Settings are available if a Texture Map is used for any of the channels instead of uniform values :**

&#x20;![](https://3751470283-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F9KuznrlYB4kqrVq5qJMd%2Fuploads%2Fw3aaPI64HQeMjBLx1vH1%2Fimage.png?alt=media\&token=3fe3e84b-a496-47eb-b733-4a996da10ceb)&#x20;

* Each map can be selected (if "Use Packed "ORM" Texture" is disabled.)
* Contrast & Luminosity adjustement are available for each, except Metalness as a Texture map should be avoided as much as possible for performance reasons.
* Metalness is present if need be but affects the shader complexity and is not cacheable !

  Using a metalness map will need the processing of the affected sub-layer to be done **even if it's cached, so it should be always set to Uniform Value except for special cases** !

</details>

<details>

<summary>Use Displacement</summary>

[*Visible only with a Studio license.*](https://sylvl.gitbook.io/panoramake-release/introduction/licenses-differences)

![](https://3751470283-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F9KuznrlYB4kqrVq5qJMd%2Fuploads%2FKYodV0yDA25ZR4bXxVG3%2Fimage.png?alt=media\&token=2989d766-adbc-4885-ba48-1e0260382bbf)

* Displacement slot of the Material
* If enabled, displaces a Virtual Heightfield Mesh or the Landscape if Nanite Tessellation (5.4+) is enabled. \
  If it is, a Nanite Strength option will be visible ranging from 1 to 0.\
  See [Adding Displacement](https://sylvl.gitbook.io/panoramake-release/setting-up-instance/adding-displacement) for more informations.
* The Texture is contrasted **before** the Force setting.
* The texture used for the Displacement can be a Texture, the last channel of the ORM Map ("Use ORD Texture Format" as featured on some Megascans maps) or the Alpha channel of the Base color.

</details>
