Kısaca
- World Partition, büyük seviyeleri tek bir kalıcı dosyada tutup çalışma alanını ızgara hücrelerine böler.
- Hücreler, çalışma anında streaming kaynaklarının konumuna ve ızgara ayarlarına göre yüklenip boşaltılır.
- HLOD, yüklenmemiş hücrelerdeki uzaktaki nesneleri proxy geometriyle temsil edebilir.
- HLOD üretiminden önce ilgili aktörlerin HLOD katmanına eklenmesi ve Mobility değerinin Static olması gerekir.
Unreal Engine’in resmi dokümantasyonu, World Partition’ı büyük seviyeleri tek bir kalıcı Level içinde hücrelere ayıran ve bu hücreleri çalışma anında yükleyip boşaltan bir sistem olarak açıklıyor. Bu rehber, sistemi mimari çevreler, geniş peyzajlar ve büyük ölçekli görselleştirme sahneleri için nasıl kurabileceğinizi ve HLOD ile uzak geometriyi nasıl ele alabileceğinizi anlatıyor. Dokümanlarda belirli bir Unreal Engine sürümü belirtilmediğinden, menü ve seçenek adları burada kaynakta geçtiği biçimde aktarılıyor.
1. World Partition projesi veya seviyesi oluşturun
Yeni bir proje başlatırken Games kategorisindeki bazı şablonlarda World Partition varsayılan olarak etkin geliyor. Ancak Blank, First Person, Third Person, Top Down ve Vehicle Advanced şablonlarında Enable Streaming seçeneği varsayılan olarak kapalı. Bu nedenle sahnenin yalnızca bölümlenmesi değil, hücre akışının da devreye girmesi gerekiyorsa World Settings içindeki Enable Streaming seçeneğini kontrol edin.
Büyük bir açık alanı başlangıç noktası olarak kurmak için File › New Level yolunu izleyip Open World harita türünü seçin ve Create düğmesine basın. Open World türünde World Partition, One File Per Actor, Data Layers ve Hierarchical Levels of Detail varsayılan olarak etkin. Dokümantasyondaki örnek harita, dış mekân aydınlatmasıyla birlikte 2 km x 2 km boyutunda bir Landscape içeriyor.
Mevcut bir seviyeyi dönüştürmek için Tools > Convert Level seçeneği kullanılabilir. Alternatif olarak, komut satırı aracını çalıştırmak mümkün. Resmî dokümandaki örnek komut şöyledir:
UnrealEditor.exe QAGame -run=WorldPartitionConvertCommandlet Playground.umap -AllowCommandletRenderingDönüşüm komutunda -ReportOnly, yapılacak işlemi raporlayıp dönüşümü gerçekleştirmemek için kullanılabiliyor. -ConversionSuffix ise test amacıyla dönüştürülen haritaya _WP ekleyerek kaynak seviyeyi korumaya yardımcı oluyor. Kaynak seviyeleri silen -DeleteSourceLevels seçeneğini kullanmadan önce, korunması gereken dosyalar ve ekip iş akışı değerlendirilmelidir.
2. Hücre akışını sahneye göre düzenleyin
World Partition, seviyeyi çalışma anında kullanılabilecek ızgara hücrelerine ayırıyor. Hücrelerin yüklenmesi ve boşaltılması, streaming kaynaklarının konumuna ve Runtime Grid ayarlarına bağlı. Player Controller varsayılan olarak bir streaming kaynağı olarak kullanılabiliyor; ayrıca World Partition Streaming Source bileşeni sahneye eklenebiliyor.
Örneğin, bir teleport konumunun çevresindeki hücrelerin oyuncu oraya ulaşmadan yüklenmesi için o noktada geçici bir streaming kaynağı etkinleştirilebilir. Bileşende Target Grid, Priority ve Target State gibi seçenekler bulunuyor. Target State, kesişen hücrelerin Loaded veya Activated durumuna geçmesini belirliyor. Blueprint’teki Is Streaming Completed işlevi, bileşenin kapsadığı hücrelerin akışının tamamlanıp tamamlanmadığını bildiriyor.
Runtime Grid ayarları World Settings panelindeki World Partition Setup bölümünde bulunuyor. Dokümantasyon bir 2D Runtime Hash ızgarasını varsayılan olarak veriyor ve birden fazla ızgara kullanımının performansı olumsuz etkileyebileceği uyarısını yapıyor. Aşağıdaki ölçüler dokümandaki örnek değerlerdir; her sahne için önerilen sabit değerler olarak değerlendirilmemelidir.
| Ayar | Dokümandaki örnek | Etkisi |
|---|---|---|
| Cell Size | 256 m x 256 m x 256 m | Hücrelerin boyutunu belirler. |
| Loading Range | 768 m yarıçap | Streaming kaynağının çevresinde hücrelerin hangi mesafede yükleneceğini belirler. |
3. Uzak çevre için HLOD katmanı oluşturun
Hücre akışı, o anda yüklenmeyen alanlardaki nesnelerin görünmemesine yol açabilir. World Partition HLOD sistemi, bu alanları proxy mesh’lerle temsil eder; dokümantasyona göre bu yaklaşım kare başına draw call sayısını azaltmaya ve performansı artırmaya yardımcı olabilir.
Yeni bir HLOD katmanı oluşturmak için Content Drawer içindeki + Add menüsünden Miscellaneous › HLOD Layer yolunu izleyin. Katman türünü sahnedeki içeriğe göre seçin:
Instancing, kaynak Static Mesh’leri düşük seviyeli LOD ayarlarıyla Instanced Static Mesh bileşenleri üzerinden temsil eder. Doküman, ağaç ve bitki gibi imposter kullanımlarını bu tür için uygun örnekler arasında sayıyor.
Merged Mesh, Static Mesh aktörlerini tek bir proxy mesh içinde birleştirir.
Simplified Mesh, aktörleri tek proxy mesh’e birleştirmenin yanında geometriyi sadeleştirir.
Merged Mesh ve Simplified Mesh için ayrı ayarlar açılıyor. Katman türüne bağlı olarak ışık haritası UV’leri, materyal sadeleştirme, mesh birleştirme ve proxy üretimi seçenekleri düzenlenebiliyor. HLODMaterial, birleştirilmiş veya sadeleştirilmiş katmanlarda materyal pişirme için temel materyali seçiyor; dokümantasyon, çoğu kullanımda varsayılan materyalin yeterli olduğunu belirtiyor.
4. HLOD üretimini çalıştırın ve sonucu kontrol edin
HLOD üretilebilmesi için aktörleri bir HLOD katmanına ekleyin, Mobility değerlerini Static olarak ayarlayın ve HLOD üretimini etkinleştirin. Katman ataması aktörün Details panelindeki HLOD özelliği, bir Data Layer’ın Default HLOD Layer özelliği veya World Settings üzerinden yapılabiliyor. Ardından Build > Build HLODs yolunu kullanabilir ya da WorldPartitionHLODsBuilder commandlet’ini çalıştırabilirsiniz.
Mimari görselleştirme iş akışına etkisi
World Partition, geniş bir yerleşke, kampüs veya çevre modelinde her şeyi aynı anda yüklemek yerine sahnenin gereken bölümlerini yönetmeye imkân verir. Ekip çalışmasında One File Per Actor ile aktörlerin ayrı dosyalarda saklanması, başkalarının aktörleri düzenlerken Level dosyasını teslim alma zorunluluğunu azaltabilir. HLOD ise uzaktaki peyzaj ve yapı parçalarının görünür kalmasına yardımcı olur.
Bununla birlikte, hücre boyutu ve yükleme aralığı proje ihtiyacına göre sınanmalı; dokümandaki örnek değerler doğrudan her sahneye uygulanmamalıdır. Simplified Mesh ayarlarında küçük örnekleme aralığıyla büyük geometri işlemenin bellek maliyeti yüksek olabilir. Uzakta gösterilecek birleştirilmiş mesh’lerde distance field’ları kapatmak bellek tasarrufu sağlayabilir. Dokümanlar lisans, fiyat veya belirli donanım gereksinimi belirtmiyor; uygulama öncesinde kullanılan Unreal Engine sürümü ve ekipteki proje ayarları ayrıca kontrol edilmeli.
Sık yapılan hatalar
Hücre akışının etkin olduğunu varsaymak: Bazı şablonlarda Enable Streaming kapalı geliyor; World Settings’ten doğrulayın.
Her aktöre aynı HLOD türünü vermek: Ağaçlar için instancing, birleştirilmiş yapılar için diğer katman türleri değerlendirilebilir.
HLOD üretmeden önce Mobility değerini Static yapmayı unutmak: Dokümantasyona göre bu, üretim için gereken koşullardan biridir.
Örnek ızgara ölçülerini kesin reçete kabul etmek: Hücre boyutu ve yükleme aralığı sahnenin kapsamına göre test edilmelidir.
Sık sorulan sorular
Unreal Engine World Partition ne işe yarar?
Büyük seviyeyi tek bir kalıcı Level içinde ızgara hücrelerine ayırır. Hücreleri streaming kaynaklarının konumuna göre çalışma anında yükleyip boşaltır.
Unreal Engine’de HLOD ne sağlar?
HLOD, yüklenmemiş World Partition hücrelerindeki uzak aktörleri proxy mesh’lerle temsil edebilir. Dokümantasyona göre draw call sayısını azaltmaya ve performansı artırmaya yardımcı olur.
HLOD üretmeden önce hangi koşullar gerekiyor?
Aktörlerin bir HLOD katmanına eklenmesi, Mobility değerlerinin Static yapılması ve HLOD üretiminin etkinleştirilmesi gerekiyor.
Kaynaklar
2 kaynakKaynak metinler yeniden yayımlanmaz; kısa alıntılar tırnak içinde verilir, geri kalanı özgün özet ve yorumdur.
Türkiye’de mimarlık ve görselleştirme ofisleri için World Partition’ın asıl karşılığı, büyük çevre sahnelerini tek seferde yükleme zorunluluğunu azaltması ve aynı Level üzerinde ekip çalışmasını kolaylaştırabilmesidir. Yerleşke, geniş peyzaj veya dış mekân sunumlarında hücre akışı ile HLOD birlikte değerlendirilebilir.
Ancak örnek hücre ve yükleme değerlerini projeye doğrudan taşımak doğru bir başlangıç olmayabilir; sahneye göre test etmek gerekir. Simplified Mesh’te küçük örnekleme aralığının bellek maliyeti göz önünde tutulmalı. Dokümantasyon lisans, fiyat ve donanım gereksinimi vermiyor; ofislerin kullandığı sürümle uyumluluğu ve mevcut donanımda performansı ayrıca doğrulaması önemli.




Yorumlar 0