Yazılarımız

Veri Akademi

SUBSTANCE 3D PAİNTER İLE BAKE AYARLARINI DOĞRU KURMAK VE ARTEFACT AZALTMAK

Bir modelin kaplaması ne kadar iyi olursa olsun, bake aşamasında çıkan küçük hatalar tüm görünümü “ucuz” hissettirebilir. Dişli gibi sert kenarlarda kırık normal izleri, AO’da kirli lekeler, curvature’da anlamsız parlamalar… Çoğu zaman sorun, tek bir düğmeden değil; bake ayarlarının birbiriyle uyumsuz olmasından kaynaklanır.

Substance 3D Painter bake ayarları doğru kurulduğunda, normal map ve diğer haritalar daha temiz çıkar; boyama daha öngörülebilir olur, maske üretimi daha stabil çalışır ve düzeltme turu kısalır. Bu yazıda “neden böyle oluyor?”u kısa ve net şekilde açıklayıp, sahada işe yarayan ayar ve kontrol listeleriyle artefact azaltma yaklaşımını adım adım ele alacağız.

Hedef, her projede birebir aynı değerleri ezberlemek değil; model ölçeği, detay seviyesi ve üretim pipeline’ına göre hızlı karar verebileceğiniz bir bake mantığı kurmak. Böylece texture baking süreciniz tutarlı hale gelir ve tekrar tekrar aynı hatalara takılmazsınız.

Substance 3D Painter bake ayarları için sağlam temel kurmak

Ölçek, dönüşüm ve smoothing gruplarını netleştirmek

Bake sonuçlarının güvenilir olması için önce geometriyi “tutarlı” hale getirmek gerekir. Modelin ölçeği sahneyle uyumsuzsa ray mesafeleri anlamsızlaşır; freeze/transform uygulanmamışsa bazı eksenlerde beklenmedik kaymalar oluşabilir. Ayrıca smoothing (veya hard/soft edge) kararları, normal map’in yön bilgisini doğrudan etkiler. Sert kenar istiyorsanız, o kenarın UV split’iyle birlikte planlanması çoğu artefact’ı baştan engeller.

Özellikle sert yüzeylerde (hard-surface) sık görülen hata şudur: UV keskin bir yerde bölünmüştür ama mesh üzerinde o kenar hâlâ yumuşaktır (soft). Bu durumda normal map, iki farklı yön bilgisini tek yerde “barıştırmaya” çalışır ve kırık izler oluşur. Tersi durumda da (hard edge ama UV split yok) benzer şekilde dikiş hissi artar. Bu yüzden “kenar kararı + UV kararı” birlikte alınmalıdır.

Yüksek ve düşük poligon uyumunu kontrol etmek

High poly ile low poly arasında siluet ve detay hizası iyi değilse, en iyi anti-aliasing bile mucize yaratmaz. Bake için hazırlıkta, “detaylar low üzerinde nereye düşüyor?” sorusunu hızlıca yanıtlamak kritik. Bazı durumlarda high poly’nun çok “yakın” detayları (mikro bevel’lar gibi) low’da yeterli alan bulamaz; normal map, komşu yüzeylere taşar ve artefact üretir. Bu gibi durumlarda bevel genişliğini artırmak veya low poly topolojisini sade ama akıllı biçimde güncellemek daha doğru sonuç verir.

Ray distance ve cage mesh ayarlarını doğru konumlandırmak

Max frontal ve max rear distance mantığını kurmak

Ray distance, bake’in hangi mesafeye kadar “detay arayacağını” belirler. Çok düşükse detaylar kaçırılır; çok yüksekse istenmeyen yüzeylere “sıçrama” başlar. Burada en iyi yaklaşım, tek bir evrensel değer yerine model ölçeğine göre düşünmektir: Küçük bir prop için milimetre seviyesinde çalışan değerler, büyük bir environment parçasında yetersiz kalabilir.

Artefact azaltma açısından pratik kural şudur: Önce mesafeyi gereğinden az tutup eksik bölgeleri görün, sonra kontrollü biçimde artırın. Bu sayede “fazla arama” yüzünden oluşan kirlenmeyi erkenden yakalarsınız. Özellikle normal map ve ambient occlusion bake ederken max frontal değerinin aşırı yükselmesi, komşu parçaların birbirini etkilemesine neden olur.

Cage mesh kullanmak ne zaman şart hale gelmek

Kompleks parçalar, iç içe geçen yüzeyler veya sıkı toleranslı montajlarda cage mesh kullanmak büyük fark yaratır. Cage, ray’lerin hangi yönde ve hangi hacimde ilerleyeceğini daha “insan eliyle” tarif eder. Eğer bake sırasında belirli bölgelerde sürekli taşma oluyorsa, ray distance ile oynamak yerine cage hazırlamak daha deterministik bir çözümdür.

Cage mesh hazırlarken amaç, low poly’yu yüzey normalleri boyunca “şişirmek” ve high poly’ya çarpmadan mümkün olduğunca yakın taşımaktır. Çok şişirilmiş cage, yine yanlış yüzey yakalama riskini artırır. Çok az şişirilmiş cage ise eksik bake üretir.

{
  "bakePresetName": "HardSurface_CleanBake",
  "outputSize": 2048,
  "antiAliasing": "8x",
  "match": "byMeshName",
  "maxFrontalDistance": 0.02,
  "maxRearDistance": 0.01,
  "useCage": true,
  "cageFile": "low_cage.fbx",
  "dilationPadding": 16,
  "normalFormat": "OpenGL",
  "bitDepth": "16bit"
}

Yukarıdaki örnek, “başlangıç noktası” mantığıyla düşünülmelidir. Ölçeğe göre maxFrontal/maxRear değerleri değişebilir; ancak mesh name matching, yeterli padding ve uygun anti-aliasing birleşimi çoğu projede daha temiz başlangıç sağlar.

Mesh name matching ve parça izolasyonuyla taşmayı azaltmak

By mesh name yaklaşımını düzenli hale getirmek

Birden fazla parça aynı bake setinde birbirine yakın duruyorsa, ray’ler komşu yüzeyi yakalayabilir. Bu, özellikle vida/kapak gibi küçük parçaların gövdeden “iz” almasına yol açar. Substance 3D Painter’da “Match: By Mesh Name” kullanmak, bu tür taşmaları dramatik biçimde azaltır. Ancak bunun çalışması için isimlendirme standardının disiplinli olması gerekir.

Pratik bir yöntem: Low ve high çiftlerini aynı kök isimle eşleştirmek ve sonuna _low, _high eklemek. Örneğin handle_low ve handle_high gibi. Böylece her parça kendi eşini bake eder, komşular daha az etki eder.

Projede isimlendirme standardını paylaşmak

Ekip içinde bir kişinin “farklı” isimlendirmesi, bake hatalarını zincirleme doğurur. Bu yüzden standardı kısa bir dokümana bağlamak, üretim kalitesini yükseltir ve geri dönüşleri azaltır. Aynı yaklaşımı UDIM veya çoklu Texture Set yönetiminde de sürdürebilirsiniz.

// Naming convention checklist (example)
// 1) Use same base name for pairs
// 2) Suffixes are mandatory: _low and _high
// 3) If multiple parts: add numeric token before suffix
// Example:
body_01_low
body_01_high
bolt_03_low
bolt_03_high

Anti-aliasing, çözünürlük ve bit derinliğini dengelemek

Anti-aliasing seviyesini işe göre seçmek

Anti-aliasing (AA), özellikle kenar geçişlerinde “tırtıklanmayı” azaltır. Ancak AA yükseldikçe bake süresi uzar. Hızlı iterasyon için düşük AA ile test bake almak, finalde 4x–8x aralığına çıkmak mantıklıdır. Eğer normal map’te merdivenlenme görüyorsanız, çoğu zaman çözünürlük artışı kadar AA artışı da etkili olur.

16-bit çıktının avantajlarını doğru yerde kullanmak

Curvature ve height gibi haritalarda 16-bit çıktı, geçişleri daha pürüzsüz yapabilir; banding riskini düşürür. Özellikle procedural mask’lerde geçişlerin “kademeli” görünmesini istemiyorsanız 16-bit iyi bir tercihtir. Ancak her haritada 16-bit şart değildir; depolama ve işlem maliyetini de göz önünde bulundurun.

  • Normal map için: doğru format (OpenGL/DirectX) ve tutarlı tangent space seçmek
  • AO için: parça izolasyonu + dengeli ray distance ile kirlenmeyi azaltmak
  • Curvature için: temiz normal + yeterli AA ile maske stabilitesini artırmak
  • Padding için: mip seviyelerinde dikiş riskini düşürmek

Harita bazında kontrol listesiyle artefact avlamak

Normal map kaynaklı kırık izleri ayıklamak

Normal map sorunları genellikle üç yerden çıkar: hatalı smoothing/UV ilişkisi, yanlış ray distance/cage, veya yanlış normal formatı. İlk kontrol, dikişlerdeki yön değişiminin “mantıklı” olup olmadığıdır. Eğer aynı yüzeyde gereksiz sert kırılma görüyorsanız, UV split ve hard edge kararlarını yeniden gözden geçirin. Eğer komşu parçadan iz geliyorsa, mesh name matching ve parça izolasyonu ilk çözümdür.

Ambient occlusion kirlenmesini pratik şekilde yönetmek

AO haritası, parçalar birbirine çok yakınsa doğal olarak yoğunlaşır; fakat “olmaması gereken” yerlerde kararma varsa bu genellikle ray mesafesi ve eşleştirme hatasıdır. AO için daha kısa maxFrontal/maxRear değerleriyle başlamak, sonra gerektiğinde artırmak daha güvenli ilerler. Ayrıca AO’yu her zaman nihai gerçeklik olarak kabul etmeyin; bazı üretimlerde AO daha kontrollü, daha sanat yönetimli kullanılmak istenir.

Curvature ve thickness ile maske üretimini stabil tutmak

Curvature, edge wear gibi maskelerin kalbidir. Curvature bozuksa, akıllı maskeler beklenmedik yerlerde çalışır ve “kirli” sonuç üretir. Bu nedenle curvature bake etmeden önce normal map’in temiz olduğundan emin olmak gerekir. Thickness ise özellikle translucency/SSS gibi ihtiyaçlarda önem kazanır; yanlış thickness, malzeme algısını bozabilir. Bu iki haritayı değerlendirirken, tek tek solo izlemek ve problemli yüzeyleri hızlıca işaretlemek iyi bir alışkanlıktır.

Substance 3D Painter panelinde normal, AO ve curvature bake sonuçlarının karşılaştırmalı görünümü

Yukarıdaki karşılaştırma yaklaşımı, “hangi harita problemi doğuruyor?” sorusunu netleştirir. Tek tek bakmak yerine birlikte okumak, özellikle curvature kaynaklı maske sorunlarında zaman kazandırır.


Texture set, UDIM ve padding ile dikişleri azaltmak

Padding ve dilation değerini mip zinciriyle düşünmek

Padding (dilation), UV adalarının etrafına renk/harita bilgisini taşır. Yetersiz padding, özellikle oyun motorlarında mip seviyeleri devreye girdiğinde dikişleri belirginleştirir. Bu yüzden “bake düzgün ama motorda dikiş var” gibi durumlarda çözüm çoğu zaman padding’i artırmaktır. 8–16 aralığı birçok senaryoda iyi bir başlangıçtır; daha büyük atlaslarda daha da yükseltmek gerekebilir.

UDIM’li işlerde tutarlı set yönetimi kurmak

UDIM kullanıyorsanız, her tile’ın çözünürlüğü, padding yaklaşımı ve export ayarları tutarlı olmalıdır. Bazı tile’larda farklı bit derinliği veya farklı AA denemeleri, sonraki aşamalarda materyal tutarlılığını bozar. Ayrıca bake’te isim eşleştirme ve set ayrımı daha da önemli hale gelir; aksi halde tile’lar arası taşma ve karışma artar.

UDIM tile düzeninde parça isimleriyle eşleşen low ve high setlerinin düzenli yerleşimi

Hızlı kalite döngüsüyle doğru ayarı bulmak

Test bake, düzeltme ve final bake sırasını korumak

En hızlı ilerleme, “hemen final bake” değil, kontrollü bir kalite döngüsüdür: düşük AA + orta çözünürlükle test bake, sorunu izole etme, cage/ray/isimlendirme düzeltme ve en sonda final bake. Böylece her deneme hem daha hızlı olur hem de hangi değişikliğin neyi etkilediğini görürsünüz. Bu döngüyü alışkanlığa çevirmek, ekip içinde de daha öngörülebilir teslim üretir.

Takım içi standartla tekrarı azaltmak

Projeler ilerledikçe aynı sorunların tekrarlandığını görürsünüz: yanlış format, yetersiz padding, karışık isimler… Bunları “kişisel bilgi” olmaktan çıkarıp kısa bir standarda dökmek, onboarding süresini kısaltır ve kaliteyi yükseltir. Bu noktada doğru eğitim içeriği, ekibin ortak dil kurmasına yardımcı olur.

Cage ile ray mesafesi dengelenmiş bir parçanın temiz normal haritası ve kenar aşınma maskesi sonucu

Eğitim planı seçerken bake odaklı kazanımları netleştirmek

Üretim hatalarını azaltan pratik çıktılar hedeflemek

Bake odaklı bir öğrenme planı; sadece butonların yerini değil, “neden bu ayar?” mantığını oturtmalıdır. Normal map, AO, curvature ve padding gibi temel konular sistematik işlendiğinde, ekipteki herkes aynı kalite çıtasına yaklaşır. Bu da teslim sürelerini kısaltır ve revizyon sayısını düşürür.

Substance 3D Painter sürecinizi daha tutarlı hale getirmek ve ekip standardını hızla oturtmak için Substance 3D Painter eğitimi içeriğine göz atabilirsiniz. Odak, gerçek üretim senaryolarında temiz bake almak ve boyama sürecini daha öngörülebilir kılmaktır.

 ANİMASYON AKADEMİ