perintah ShaderLab: Login
perintah ShaderLab: Login

perintah ShaderLab: Login

Mengatur masker menulis saluran warna, yang mencegah GPU dari menulis ke saluran di target render.

Secara default, GPU menulis ke semua saluran (RGBA). Untuk beberapa efek yang mungkin ingin meninggalkan saluran tertentu yang tidak dimodifikasi; misalnya, Anda dapat menonaktifkan rendering warna untuk membuat bayangan yang tidak berwarna. Kasus penggunaan umum lainnya adalah untuk menulis warna yang dapat dinonaktifkan sepenuhnya sehingga Anda dapat mengisi satu penyangga dengan data tanpa menulis kepada orang lain; misalnya, Anda mungkin ingin mengisi stencil bufferSebuah toko memori yang memegang nilai per-piksel 8-bit. Dalam Unity, Anda dapat menggunakan penyangga stensil untuk piksel bendera, dan kemudian hanya render ke piksel yang melewati operasi stensil. More info
Lihat di Glossary
tanpa menulis ke target render.

Kompatibilitas pipa Render

Feature name Built-in Render PipelineA series of operations that take the contents of a Scene, and displays them on a screen. Unity lets you choose from pre-built render pipelines, or write your own. More info
See in Glossary
Universal Render Pipeline (URP) High Definition Render Pipeline (HDRP) Custom SRP
ColorMask Yes Yes Yes Yes

Usage

Perintah ini membuat perubahan pada state render. Gunakan blok Pass untuk mengatur state render untuk Pass itu, atau menggunakannya dalam blok SubShader untuk mengatur state render untuk semua Passes di SubShader.

Signature Example syntax Function
ColorMask <channels> ColorMask RGB Tulis ke saluran yang diberikan dari target render default.
ColorMask <channels> <render target> ColorMask RGB 2 Seperti di atas, tetapi untuk target render yang diberikan.

Nilai parameter yang valid

Parameter Value Function
render target Pengintegrasian, 0 melalui 7. Indeks target render.
channels 0 Memungkinkan warna menulis ke saluran R, G, B, dan A.
R Memungkinkan warna menulis ke saluran merah.
G Memungkinkan warna menulis ke saluran hijau.
B Memungkinkan warna menulis ke saluran biru.
A Memungkinkan warna menulis ke saluran alfa.
Setiap kombinasi R, G, B, dan A tanpa ruang. Contoh: RB Memungkinkan warna menulis ke saluran tertentu.

Examples

Shader "Examples/CommandExample"
{
    SubShader
    {
         // The rest of the code that defines the SubShader goes here.

        Pass
        {    
              // Enable writing only to the RGB channels for this Pass, which disables writing to the alpha channel
              ColorMask RGB

              // The rest of the code that defines the Pass goes here.
        }
    }
}

Kode contoh ini menunjukkan sintaks untuk menggunakan perintah ini dalam blok SubShader.

Shader "Examples/CommandExample"
{
    SubShader
    {
         // Enable writing only to the RGB channels for this SubShader, which disables writing to the alpha channel
         ColorMask RGB

         // The rest of the code that defines the SubShader goes here.        

        Pass
        {    
              // The rest of the code that defines the Pass goes here.
        }
    }
}
perintah ShaderLab: Login
perintah ShaderLab: Login