3DS MAX'TE MODIFIER STACK MANTIĞINI YÖNETMEK
İki kişi aynı silindire Bend ve Taper ekliyor; biri akıcı boynuz formu çıkarıyor, diğerinin sahnesinde mesh köşelerden patlıyor. Tek fark: hangisinin stack'in üstünde olduğu. 3ds Max'in en güçlü yanı modifier stack; ama mantığını oturtmadan kullanan herkes er ya da geç viewport'u kilitliyor ya da export aşamasında karşısında deforme bir model buluyor.
Stack aslında modeli üreten sıralı bir tarif. En altta base geometry, üstünde her modifier ayrı bir katman olarak duruyor. Sıra değişince sonuç da değişiyor. Bu mantık bir kez yerine oturduğunda 3ds Max'in geri kalanı — kamera, ışık, materyal, render motoru — kendi köşesine yerleşiyor.
Stack Aşağıdan Yukarı Okunur
Modify panelini açtığınızda en altta orijinal primitive ya da Editable Poly görünür. Üstünde uyguladığınız her modifier yeni bir satır olarak birikir. 3ds Max bu listeyi aşağıdan yukarı işler: önce base geometry üretir, sonra alttaki modifier'ı uygular, sonra bir üsttekini, böyle devam eder. Bend altta Taper üstteyse önce nesne bükülür, sonra bükülmüş hâli incelir. Tersinde önce konikleşir, sonra koni bükülür. Aynı parametre, başka çıktı.
Mavi kalın yazılı satır, viewport'ta hangi seviyeyi gördüğünüzü gösterir. Bir alt modifier'a tıklayıp gizmosunu seçtiğinizde sadece o katmanın etki noktasını oynatırsınız; üstteki modifier'lar etkiyi yeniden hesaplayarak son hâli üretir. Show End Result düğmesi (stack ikonları arasında ampul benzeri simge) açıkken alt seviyedeyken bile sonucu görürsünüz, kapatınca o anki ara hâli görüntülersiniz. Debug için temel kontroldür.
Sıra Neden Sonucu Belirler?
Stack sırası iç içe geçmiş fonksiyon zinciri gibi düşünülmeli: f(g(h(x))). Alt modifier'ın çıktısı üsttekinin girdisi olur. Aynı iki modifier yer değiştirdiğinde sonuç değişir; bu Autodesk'in tasarım kararıdır, bug değil. İki kısa senaryoyla netleşir:
- Senaryo A: Cylinder → Bend (90°) → Taper (-0.5). Önce silindir bükülür, sonra bükük hâli incelir. Sonuç: kavisli, sivri uçlu boynuz formu.
- Senaryo B: Cylinder → Taper (-0.5) → Bend (90°). Önce silindir konikleşir, sonra koni bükülür. Sonuç: kavisli ama düzgün konik form, farklı bir geometri.
Bir mimari kemer modellerken sıralama yanlış kurulursa duvar istemsiz inceliyor; karakter modelleme aşamasında kullanılan Symmetry-Bend ikilisinde sıra terslenirse simetri hiç yakalanmıyor. Yazılımın gizmo davranışı ve resmi terminolojisi için ihtiyaç anında Autodesk ürün dokümanlarını referans almak vakit kazandırır.
Edit Poly ile Editable Poly Arasında Fark Nedir?
Yeni başlayanların kafasını en çok karıştıran konu burası. Editable Poly bir nesne türüdür; sahnede silindire sağ tıklayıp Convert To → Editable Poly dediğinizde primitive parametre setini kaybedersiniz ve nesnenin kendisi düzenlenebilir poligona dönüşür. Edit Poly ise modifier'dır; alttaki nesneyi değiştirmeden stack'in herhangi bir katmanına eklenir.
İkisinin pratik farkları:
- Editable Poly: Stack'in tabanı olur; orijinal parametre geri çağrılamaz. Performans yönünden hafiftir, çünkü ekstra modifier hesaplaması yoktur.
- Edit Poly modifier: Stack'te yukarı-aşağı taşınabilir, kapatılabilir, silinebilir. Aynı nesneye birden çok eklenebilir; ara aşamada vertex ekleyip sonra kaldırma esnekliği verir.
- Subdivision rollout: Editable Poly'de Subdivision Surface ve Subdivision Displacement rollout'ları vardır; Edit Poly modifier'da yoktur.
- Use Stack Selection / Get Stack Selection: Edit Poly modifier alttaki seviyeden gelen seçimi devralabilir; bu özellik proceduralizm için değerli.
Pratik kural: Final modelin baz hâli netse Editable Poly'ye çevirin, üstüne modifier yığın. Ara aşamada poly düzenlemesi şart oluyorsa ve geri dönmek istiyorsanız Edit Poly modifier ekleyin. Bir mobilya tasarımcısının çekmece kolunu modellerken iki kez vertex eklemesi gerekirse, ikisini de Edit Poly olarak ayrı katmanda tutması revizyonu çok kolaylaştırır.
Collapse Ne Zaman Yapılmalı?
Stack birikti, viewport ağırlaştı, dosya boyutu şişti. Bu noktada akla collapse gelir. Sağ tık → Collapse All seçeneği tüm stack'i tek bir Editable Mesh'e indirir; Collapse To ise tıkladığınız seviyenin altını birleştirir, üstünü bırakır. İkisi de kalıcı işlemdir; sahne kapatıldıktan sonra geri dönüş yoktur.
Performans tarafı önemli bir motivasyon: karmaşık bir modifier zinciri her güncellemede yeniden hesaplanır. Yüksek poligonlu sahnelerde 30+ modifier üst üste binince viewport FPS düşer, dosya açılması uzar. Diğer motivasyon dış uyumluluk — bazı game engine export'ları veya FBX köprüsü saf editable mesh bekler. Collapse yapmadan önce takip edilmesi gereken birkaç pratik refleks:
- Yedek al: File → Save Selected ile nesneyi ayrı bir max dosyasına kaydet, parametrik hâli kaybolmasın.
- Shift+drag kopya: Nesneyi Copy modunda yan tarafa çoğalt, birinde collapse uygula, diğerini referans olarak sakla.
- Tamamlanmış katmanı collapse et: 5 katmanlık bir zincirde alttaki 2 katman kararlıysa Collapse To ile sadece o ikisini birleştir, üst tarafı esnek bırak.
- Instance'lı nesnelerde dikkat: Instance kopyaları olan nesnenin stack'ini collapse ederken Collapse To kullan; çoklu instance'ı birlikte collapse etmek tahmin edilmesi zor sonuçlar üretir.
Collapse'i erken yapmak modellemenin tartışmasız bir numaralı pişmanlık kaynağıdır. Üç ay sonra müşteri "duvarı 30 cm geri çek" diyor; collapse edilmiş duvarda artık parametre yok, manuel vertex işiyle uğraşıyorsunuz.
Instance ve Reference Davranışı
Bir nesneyi Shift+drag ile çoğaltırken kopya tipi sorulur: Copy, Instance, Reference. Stack açısından üçü farklı dünya kuruyor.
- Copy: Tam bağımsız. Stack ayrıdır; birinde modifier eklemek diğerini etkilemez.
- Instance: Stack tam paylaşımlı, çift yönlü. Bir kopyaya Bend eklerseniz diğerleri de bükülür. Aynı duvar parmak izinin sahnede 20 yerde tekrar ettiği bir konut iç mekanında bellek tasarrufu büyüktür.
- Reference: Tek yönlü bağ. Orijinale eklenen modifier kopyaya yansır; kopyaya eklenen modifier orijinali etkilemez. Mimari kolon dizilerinde çok kullanılır.
Instance'larda modifier eklerken yapılan klasik hata, sahnedeki tek bir kopyaya özel bir efekt vermek isteyip diğerlerini de istemeden değiştirmektir. Make Unique (modify panelinin altındaki kırık zincir ikonu) bağı koparır; o nesne artık bağımsızdır. Instance ekosistemini bilinçli kuran bir mimari görselleştirme stüdyosu, koltuk takımı, kapı koluna kadar her tekrar eden objeyi instance olarak yerleştirip RAM'i %40-50 kazanabilir.
Stack'i Türk Üretim Bağlamında Düşünmek
3ds Max Türkiye'de iki büyük damarda yoğun kullanılıyor: mimari görselleştirme stüdyoları ve oyun-animasyon stüdyoları. İki kullanım da stack disiplinini farklı zorluyor.
Mimari görselleştirme tarafında — İstanbul, Ankara, İzmir'deki konut ve ofis görseli yapan stüdyolarda — tipik bir iç mekan dosyasında binlerce ufak obje var. Mobilya CAD'den geliyor, yüksek poligonlu, üzerine Edit Poly + TurboSmooth + UVW Map dizilimi. Bir konut projesinin satış görselleri kabul edildikten sonra müşteri "salonu 1.5 m büyütelim" diyor; collapse edilmemiş stack sayesinde duvar nesnesinin alt parametresine girip yeni ölçüyü vermek 5 dakika sürüyor, collapse edilmiş dosyada aynı revizyon yarım gün alıyor. Sektörün en yaygın talep tipi olan "küçük değişiklik" senaryosu, stack hijyenini doğrudan ücretlendirmeye bağlar.
Oyun ve animasyon stüdyolarında işin doğası farklı. İstanbul ve Ankara merkezli birkaç mobil oyun stüdyosu karakter ve prop pipeline'ında 3ds Max'i hâlâ aktif kullanıyor; burada stack düşünce bir ara basamak — final mesh game engine'e gidecek, bu yüzden collapse zaten yapılacak. Ama yapılma zamanı kritik: high-poly bake'den önce stack'in açık tutulması, Symmetry ile çalışmayı, ZBrush'tan dönen mesh'i UV'lemeyi kolaylaştırır. Stüdyoda çalışan junior modelci ile senior'u ayıran şey çoğunlukla "collapse'i ne zaman vurman gerektiğini bilmek".
Eğitim tarafında da iz var. MEB animasyon ve dijital içerik üretimi müfredatında 3ds Max bir branş modülü olarak duruyor; meslek liseleri bilgisayar destekli modelleme dersinde stack mantığını ilk haftalarda öğretiyor. Üniversite tarafında güzel sanatlar fakültelerinin animasyon ve oyun tasarımı bölümlerinde 3ds Max kuru bir araç değil, sahne disiplinini öğreten araç olarak konumlanmış. Modifier stack mantığını uçtan uca pekiştirmek isteyen biri için bir 3ds Max eğitimi sıralı bir müfredat sunar; alternatif bir 3D paket disiplini için Cinema 4D eğitimi referans alınabilir.
Viewport Performansı Nasıl Korunur?
Stack uzadıkça viewport yavaşlar. Bu kaçınılmaz değil; birkaç refleks performansı koruyor:
- TurboSmooth Iterations ayrımı: Viewport için 1, Render Iters seçeneğini açıp render için 2-3 verin. Düzenlerken FPS düşmez, render'da detay korunur.
- Modifier ampul kapama: Stack'te her satırın solundaki ikona tıklayarak modifier'ı geçici devre dışı bırakabilirsiniz. Viewport'tan, render'dan veya her ikisinden ayrı ayrı kapatma seçeneği var. Düzenleme bittikten sonra tek tıkla geri açılır.
- Show End Result kontrolü: Alt seviyede çalışırken üst modifier'ları gizlemek, yoğun zincirlerde belirgin hız kazandırır.
- Bölümsel collapse: Kalıcı tamamlanan alt katmanları Collapse To ile birleştirmek toplam hesap yükünü düşürür.
- Reference ile poly-mod akışı: Yüksek poly modellerde Reference kopya alıp orijinali low-poly olarak tutmak çok poligonlu sahnede esneklik verir.
Ölçü olarak: 8000-10000 obje içeren bir kentsel görselleştirme sahnesinde her objede 5 modifier varsa toplam 40-50 bin modifier hesabı var demektir. Stack temizliği olmadan viewport rotasyonu saniyede 5 kareye düşer; disiplinli bir stack düzeninde aynı sahne 30 FPS üstünde çalışabilir.
Sık Yapılan Hatalar
Modifier stack ile çalışırken viewport'ta kafa karıştıran sorunlar belli birkaç gruba düşer; önceden bilmek aylar kazandırır:
- Collapse'i erken yapmak: Daha revizyon gelmeden tüm zinciri Editable Mesh'e indirmek, sonradan istemli parametre değişikliklerini öldürür.
- Show End Result kapalı unutmak: Stack'in ortasındaki bir modifier'ı seçince son hâli göremezsiniz; "sahne bozuldu" sandığınız şey aslında üst modifier'larla düzelen ara hâldir.
- Instance kopyada özel modifier eklemek: Bir nesneye eklenen modifier instance bağlı diğerlerini de etkiler. Tek nesneyi değiştirmek için Make Unique zorunlu.
- UV katmanını yanlış yere koymak: UVW Map veya Unwrap UVW deformasyon modifier'larından sonra, ama Shell/Edit Poly topology değiştiren modifier'larından önce gelmeli.
- Stack'i adlandırmamak: "Bend", "Bend 1", "Bend 2" diye birikmiş 12 katman yarın dosyayı açtığınızda yabancı. Sağ tık → Rename ile "Bend_Kemer_90", "Taper_Daralma_üst" gibi anlamlı isim disiplini.
- Modifier limit körlüğü: 30+ modifier üst üste binince yalnız viewport değil render süresi de katlanır; bölümsel collapse ile temizlik şart.
Disiplinli bir modifier stack düzeni, üç ay sonra dosyayı açtığınızda kendinize teşekkür ettirir. Stack mantığını oturtmuş bir modelci, aynı disiplini Revit'te family parametrelerine, SolidWorks'te feature tree'ye, Blender'a geçtiğinde modifier paneline aynı refleksle taşır. Çoğu zaman öğrenilen şey 3ds Max değil, parametrik düşünmenin kendisidir.



