Yazılarımız

Cadsay

TWINMOTION İLE SAHNE OPTİMİZASYONU VE PERFORMANS ARTIRMAK

Twinmotion sahnesinde optimize edilmiş vegetation scatter ve LOD yönetimiyle akıcı viewport görünümü

Sahne karmaşık değil — sadece bir konut sitesi: dört blok, çevre peyzajı, otopark. Yine de viewport 12 FPS'te takılıyor, kamerayı çevirdiğinde ekran donuyor. Aynı dosyayı bir hafta önce yan masadaki mimar 55 FPS ile gezdiriyordu. Donanım aynı, lisans aynı; fark sahnenin kurulma biçiminde.

Twinmotion'ın gerçek zamanlı motoru disiplinsiz sahneyi affetmez. Bir noktaya kadar GPU'yu sömürür, sonra duvara çarpar. Türkiye'deki mimari ofislerin çoğu deadline baskısı altında çalışırken bu duvara her hafta toslar — "Cumartesi sunum var, render sığmıyor" cümlesi tanıdık gelir. İyi haber: çoğu yavaşlama poligon yığınından değil, üç-dört yanlış alışkanlıktan kaynaklanır. Aşağıdaki adımlar viewport'u rahat 60 FPS'in üzerine çıkarır, path tracer çıktısını da makul süreye indirir. Motorun teknik altyapısını Epic Games'in resmi Twinmotion sayfasından da inceleyebilirsin.

FPS DÜŞTÜĞÜNDE İLK NEREYE BAKILMALI?

Sahne ağırlığı her zaman göze çarpmaz. Bir mobilya ailesi tek başına 1.2 milyon poligon taşıyabilir, sahnede 30 kopyası varsa hesap kendi başına biter. İlk teşhis aracı Statistics paneli. Window > Statistics ile aç; sahnedeki toplam üçgen sayısını, asset başına bellek tüketimini ve VRAM doluluk oranını gösterir.

Pratik eşikler şöyle hatırlanır:

  • Viewport üçgen sayısı 20-30 milyon → konforlu
  • 30-60 milyon → kabul edilebilir ama dikkat
  • 60 milyonun üzeri → ayar zamanı
  • VRAM doluluğu %85'i geçti → sahne çökecek, müdahale et

Türk ofislerinin yaygın senaryosu şu: 8 GB VRAM'li orta seviye bir kart, "yetiyor sandık" diye başlanmış sahne path tracer açıldığında driver hatası verir. Sahne işleyişini bu eşiklere göre kalibre etmek, donanım yükseltmekten çok daha hızlı çözüm sunar.

NANITE İLE LOD ARASINDAKİ FARK NEDİR?

İki teknoloji de poligonu kameradan uzaklığa göre azaltır ama farklı amaca hizmet eder. Karıştırınca yanlış kullanılır.

ÖzellikNaniteLOD
Hangi objeÇok yüksek poligonlu, çok sayıda instanceTek veya az sayıda yüksek poligon obje
Tipik kullanımPhotogrammetry tarama, Megascans rock kitÖzel modellenmiş mimari detay
Çalışma şekliDinamik üçgen yeniden üretimiÖnceden hazırlanmış 3-4 kademe
Performans riskiAz sayıda instance varsa yavaşlatabilirYanlış kademe seçimi pop-in yaratır

Pratik kural sade: bir öğeyi sahnede onlarca kez kullanıyorsan ve poligonu yüksekse Nanite aç. Tek bir özel mobilya parçası ise LOD yeterli. Her ikisini de objeye sağ tıkla Properties > Optimization sekmesinden açar veya kapatırsın. Twinmotion bir hata vermez ama yanlış seçim FPS'i sessizce düşürür.

INSTANCE KULLANIMI NEDEN SESSİZ KAZANÇTIR?

Twinmotion sahnesinde instance ve kopyala-yapıştır arasındaki bellek tüketim farkını gösteren diyagram

Sahnede 40 sandalye var. Ctrl+C / Ctrl+V ile çoğaltıldıysa Twinmotion her birini ayrı asset gibi muhafaza eder — bellek de poligon da 40 katına çıkar. Instance ile çoğaltıldığında ise tek bir orijinal kaynak referansla okunur; konum, rotasyon ve ölçek değişir, geometri tektir.

Doğru yöntem: orijinal objeyi seç, Alt tuşunu basılı tutarak sürükle. Twinmotion yeni öğeyi instance olarak oluşturur. Library'den eklenen mobilya zaten otomatik instance gelir; el ile import edilen FBX'ler için bu fark kritik. Eski Revit'ten gelen ailelerin Datasmith aktarımı çoğunlukla instance korur ama Revit'te family yerine in-place öğe varsa kopya olarak düşer.

Türk mimari ofislerinin sık yaptığı hata, Revit kütüphanesini görsel kalite için "patlatıp" mesh'e çevirmek. Görüntü değişmez ama Twinmotion için 50 örnek 50 ayrı objedir. Aktarım öncesi family yapısını bozmamak, sahneyi bedava optimize eder.

VEGETATION SCATTER YOĞUNLUĞU

Peyzaj sahnesini boğan tek sebep çoğunlukla bitki yoğunluğudur. Twinmotion'ın Vegetation Paint aracı kolayca yüz binlerce yaprak üretir; yapraklar gözle görülmese bile GPU her birini hesaplar.

Üç adımla kalibre edilir:

  1. Density slider'ı düşür — varsayılan değer çoğu sahne için fazla. Açık alan parkı için 30-40, sık orman için 60-70 yeterli.
  2. Kamera kadrajından uzak alanları Eraser ile sil. Görmediğin ağacı GPU çizmesin.
  3. Otomatik orman üretimi yerine üç kademeli dikim yap: yakın planda detaylı ağaç, orta planda standart, arka planda low-poly silüet.

İstanbul'da peyzaj ağırlıklı bir kampüs projesi yapan bir mimari ofis, sahnede 12 bin ağaç barındırıyordu. Yoğunluk 80'den 45'e indirildiğinde görsel fark gözle ayırt edilemedi ama FPS 18'den 51'e çıktı. Aritmetik basit: göz dolduran şey ağaç sayısı değil, doğru yerleştirilmiş ağaç.

GÖLGE, YANSIMA VE ANTİ-ALİASİNG MALİYETİ

Twinmotion render settings panelinde shadow quality ve reflection ayarlarının karşılaştırılması

Üç ayar GPU'nun büyük kısmını yer: gölge kalitesi, yansıma yöntemi, anti-aliasing modu. Sahnede her birinin doğru kademesi vardır.

Gölge: Settings > Quality > Shadows. Tasarım aşamasında Medium yeterli, viewport'u rahatlatır. Final görselde yalnızca kritik objelerde (cephe çıkmaları, balkon, kolon) High'a alınır. Tüm sahneye Ultra vermek sadece path tracer çıktısında anlamlıdır.

Yansıma: Cam ve parlak yüzeyde Twinmotion ekran-uzayı (screen space) yansıma kullanır. Plus reflection probe ile sahnede ekstra ışıklı yansıma noktası tanımlanır. Her probe pahalıdır; 5-6 adetle sınırla. Cam yoğun bir AVM iç mekanı için probe sayısı sahnede en çok 8 olmalı; üzerinde çıkış belirgin yavaşlatır.

Anti-aliasing: TAA (temporal) varsayılan ve dengeli sonuç verir. FXAA hızlı ama yumuşak görünür, çizgisel detayı bozar. MSAA en kaliteli ama maliyetli; path tracer çıktısında kullan, real-time viewport için TAA daha pratik.

LUMEN VE IŞIK SAYISI DİSİPLİNİ

Mimari sahnede her ampul ayrı bir spot light gibi modellenince viewport boğulur. Twinmotion'ın Lumen global illumination motoru, ortam ışığını fiziksel olarak hesaplar — bir restoran iç mekanında ortam aydınlığını Lumen taşır, üzerine sadece 4-5 aksan ışığı eklenir.

Pratik disiplin: bir iç mekanda 30 spot light varsa, muhtemelen 20'si gereksiz. Tek bir alan ışığı (area light) tavan armatürü gruplarını temsil edebilir; bireysel ampuller yerine. Path tracer çıktısında bu fark dakikalara yansır — 5 dakikalık bir kare, ışık sayısı düşürüldüğünde 2 dakikaya iner.

Yapay ışık seçiminde IES dosyası fizik olarak doğru sonuç verir ama her IES ışığı reflection ve shadow için ek hesap yükü taşır. Tüm sahnedeki ışıklarda değil, kameraya bakan kritik aydınlatmalarda kullan.

VIEWPORT KALİTESİ İLE EXPORT KALİTESİ AYNI MIDIR?

Yaygın yanlış: tasarım aşamasında viewport kalitesini Cinematic'e almak. Twinmotion'da Settings > Quality altında dört kademe bulunur: Low, Medium, High, Cinematic. Çalışma sırasında Medium tutmak FPS'i iki katına çıkarır; export anında otomatik olarak final kaliteye geçilir.

Viewport çözünürlüğü de azaltılabilir. View > Viewport Resolution ile yarım çözünürlük modu açılırsa GPU yükü %40-50 azalır. Sahneyi gezerken görsel netlik biraz düşer ama kompozisyon kararları için yeterli kalır. Export sırasında değer tam çözünürlüğe döner; nihai çıktıda fark olmaz.

Texture çözünürlüğü konusunda da disiplin gerekir. 8K dokular fotorealistik yakın çekim için anlamlı ama duvar kaplaması için 2K-4K yeterli. Sahnede 100 obje varsa ve hepsi 8K texture taşıyorsa VRAM yarım saatte dolar. Library'den gelen materyaller otomatik kalibrelidir; kendi yüklediğin texture'larda kontrol et.

PATH TRACER İÇİN SAHNE NASIL OPTİMİZE EDİLİR?

Path tracer modunda her kare gerçek ışık ışınlarını izler — gölge, yansıma ve dolaylı ışık fiziksel olarak hesaplanır. Sahne optimize değilse 1 dakikalık kare 15 dakikaya çıkabilir. Doğru kurulu sahne, aynı kareyi 3-4 dakikada bitirir.

Path tracer çıktısı için sample sayısı belirleyici. 256-512 bandı çoğu sahne için kabul edilebilir. Cam-metal yoğun iç mekanda 1024'e çıkmak yansıma gürültüsünü temizler; üstü genelde gereksizdir. Cinematic modda Lumen yerine path tracer kullanılır, ikisi aynı anda aktif edilmez.

Render kuyruğunu gece çalıştırmak Türk ofislerinin standart yaklaşımı — makineler boştayken 8-10 saatlik render kuyruğa alınır, sabah klasör dolu hazır olur. Bu disiplin için sahne stabilitesi şart; ortada bellek sızıntısı varsa makine sabaha kadar dayanmaz. Yazılımın temel akışını sistemli öğrenmek için Twinmotion eğitimi başlangıçtan ileri optimizasyona kadar pratik bir yol haritası sunar.

OPTİMİZASYON KONTROL LİSTESİ

Sahne açılışında ve önemli ekleme sonrasında bu kontrol döngüsü FPS düşüşünü erken yakalar:

KontrolEşik / HedefHızlı çözüm
Statistics paneli üçgen sayısı60 milyon altıYoğun obje LOD veya Nanite'a al
VRAM doluluk oranı%85 altıTexture 8K → 4K düşür
Sahnedeki ışık sayısı30 altıLumen + 4-5 aksan ışığa indir
Reflection probe sayısı8 altıCam yoğun mekanda dağılımı kontrol et
Vegetation density40-60 bandıEraser ile kadraj dışı sil
Viewport kalitesiÇalışırken MediumExport öncesi High'a al

Sahne optimize olduğunda Twinmotion'ın asıl gücü ortaya çıkar: müşteri masada otururken malzeme alternatifini, gün ışığı saatini, peyzaj yoğunluğunu canlı denersin. Karar render sonrası değil, müşteri ile aynı ekrana bakarken alınır. Bu döngü ne kadar akıcıysa, mimari ofisin proje üretim hızı o kadar artar — donanım değişmez, disiplin değişir.

 CADSAY