Furality Umbra Shader Documentation

The Furality Umbra Shader

What is it?

The Furality Umbra Shader is a PBR shader. This means it uses ‘Physically Based Rendering’. Or more simply put, realistic lighting. The shader has some special effects such as glint and clear coat as well as Furality’s Luma Glow system. Luma Glow allows our club world to connect to your avatar and display hand-authored effects in your emissions. This lets you really become part of the show!

What is Luma Glow?

As you explore our Furality Umbra worlds, your avatar's emissions will receive special effects. For example, while inside our club, your emissions will pulse, change color, and flash with the beat of the music. Also, other Furality Umbra worlds will affect your avatar emissions differently.

Luma Glow is an entirely programmed light show created by our AV Team to be perfectly matched to the music and lighting in Club F.Y.N.N. during Furality conventions.

AudioLink is instead a generated effect from the audio feed created by analyzing the sound playing itself.

Optimized world-to-avatar control

This shader was designed to read data directly from our own sources. This means you don't have to do any audio processing on your end! Other effects are processed on your GPU, saving you that precious CPU performance.

How will the worlds affect my emission colors?

Our worlds will tint your emission color by another color. If you want to receive our world colors exactly as they are without any tinting, use a white and black emission texture.

How to apply the shader

With the example scene - Recommended for new users

  1. Open the "Umbra Material Examples" to view examples of the shader pre-applied
  2. Import your avatar into the scene
  3. Click on an example material sphere
  4. In the inspector, find the material slot and click it
  5. The file explorer will now show the materials within the scene
  6. Duplicate the example material of your choice ( CTRL + D )
  7. Drag it onto your avatar
  8. Apply your textures and adjust properties as needed

With an example material - Recommended for new users

  1. Create a new scene
  2. Import your avatar into the scene
  3. Navigate to "Packages\Furality Umbra Shader\Examples\Materials"
  4. Duplicate one of the example materials ( CTRL + D )
  5. Drag the material onto your avatar
  6. Apply textures and adjust properties as needed

With a new material

  1. Create a new scene
  2. Import your avatar into the scene
  3. Right click in the file explorer in Unity
  4. Select "Create"
  5. Select "Material"
  6. Name the newly created material whatever you wish
  7. Select the material to open it in the inspector
  8. Look for the "Shader" drop down at the top of the material inspector
  9. Select "Furality" from the dropdown to explore this folder
  10. Select "Umbra Shader" from the dropdown to explore this folder
  11. Select "Umbra Opaque" again from the dropdown to select the shader
  12. Drag the material onto your avatar
  13. Apply textures and adjust properties as needed

With an existing material

  1. Create a new scene
  2. Import your avatar into the scene
  3. Select the material to open it in the inspector
  4. Look for the "Shader" drop down at the top of the material inspector
  5. Select "Furality" from the dropdown to explore this folder
  6. Select "Umbra Shader" from the dropdown to explore this folder
  7. Select "Umbra Opaque" again from the dropdown to select the shader
  8. Drag the material onto your avatar
  9. Apply textures and adjust properties as needed

Workflow Selector

The Furality Umbra Shader features a new menu that allows you to select your texture workflow. This is useful for avatar creators and texture artists as it allows arbitrary channel packing. Utilizing this feature fully can allow for major savings to VRAM.

Workflows

Furality

This is the default workflow. It is similar to the standard metallic workflow but will utilize the second Mask Map slot for additional features, such as glint and clearcoat.

  • Metallic (Mask Map 01)
    • R - Metallic
    • G - Occlusion
    • B - Unused
    • A - Gloss
  • Furality Mask Map (Mask Map 02)
    • R - Clear coat mask
    • G - Clear coat roughness
    • B - Glint mask
    • A - Unused

Metallic

This is Unity’s default workflow for the standard shader.

  • Metallic (Mask Map 01)
    • R - Metallic
    • G - Unused
    • B - Unused
    • A - Gloss
  • Occlusion (Mask Map 02)
    • R - Occlusion
    • G - Occlusion
    • B - Unused
    • A - Unused

Specular

Workflow that uses an additional texture map for specular colors rather than relying on metallic.

  • Specular (Mask Map 01)
    • RGB - Specular Color
    • A - Gloss
  • Occlusion (Mask Map 02)
    • R - Occlusion
    • G - Occlusion
    • B - Unused
    • A - Unused

Packed

Workflow with arbitrary channel selection. The most versatile. Can work with any texture map but requires proper setup.

How to use Luma Glow - Simple

screenshot highlighting the enable emission checkmark

The simplest way to use Luma Glow is by using your emission. Drag your emission texture into the little square next to “Emission” or click the small circle to open a texture browser. After that, check the “Enable Emission” checkbox and make sure the color that is marked “HDR” is set to white so your emissions show.

screenshot highlighting the emission glow dropdown under luma glow

Now, open the Luma Glow/AudioLink dropdown and, under that, open the “Emission Glow” dropdown. Here, you can select one of our Luma Glow zones from the list.

Luma Glow zones are entirely aesthetic. It doesn't matter which one you pick! The zones are there so you may coordinate with friends and have all of your effects match up. Or maybe your avatar has multiple materials, and you'd like to vary the effects a little bit on each one. That's what these are for!

Luma Glow gradients are similar to zones but support even more complex patterns. However, they also may require additional setup for some avatars if the effect passes over a UV seam.

screenshot highlighting zone 1 being selected under luma glow

With a zone selected, you're done! You can now join the Umbra Shader test world and see how your avatar looks! If you run into any issues, feel free to ask for assistance in our #shader-help channel.

How to use Luma Glow - Advanced

Luma Glow has a lot of customizability, but using the shader to its fullest extent can seem a bit daunting. Hopefully, this clears things up!

Mask Maps

screenshot highlighting glow mask being selected under luma glow

Mask maps can be used to add even more complexity to the way your avatar reacts to Luma Glow. Using mask maps in conjunction with your emission allows for up to 5 separate zones or gradients to be mapped onto your avatar! To use one for Luma Glow, just specify a mask and a color channel.

What does 'Mode' do?

screenshot highlighting what glow modes are available under luma glow
  • Global - Luma Glow will affect your entire mesh at once
  • Pulse - A directional wave across your mesh's UVs
  • Radial - Similar to pulse but is in the shape of a circle and radiates out from its center
  • Direction Map - Uses a grayscale gradient texture to map the effect
  • Reversed Direction Map - Inverts the direction defined by the direction map

Animation

The animation properties will offset the pulse to the beat using AudioLink's ‘chronotensity.'

  • Animation Band - Which band of audio the effect will trigger on
  • Animation Mode - Changes the behavior of the animation
    • Default - Simply moves forward with the beat
    • Wobble - Will wobble back and forth with the beat
    • Smooth - Moves forward with the beat but is smoothed to prevent jerkiness
    • Hard Stop - Moves forward constantly but stops on the beat
    • Constant - A constant scrolling animation that does not listen to any beat. This can be selected without a band set
  • Animation Speed - How fast the animation will go
  • Animation Strength - How much the effect animates on the beat

Credits

Shader created by Naito Ookami