This guide was made under the assumption that you have basic knowledge of materials in Unity.
Materials are what make our models look nice in-game. Material effects are achieved by using shaders. There will be examples shown that are designed to either teach you how to achieve certain effects or give you inspiration on what effects you want to give your models. The shaders used for each effect will be listed.
The testing preview in the project may not exactly match the behavior in-game. Be sure to test your model in-game to see the actual results!
It is recommended to download the minimal Unity package for easy setup. Import the package in Unity. Once imported you will want to go into your projects packages and locate the AudioLinkAvatar prefab in Packages/AudioLink/Runtime and drag it into your scene.
You have 2 options for using audio. One of them is using an audio clip by selecting the AudioLinkInput gameObject. Then drag your audio clip into AudioCLip.
The other option is using a Youtube link to play an audio clip. Select the AudioLinkYtdlpPlayer gameObject and paste a Youtube link in the YtdlpPlayer script.
Make sure to add an audio listener component to the AudioLinkAvatar gameObject. When you click play in Unity, your audio should start playing.
Audio Link Settings
Diffuse Texture Animation: This will make the texture rotate based on the audio band settings.
Color Flashing: This will make your material flash based on the audio band settings and the color assigned to it.
Glow Pump: This is an additive effect that will scale on top of initial glow value (This feature is only seen in-game). Parts of the effect can be changed with the audio band settings.
https://youtu.be/MTjwqI7rUYA is not a valid YouTube URL!
Object Scale: This will change the objects scale based on the audio band settings.
This option uses vertex based animation. It scales it based on how the normals are set up. The following examples show a smooth shaded object (left) and a flat shaded object (right). Compared to each other they behave very differently!!!!
https://youtu.be/aK0Rnfs0Kbs is not a valid YouTube URL!
There are 2 types of volume sensitivity in the audio band settings for object scale: Default and curve based (for the premium version).
You can change the way the object scale behaves by adjusting the curve. There are a lot of effects you can achieve. If, for example, you want your objects to have a roll effect, you can loop the curve like shown:
https://youtu.be/6Hx4BRGb6hM is not a valid YouTube URL!
Render queue is a way of specifying which objects to render first by using tags assigned to the shader. For most shaders by default, the render queue will be set to 2000.
This is most likely going to be utilized for things like glass refraction or transparency for objects.
There are different rendering types, each with its own set value.
From Shader: 2000
To keep this simple, the glass refraction shader made by AlexxSeven will be used as an example. All 3 of the shaders have a queue set to 2000.
As you can see here, the other objects cannot be seen through the glass refraction shader. This is because they are on the same layer. By changing the sand's render queue to 1999, we get this result:
The sand can now be seen through the glass because the sand's render queue is set to a lower number than the glass refraction. Think of the queue as layers. For this next example, each material is set to the following:
The dirt is on a lower number than the sand is. This causes the dirt to be rendered over the sand. If you want your objects to be seen through the glass refraction shader, make sure your objects render queue is set to a value lower than the glass refraction's!
The default ui in-game has a render queue set to 3000.