Yazılarımız

Cadsay

3DS MAX'TE UV AÇMA VE TEKSTÜR OPTİMİZASYONU YAPMAK

3ds Max Unwrap UVW penceresinde açılmış sandalye modelinin UV adacıkları ve checker test deseni

İstanbul'da bir mimari görselleştirme stüdyosu sunum öncesi son render'ı aldı; salon kanepesinin kumaşı tek noktada gerilmiş, parke deseni kapıya yaklaştıkça uzamış görünüyor. Ne 8K dokuda ne de güçlü render motorunda sorun var. Kusur, kimsenin son ana kadar açmadığı UV penceresinde. UV açma adımı atlandığında çözüm dokuyu büyütmek değil; çoğu zaman 1K bir tekstür ile temiz açılmış UV, 4K ile baskı yapılmış kötü UV'den daha sağlam görünür.

Bu yazı 3ds Max'te UV açma ve tekstür optimizasyonunu somut iş akışları üzerinden ele alır. Türk oyun stüdyolarının asset üretim hattından, mimari ofislerin sunum disiplininden ve MEB animasyon müfredatında geçen temel kavramlardan örneklerle ilerler.

Unwrap UVW Modifier Nasıl Açılır?

3ds Max'te UV açmanın merkezinde Unwrap UVW modifier durur. Modifier paneline yerleştirildiği anda Edit UVWs penceresi devreye girer ve modelin her poligonu için bir 2 boyutlu karşılık tutulur. Bu pencerede çalışırken üç sub-object modu önemlidir: Vertex, Edge, Polygon. Açma işlemi çoğunlukla Edge modunda seam tanımıyla başlar, Polygon modunda projeksiyon ile devam eder.

Tipik bir karakter sandalye veya bir vitrin manken modelinde sıra şöyle ilerler:

  1. Editable Poly üzerine Unwrap UVW modifier eklenir
  2. Edge sub-object moduna geçilir, görünmeyecek kenar hatları seçilir (kanepe için arka dikiş, sandalye için arka bacak iç yüzü)
  3. Seçili kenarlar Convert Edge Selection to Seams ile seam'e dönüştürülür
  4. Polygon moduna geçilip tüm obje seçilir
  5. Peel grubundan Quick Peel veya Pelt > Edit Pelt Map çalıştırılır
  6. Edit UVWs penceresinde adacıklar Pack Custom ile yerleştirilir

Modifier stack sırası kritik. Unwrap UVW her zaman TurboSmooth'tan sonra konur; öncesine konursa subdivision geometriyi bölerken UV koordinatlarının davranışı şüpheli kalır. Profesyonel iş akışında TurboSmooth render zamanına bırakılır, UV açma orijinal düşük poligon kafes üzerinde yapılır.

Seam Nereye Konulmalı?

Seam, UV adacıklarını birbirinden ayıran sanal kesim hattıdır. Yanlış yere atılmış bir seam render'da gözle görülür bir doku kopması üretir. Bu sebeple seam yerleşimi sanatsal bir karar kadar teknik bir disiplindir.

Seam atarken üç temel kural çalışır:

  • Doğal kırılma hatları: Bir kanepenin arka dikişi, bir kupanın altı, bir sandalyenin bacak iç yüzeyi seam için ideal noktalardır
  • Görüş açısından uzak: Mimari görselleştirmede kamera açısı bellidir; bu açıdan görünmeyecek yüzeylere seam saklanır
  • Adacık dengesi: Çok az seam dev bir adacık üretir ve gerilme yaratır; çok seam ise küçük parçalar üretip texture alanını israf eder

Ankara merkezli bir mobilya görselleştirme stüdyosu deneyimi şudur: Müşteri sunumlarında müşteri her zaman ürünün arka açısını da görmek ister. Seam'leri sadece "kameranın görmediği" yere atmak gelecekteki revizyonda yarım iş bırakır. Sürdürülebilir disiplin, seam'i objenin yapısal sınırına (perde dikişi, koltuk kol birleşimi) atmaktır.

3ds Max Edit UVWs penceresinde Pelt mapping uygulanmış kanepe modelinin UV adacıklarının Türkçe etiketli numaralı görünümü

Pelt Mapping ve Quick Peel

3ds Max'te organik yüzeyler için iki temel açma yöntemi vardır. Pelt mapping, bir derinin gerdirilerek serilmesi mantığını taklit eder: kullanıcı seam noktalarını tanımlar, Pelt çerçevesi adacığı dışa doğru çeker. Yöntem yüz, karakter ve karmaşık kıvrımlı objelerde tercih edilir.

Quick Peel ise tek tıkla otomatik açar; içeride Pelt'in basitleştirilmiş bir varyasyonunu kullanır ama parametre arayüzü kapalıdır. Mobilya, mimari aksesuar, sade hacim objelerinde yeterlidir. İkisi arasındaki seçim hız-kontrol dengesidir:

YöntemKullanım AlanıKontrol SeviyesiHız
Planar MapDuvar, zemin, düz panelDüşükÇok hızlı
Box MapDolap, kutu, kübik geometriDüşük-OrtaHızlı
Quick PeelMobilya, dekor objeleriOrtaHızlı
Pelt MapKarakter, perde, organik formYüksekYavaş

Detaylı modifier ve materyal akışı için 3ds Max eğitimi programındaki UV ve render modülleri sıralı pratik üzerine kuruludur. Türk oyun stüdyolarının çoğu in-house onboarding sürecinde benzer sırayı korur: önce Planar/Box ile yüzde 70 oranda hızlı asset, sonra Pelt ile karakter ve özel obje atölyesi.

Checker Pattern ile Doğrulama Nasıl Yapılır?

UV açma tamamlandığında "bitti mi?" sorusu gözle değil, deseni ile cevaplanır. Checker pattern, Edit UVWs penceresinin Display panelinden veya viewport'taki nesne malzemesinden uygulanan kare ızgaralı bir test dokusudur. Doğru açılmış bir UV'de tüm kareler eşit boyutta, dikdörtgenleşmemiş ve döndürülmemiş görünür.

İzmir'de bir oyun stüdyosunun asset sorumlusu, junior modelcilerin çıktısını checker view'da kontrol eder. Üç sinyal hatayı anında ele verir:

  • Kareler uzamış: Adacık gerilmiş; relax veya pelt parametresi tekrar denenmeli
  • Karelerin boyutu farklı: Texel density tutarsız; küçük adacık scale ile büyük adacık ile aynı oranda büyütülmeli
  • Kareler eğri açıda: Adacık döndürülmüş yerleşmiş; Pack sırasında orientation parametresi gevşek kalmış

Bu üç sinyal disiplini hem oyun, hem mimari hem ürün görselleştirmede ortaktır. MEB onaylı animasyon ve oyun tasarımı müfredatında UV bölümünün ilk uygulaması doğrudan checker testi üzerinden ilerler — kavramın temel oluşu sektörel oydaşma sayılır.

Texel Density Neden Tutarlı Olmalı?

Texel density, birim sahne ölçüsü başına düşen tekstür piksel sayısıdır. Birimi tipik olarak piksel/metre (px/m) veya piksel/santimetredir. Bir sahnede farklı objelerin texel density'si farklıysa render aldığınızda bir yüzey net, yanındaki bulanık görünür. Bu izleyicinin gözünü hemen rahatsız eder.

Sektör pratiğinde tipik değerler şöyledir:

  • Geniş alan mimari iç mekan (otel lobisi, ofis): 256-512 px/m
  • Standart konut iç mekan: 512-1024 px/m
  • Mobilya ve ürün katalog görseli: 1024-2048 px/m
  • Yakın çekim hero obje (vitrin, ön plan): 2048-4096 px/m
  • Mobil oyun karakteri: 256-512 px/m (LOD seviyesine göre)
  • PC/konsol oyun hero karakter: 1024-2048 px/m

Aynı sahnede iki obje arasında 2x'in üzerinde texel density farkı varsa kullanıcı kalite tutarsızlığını "hangisinin neden daha bulanık olduğunu" sormaksızın hisseder. Texel Density Tool gibi ücretsiz scriptler bu hesabı otomatikleştirir; manuel hesap için checker pattern'in kare boyutu üzerinden de göz kararı denetim yapılabilir.

Tiling ve UV 0-1 Alanı

Bir parke zemin, duvar kağıdı veya beton yüzey her zaman unique UV ile açılmaz. Bu tür tekrarlı dokular tile texture mantığıyla çalışır: UV koordinatları 0-1 sınırının dışına çıkar (örneğin 0-10 aralığına yayılır) ve doku otomatik tekrarlanır.

İki yöntem birbiriyle karıştırılmamalıdır:

  1. Unique UV: Adacık 0-1 karesi içinde tutulur, doku objeye özeldir. Karakter, mobilya, hero obje için
  2. Tile UV: Adacık 0-1 dışına taşar, doku seamless olarak tekrarlanır. Zemin, duvar, geniş yüzey için

Bursa'da bir konut projesi görselleştirmesi düşünün: 200 m² salon için tek 4K parke dokusu yetmez. Doku tile edilir, UV koordinatları 0-20 aralığına çekilir; aynı 1K seamless parke dokusu yirmi kez tekrar ederek 200 m²'yi kaplar. Bellek kullanımı düşer, render hızı artar, tutarlılık korunur.

UDIM Ne Zaman Tercih Edilir?

UDIM (U-Dimension) tek bir objeyi birden fazla 0-1 tekstür karesi (tile) üzerine yayma yöntemidir. Karakter üretiminde özellikle film ve yüksek kaliteli animasyon işlerinde standart hâle gelmiştir. 3ds Max UDIM iş akışını Arnold render motoru ile native olarak destekler; V-Ray ve Corona da çeşitli adaptörler sunar.

Tipik bir UDIM kullanım örneği: Bir karakterin yüzü Tile 1001'e (yüksek detay, 4K), gövdesi 1002'ye (orta detay, 4K), ayak ve aksesuar 1003'e (düşük detay, 2K) yerleştirilir. Toplam tekstür alanı 8K-12K mertebesinde ama tek tek bakıldığında render motoru sadece görünür tile'ları yükler.

UDIM kararı şu kriterlere göre verilir:

  • Karakter sinema kalitesinde mi? UDIM mantıklı
  • Asset oyun motoruna gidecek mi? UDIM yerine texture atlas tercih edilir (oyun motorları UDIM'i sınırlı destekler)
  • Mimari görselleştirme statik render mi? UDIM çoğunlukla gereksiz; klasik texture set yeterli
  • VR/AR teslim mi? Atlas zorunlu, UDIM uyumsuz

Texture Atlas ve Sheet Packing

Texture atlas, çoklu objenin UV adacıklarını tek bir tekstür kare içinde toplama yöntemidir. Oyun, AR/VR ve gerçek zamanlı uygulamaların temel disiplinidir. Atlas iyi yapıldığında draw call sayısı düşer, GPU bellek kullanımı azalır, performans iki-üç katına çıkar.

3ds Max'in Pack Custom dialogunda atlas kalitesi üç parametreye bağlıdır:

  • Padding: Adacıklar arası boşluk. 2048 boyutunda 4-8 px, 4096'da 8-16 px önerilir. Az padding mipmap'te kenar sızması yapar
  • Rotation: Pack sırasında adacıkların döndürülüp döndürülmeyeceği. Açık bırakırsa daha sıkı paket; ama doku yönelimi önemliyse kapatılır
  • Normalize: Tüm adacıkları aynı texel density'ye getirir. Atlas için neredeyse her zaman açık olmalı

UVPackmaster veya UVReactor gibi üçüncü parti araçlar 3ds Max'in dahili packer'ından daha iyi sonuç verir — özellikle yüzlerce küçük adacık olan asset kümelerinde. Türk oyun stüdyolarının çoğunda asset ekibi standart bir packer plugin kullanır; el ile pack yerleşimi zaman kaybı sayılır.

Çoklu mobilya objelerinin texture atlas olarak tek 2K tekstür içinde paketlenmiş hali ve UV adacık dağılımı

Render Motoru Bağlamı

UV açma render motorundan bağımsız olsa da padding ve materyal davranışı motora göre değişir. Aynı UV setiyle alınan render Arnold'da temiz, V-Ray'de hafif sızıntılı görünebilir. Standart pratik şudur:

  • Arnold: aiStandardSurface shader, metalness workflow, sRGB doku default. Padding 4-8 px ideal
  • V-Ray: VRayMtl shader, IOR-based reflection, agresif image sampler. Padding 8-16 px güvenli
  • Corona Render: CoronaPhysicalMtl, Arnold'a yakın davranır. Padding 4-8 px yeterli
  • Unreal/Unity export: 4-8 px padding zorunlu; mipmap chain için 8 px önerilir

Çok motorlu üretim yapan stüdyolarda ortak standart genelde 8 px padding kabul edilir. Küçük bir UV alanı kaybı, motor değişiminde bir günlük revizyondan ucuzdur.

Sık Yapılan Beş Hata

UV açma sürecinde her seviyeden modelcinin tekrarladığı klasik tuzaklar vardır:

  1. Reset XForm atılmamış obje: Negatif scale veya bozulmuş transform UV'yi ters çevirir. Utilities panelinden Reset XForm uygulanmalı, sonra UV açılmalı
  2. Smoothing group ihmal edilmiş: Sert kırılma noktasında smoothing group ayrımı yoksa normal map çalışmaz; sert hat yumuşak görünür
  3. Checker test yapılmamış: "UV açıldı gibi görünüyor" hissi yanıltıcıdır; checker pattern her zaman doğrulama için açılmalı
  4. Tile UV scale ile büyütülmüş: Tekrar için UV koordinatı 0-N aralığına çekilmeli; obje scale modifier ile değil
  5. Hero obje atlas içinde sıkıştırılmış: Yakın çekim objesi diğer küçük asset'lerle aynı atlas içine konursa çözünürlük yetmez; hero unique UV ister

Otuz dakikalık ön kontrol disiplini iki günlük revizyonu engeller. UV ve texture optimizasyonu render sürecinin en görünmez ama en belirleyici aşamasıdır. Doğru açılmış UV'nin üzerine konan ortalama doku, dağınık UV'ye giydirilmiş premium dokudan her zaman daha tutarlı sonuç verir.

 CADSAY