ShaderLab
ShaderLab: mendefinisikan sifat material

ShaderLab: mendefinisikan objek Shader

Untuk mendefinisikan objek ShaderProgram yang berjalan di GPU. More info
Lihat di Glossary
pada ShaderLab, gunakan blok Shader. Halaman ini berisi informasi tentang menggunakan blok Shader.

Untuk informasi tentang bagaimana karya Shader objectContoh kelas Shader, objek Shader adalah wadah untuk program naungan dan instruksi GPU, dan informasi yang memberi tahu Unity bagaimana menggunakannya. Gunakan mereka dengan bahan untuk menentukan penampilan adegan Anda. More info
Lihat di Glossary
, dan hubungan antara benda-benda Shader, SubShaders dan Passes, lihat Perkenalan objek Shader.

Overview

Objek Shader adalah konsep khusus Unity; itu adalah pembungkus untuk program naungan dan informasi lainnya. Ini memungkinkan Anda mendefinisikan beberapa program naungan dalam file yang sama, dan memberitahukan Unity bagaimana menggunakannya.

Objek Shader memiliki struktur bersarang; mengatur informasi ke dalam struktur yang disebut SubShaders dan Passes.

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
ShaderLab: Shader block Yes Yes Yes Yes

Menggunakan blok Shader

Di dalam blok Shader, Anda dapat:

Signature Function
Shader "<name>"
{
<optional: Material properties>
<One or more SubShader definitions>
<optional: custom editor>
<optional: fallback>
}%
Tentukan objek Shader dengan nama tertentu.

Sitemap Nama naungan Legacy Legacy shader names

Sebelum Unity 5.0, beberapa fungsi naungan ditentukan oleh jalan dan namanya. Ini masih bagaimana kerja Home > Sitemap. Mengubah nama naungan ini dapat mempengaruhi fungsi mereka.

Examples

Kode contoh ini menunjukkan sintaks dasar dan struktur objek Shader. Contoh objek Shader memiliki SubShader tunggal yang mengandung satu umpan. Ini mendefinisikan sifat Material, CustomEditor, dan Fallback.

Shader "Examples/ShaderSyntax"
{
    CustomEditor = "ExampleCustomEditor"

    Properties
    {
        // Material property declarations go here
    }
    SubShader
    {
        // The code that defines the rest of the SubShader goes here

        Pass
        {
           // The code that defines the Pass goes here
        }
    }

    Fallback "ExampleFallbackShader"
}

Misalnya warna kustom yang kompatibel dengan pipa render yang berbeda, lihat Contoh warna kustom

ShaderLab
ShaderLab: mendefinisikan sifat material