# Material Setup And Testing

In this section we will go through how to properly setup a material in blender such that it exports properly to the GLB.

There is extensive information in the Blender docs about this if you want to read more: <https://docs.blender.org/manual/en/4.5/addons/import_export/scene_gltf2.html>

The first step we want to take is opening up `Preferences`

<figure><img src="https://33425813-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbIBFTVTQoxu1YByrB4tU%2Fuploads%2FLynNzoQirP2ioS4e4JMS%2FPasted%20image%2020250903143909.png?alt=media&#x26;token=d90bb34c-fee7-46a7-8a20-1344d5a54047" alt=""><figcaption></figcaption></figure>

Navigating to `Add-ons` and then `glTF 2.0 format` and enabling `Shader Editor Add-ons`

<figure><img src="https://33425813-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbIBFTVTQoxu1YByrB4tU%2Fuploads%2F2oB7XVQS9CT2KCeaFAVW%2FPasted%20image%2020250903144037.png?alt=media&#x26;token=0a6ed434-cd42-4efa-a05c-442791b7955d" alt=""><figcaption></figcaption></figure>

This will allow us to export occlusion maps if we have them.

Switch to the `Shading` tab to begin making our first material.

<figure><img src="https://33425813-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbIBFTVTQoxu1YByrB4tU%2Fuploads%2FJg1H7TbNByN3wkhJc104%2FPasted%20image%2020250903144210.png?alt=media&#x26;token=1c3da9b3-9a04-4c62-b4ab-2394da4196e3" alt=""><figcaption></figcaption></figure>

Select a mesh in the viewport and click the `New` button on the top of the `Shader Editor` window to create a new Material. I am going to rename this material `BaseMaterial`.

<figure><img src="https://33425813-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbIBFTVTQoxu1YByrB4tU%2Fuploads%2FR9x1wM10CVC9ihsDEOIH%2FPasted%20image%2020250903144451.png?alt=media&#x26;token=25a1010f-4545-4bfa-af61-e72ddb1046d7" alt=""><figcaption></figcaption></figure>

Let's add a new node `glTF Material Output` we won't need it immediately but we can get it setup now in case we need it in the future.

<figure><img src="https://33425813-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbIBFTVTQoxu1YByrB4tU%2Fuploads%2FdY8HGJA2FuGHnRc8hphj%2FPasted%20image%2020250903144604.png?alt=media&#x26;token=6f53bab2-d586-4adb-a9ff-f41663d3395d" alt=""><figcaption></figcaption></figure>

Just to test how this works let's make this material chrome like.

* Adjust `Metallic` up to 1.0
* Adjust `Roughness` down to 0.1

<figure><img src="https://33425813-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbIBFTVTQoxu1YByrB4tU%2Fuploads%2FvCjBy2dgLPluhtwLViI1%2FPasted%20image%2020250903145327.png?alt=media&#x26;token=026ff0d3-1692-4894-8ab0-3c95e4d52f96" alt=""><figcaption></figcaption></figure>

Then export the glb, run it through the avatar web tool and set the path in the ODK Unreal Editor to the newly downloaded GLB.

Boxie now has a chrome head!

<figure><img src="https://33425813-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbIBFTVTQoxu1YByrB4tU%2Fuploads%2FZTuqrlGcrEjxspa9Aqjo%2FPasted%20image%2020250903144955.png?alt=media&#x26;token=48ddf439-5132-4721-8030-32d50e32682e" alt=""><figcaption></figcaption></figure>

Any specific material settings should be tested at this point to help inform what values any texture maps you create should follow.

#### Note about Transparency

Currently the avatar web tool removes any transparency from materials. If you want to use transparency you'll have to use the CLI tool that we will cover in the pipeline portion.

Transparency is pretty limited in game for avatars. There are two types that are supported.

* Dithered - well suited for decals or cutting holes in geometry.
* Blended - This can create semi-transparent materials however it does not support reflections so materials like glass are hard to recreate. Additionally there can be some Z-Buffer issues when using this method so if this is enabled the entire object that has this material applied to it should be expected to be transparent.

You can switch between these two settings in the Details panel in the Materials section in the dropdown `Render Method`

<figure><img src="https://33425813-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FbIBFTVTQoxu1YByrB4tU%2Fuploads%2FIaKt0BerR1hJZIbRoU7o%2FPasted%20image%2020250903150902.png?alt=media&#x26;token=ae7a7927-dd56-4f89-ba33-5cc23708b7e5" alt=""><figcaption></figcaption></figure>
