PBR (Physically Based Rendering) nedir? Metallic/roughness iş akışındaki temel parametreler nelerdir?

Cevap

PBR, ışığın yüzeylerle etkileşimini fiziksel olarak makul modellerle hesaplayan render yaklaşımıdır. Amacı, materyallerin her ışık koşulunda tutarlı görünmesidir; sanatçı "bu sahnede iyi görünsün" diye değil, materyalin gerçek özelliklerine göre değer girer.

Temel ilkeler:

  • Enerji korunumu: Yüzey aldığından fazla ışık yansıtamaz; yansıma (specular) arttıkça yayılım (diffuse) azalır.
  • Microfacet teorisi: Yüzey mikroskobik düzeyde küçük aynalardan oluşur; roughness bu aynaların ne kadar dağınık olduğunu belirler.
  • Fresnel: Sığ açılardan bakıldığında tüm yüzeyler daha fazla yansıtır.
  • Yaygın BRDF: Cook-Torrance (GGX dağılımı + Smith geometri terimi + Schlick Fresnel).

Metallic/roughness texture setleri:

HaritaAnlamı
Base Color (Albedo)Yüzeyin rengi; içinde ışık veya gölge bilgisi olmamalı
Metallic0 dielektrik (plastik, ahşap), 1 metal; arası nadiren kullanılır
Roughness0 ayna gibi pürüzsüz, 1 tamamen mat
NormalYüzey detayı (mikro geometri)
Ambient OcclusionGirintilerde ortam ışığının azalması
EmissiveKendinden ışık

Metallerin diffuse bileşeni yoktur; renkleri specular yansımalarından gelir. Dielektriklerin specular yansıması renksiz ve yaklaşık %4'tür.

Pratik notlar:

  • PBR'nin doğru görünmesi için image-based lighting (reflection probe, sky/environment map) şarttır; aksi halde metaller siyah görünür.
  • Doğru renk uzayı: Base color sRGB, metallic/roughness/normal ise linear texture olarak import edilmelidir.
  • Unity bazen roughness yerine smoothness (1 - roughness) kullanır; Unreal ise roughness kullanır.
  • Mobilde PBR'nin sadeleştirilmiş versiyonları kullanılır (ör. URP Simple Lit veya bake edilmiş ışık).
  1. Forward ve deferred rendering arasındaki fark nedir? Hangisi ne zaman tercih edilir?ZorGrafik & RenderGame Dev
  2. LOD, frustum culling ve occlusion culling nedir?KolayGrafik & RenderGame Dev
  3. Draw call nedir? Batching teknikleri ile draw call sayısı nasıl azaltılır?OrtaGrafik & RenderGame Dev
  4. Rendering pipeline nasıl işler? Vertex shader ile fragment shader arasındaki fark nedir?OrtaGrafik & RenderGame Dev
  5. Texture sıkıştırma neden gereklidir? ASTC, BC ve ETC2 formatları arasındaki fark nedir?OrtaGrafik & RenderGame Dev
  6. Mipmap nedir? Ne gibi faydaları ve maliyetleri vardır?KolayGrafik & RenderGame Dev

Bu konuda başka bir soru biliyor musun?

Mülakatta karşılaştığın soruları ekle, onaylandıktan sonra yayına alınsın.

Soru ekle