Note: The ShaderLabUnity’s language for defining the structure of Shader objects. More info
See in Glossary functionality on this page is legacy, and is documented for backwards compatibility only. If your shaderA program that runs on the GPU. More info
See in Glossary source file includes HLSL code, Unity ignores these commands completely. If your shader source file does not include HLSL code, Unity compiles these commands into regular shader programs on import.
Feature name | Built-in Render Pipeline | Universal Render Pipeline (URP) | High Definition Render Pipeline (HDRP) | Custom SRP |
---|---|---|---|---|
Legacy fog | Yes | No | No | No |
Use the Fog command to enable or disable Unity’s built-in fog, in shaders that are written using legacy fixed-function style commands.
Configure the project settingsA broad collection of settings which allow you to configure how Physics, Audio, Networking, Graphics, Input and many other areas of your project behave. More info
See in Glossary for the built-in fog effect using the RenderSettings class, or the Lighting window, and then use this command to enable or disable fog in a given Pass.
Fogging blends the color of the generated pixels down towards a given color, based on the distance from the cameraA component which creates an image of a particular viewpoint in your scene. The output is either drawn to the screen or captured as a texture. More info
See in Glossary. Fogging does not modify a blended pixelThe smallest unit in a computer image. Pixel size depends on your screen resolution. Pixel lighting is calculated at every screen pixel. More info
See in Glossary’s alpha value, only its RGB components.
Parameter | Value | Function |
---|---|---|
Mode | Off |
Do not apply built-in fog to this Pass. |
Global |
Apply built-in fog to this Pass, based on the project settings. Note that if fog is disabled in the project settings, Unity will not apply it to this Pass. |
This example code demonstrates the syntax for using this command in a Pass block.
Shader "Examples/FogExample"
{
SubShader
{
// The rest of the code that defines the SubShader goes here.
Pass
{
Fog Off
// The rest of the code that defines the Pass goes here.
}
}
}