CodeBlanks Logo Icon CodeBlanks

Shader Graph

Shader Graph ile görsel olarak shader oluşturmayı öğrenirsin.

Shader Graph ile Görsel Geliştirme

Shader Graph, satırlarca kod yazmaya gerek kalmadan görsel düğümler (nodes) ve bağlantılarla shader oluşturmanı sağlayan Unity aracıdır. URP ve HDRP gibi Scriptable Render Pipeline altyapılarında standart olarak kullanılır.

// Shader Graph arka planda optimize HLSL kodu uretir
// Sanatcilar ve gelistiriciler icin hizli onizleme saglar

Düğümleri birbirine bağlayarak matematiksel işlemleri, doku harmanlamalarını ve ışık tepkilerini gerçek zamanlı önizleyebilirsin.

Düğümler ve Master Stack

Shader Graph grafiğindeki her işlem bir Node (düğüm) olarak temsil edilir (örneğin Multiply, Lerp, Sample Texture 2D). Bu düğümlerin ürettiği veriler nihayetinde Master Stack girişlerine bağlanır.

// Master Stack iki temel bloga ayrilir:
// 1. Vertex: Nesnenin konumu ve sekil degisimi
// 2. Fragment: Yuzeyin nihai piksel rengi

Blackboard paneli üzerinden dışarıdan değiştirilebilen parametreler (renk, float, doku) eklenerek materyalin Inspector'da ayarlanması sağlanır.

Uygulama Shader Graph çalışma biçimi

Bir Start metodu tanımla. İçinde konsola "Shader Graph gorsel dugumlerle calisir" metnini Debug.Log ile yazdır.

Başlangıç kodu

Player.cs
using UnityEngine;

public class GraphLogger : MonoBehaviour
{
    // Start metodunu tanimla ve Shader Graph bilgisini yazdir
}

Örnek çözüm

Player.cs
using UnityEngine;

public class GraphLogger : MonoBehaviour
{
    void Start()
    {
        Debug.Log("Shader Graph gorsel dugumlerle calisir");
    }
}

Beklenen çıktı

Shader Graph gorsel dugumlerle calisir

Soru ve cevaplar

Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.

1 Shader Graph kullanmanın geleneksel kod yazmaya göre en belirgin avantajı nedir?

  • Yalnızca 2D ses dosyalarını düzenlemeye izin vermesi
  • Oyunun disk boyutunu her zaman sıfıra indirmesi
  • GPU yerine sadece ana işlemciyi (CPU) kullanması
  • Görsel düğümler ve gerçek zamanlı önizleme ile kod yazmadan shader geliştirebilmek Doğru cevap

Açıklama: Shader Graph, görsel düğümler ve anlık önizleme sayesinde kod yazma gereksinimini ortadan kaldırır.

2 Materyale doku atama

Soru
material.Set____("_BaseMap", texture);
Cevap
material.SetTexture("_BaseMap", texture);

Açıklama: Bir materyale kod üzerinden doku atamak için SetTexture metodu çağrılır.

3 Shader Graph bileşenleri

Kavram Anlamı
Node Matematiksel veya dokusal işlem düğümü
Master Stack Nihai vertex ve fragment çıkış bloğu
Blackboard Dışarıya açılan parametrelerin listesi
Graph Inspector Seçili düğümün ayar paneli

İleri seviye bölümündeki tüm dersler