Kısaca
- SVT, ekranda gerekli olan doku parçalarını sabit boyutlu döşemeler hâlinde belleğe aktarır.
- SVT kullanılan materyallerde doku örneklerinin Virtual Sampler Type ile eşleşmesi gerekir.
- RVT, gölgelendirme verisini çalışma sırasında GPU ile üretir ve arazi malzemeleriyle birlikte kullanılabilir.
- Sanal dokuların bellek ve performans maliyetleri proje içindeki istatistik komutlarıyla ölçülebilir.
Bu rehberde neler öğreneceksiniz?
Unreal Engine’de sanal dokulandırmanın iki farklı yaklaşımı bulunuyor: Streaming Virtual Texturing (SVT) ve Runtime Virtual Texturing (RVT). SVT, diskten doku akışını görünür alanlardaki parçalara göre yönetirken RVT, sahne çalışırken GPU ile doku verisi oluşturuyor. Bu rehberde SVT dokularını ve materyallerini hazırlamayı, UDIM dokularını içe aktarmayı, RVT için gerekli sahne bileşenlerini kurmayı ve sonuçların maliyetini incelemeyi öğreneceksiniz.
Sanal dokulandırma, her projede kendiliğinden daha yüksek performans anlamına gelmez. Özellikle materyal örnekleme maliyeti, bellek kullanımı, görsel kalite ve kamera hareketindeki doku yüklenmesi birlikte değerlendirilmelidir.
Gereksinimler
Unreal Engine projesi ve düzenlenebilir doku, materyal veya arazi içeriği gerekir. Epic’in bu konudaki belgeleri belirli bir Unreal Engine sürümü, kullanıcı hesabı ya da donanım şartı belirtmiyor; dolayısıyla burada sürüm veya donanım için ek bir gereklilik varsayılmıyor. Sanal dokulandırmanın desteklenmediği platformlara yönelik materyal alternatifi oluşturmak, RVT tarafında belgelenen seçeneklerden biri.
SVT kullanırken doku varlığında Virtual Texture Streaming etkin olmalı ve materyaldeki Texture Sample düğümlerinin sanal dokuya uygun Virtual Sampler Type kullanması gerekir. RVT iş akışında ise bir Runtime Virtual Texture varlığı, sahnede ona atanmış bir Runtime Virtual Texture Volume ve doğru şekilde hazırlanmış materyaller gerekir.
1. SVT için dokuları ve materyalleri hazırlayın
Önce projede kullanılacak doku varlığını Content Browser’da seçin. Dokuya sağ tıklayıp Convert to Virtual Texture seçeneğini kullanın. Açılan Convert To penceresi seçili dokuları ve bunlara bağlı materyalleri gösterir. Ok ile devam edildiğinde doku için Virtual Texture Streaming etkinleştirilir; ilgili materyallerdeki Texture Sample düğümleri de sanal örnekleme türüne çevrilir.
Dönüştürme menüsünü kullanmadan elle ayar yapacaksanız, doku varlığını çift tıklayarak Texture Editor’ı açın. Details > Texture altında Virtual Texture Streaming seçeneğini etkinleştirin. Ancak elle dönüştürme, bu dokuyu kullanan materyalleri geçersiz hâle getirebilir. Bu materyalleri açıp Texture Sample düğümlerinin Sampler Type değerini uygun Virtual türüne getirin. Örneğin, sanal renk dokusu için Virtual Color gerekir; Color türü eşleşmez.
Materyaldeki örnekleme türü yanlışsa Unreal Engine, Stats panelinde ve ilgili düğümün altında hata gösterebilir. Bir sanal dokuyu doğrudan Material Graph’a eklemek, Virtual sampler türünün otomatik atanmasını sağlar. Material Instance parametreleri kullanılıyorsa temel materyaldeki sampler türünün de sanal dokuya uygun olması gerektiğini göz önünde bulundurun.
2. UDIM dokularını içe aktarın ve SVT’yi ölçün
UDIM görsellerini içe aktarmak için dosya adlarında ortak bir temel ad, dört haneli koordinat ve desteklenen görsel formatı kullanın. Belgede verilen adlandırma kalıbı şöyledir:
BaseName.####.[Support Image Format]Örneğin MyTexture.1001.png biçimindeki dosyalar, aynı temel ada sahip diğer koordinat numaralı görsellerle birlikte taranır. Unreal Engine, bu görselleri tek bir Virtual Texture Asset olarak içe aktarabilir. Farklı UDIM parçalarının çözünürlükleri farklı olabilir; küçük görsellerin büyük parçalarla aynı alanda örneklenmesi, kaynak dokuyu büyük çözünürlüklü bir görsele dönüştürmeden yapılabilir.
Performans ve bellek kullanımını varsayımla değerlendirmek yerine proje içinde ölçün. Konsolu açıp aşağıdaki komutları çalıştırın:
stat virtualtexturing
stat virtualtexturememoryİlk komut sanal dokulandırma sahne maliyetini milisaniye cinsinden ve sayfa tablolarına ilişkin sayaçlarla gösterir. İkinci komut, mevcut sahnedeki sanal doku bellek sayaçlarını görüntüler. SVT kullanan materyallerde döşeme sınırlarını görmek için r.VT.Borders 1 komutunu kullanabilir; görüntülemeyi kapatmak için r.VT.Borders 0 yazabilirsiniz.
3. RVT varlığını ve sahne hacmini kurun
Content Browser’da sağ tıklayarak veya Add New düğmesini kullanarak Materials & Textures > Runtime Virtual Texture yolundan bir RVT Asset oluşturun. Varlığı açıp boyut, döşeme boyutu ve desteklenecek materyal özelliklerini yapılandırın. Hangi özelliklerin saklanacağına göre materyal türü seçilir; seçenekler yalnızca Base Color’dan normal, pürüzlülük ve speküler bilgilerini de içeren türlere kadar uzanır.
Ardından sahneye bir Runtime Virtual Texture Volume ekleyin. Hacim RVT Asset’ini sahneye yerleştirir ve RVT’ye yazacak bileşenleri kapsamalıdır. Volume seçiliyken Details panelindeki Transform from Bounds bölümünde Source Actor alanını kullanarak araziyi veya uygun sahne aktörünü seçin; Set Bounds ile hacmin sınırlarını seçilen aktöre göre ayarlayın.
RVT’ye yazacak materyallerin RVT ile doğru şekilde hazırlanması gerekir. Materyal ifadelerinde Runtime Virtual Texture Output yazma, Runtime Virtual Texture Sample ise örnekleme için kullanılır. Sahne bileşenlerinin Details panelindeki Render to Virtual Textures alanına ilgili RVT Asset’i ekleyin. Bir bileşenin RVT’ye yazması için varlığın sahnedeki bir Volume’a atanmış olması ve materyallerin de doğru hazırlanmış olması gerekir.
4. Arazi ve mimari görselleştirme iş akışında kullanın
RVT; Landscape, Landscape Splines, statik mesh’ler ve instanced static mesh’ler gibi bileşenlerle kullanılmaya uygundur. Arazi üstünde decal benzeri materyallerin, splinelerin ve farklı yüzeylerin harmanlanması bu yaklaşımın öne çıkan kullanım alanlarıdır. RVT içeriği her karede tamamen güncellenmediğinden, animasyonlu veya hareketli bileşenler iyi adaylar değildir; statik bileşenler tercih edilmelidir.
Mimarlık, iç mimarlık ve archviz projelerinde bu ayrım, özellikle araziyle yapı çevresindeki yüzeylerin birlikte işlendiği sahnelerde önem taşır. Büyük çözünürlüklü dokuların ekrandaki görünür bölümlerini yönetmek için SVT değerlendirilebilir; arazi malzemelerini, splineleri ve sahne bileşenlerini birleştirmek için RVT incelenebilir. Ancak hangi yöntemin uygun olduğu, projenin materyallerine ve ölçülen maliyetlere bağlıdır. RVT örneklemesi geleneksel doku örneklemesinden pahalıdır; aynı UV ve sampler kaynağını kullanan örneklerin yığınları birleştirilebilir. Farklı UV kullanımı ise daha fazla sanal doku yığını ve örnekleme maliyeti doğurabilir.
Sık yapılan hatalar ve sonraki adımlar
Elle SVT dönüşümünden sonra bağlı materyalleri güncellememek, yanlış sampler türü nedeniyle hata alınmasına yol açabilir. Ayrıca yüksek detaylı veya gürültülü dokularda düşük çözünürlüklü mip seviyelerinin sınırlanması aliasing ya da Moiré etkisi oluşturabilir. SVT, ihtiyaç duyulan döşemeyi ancak işlenmiş bir kareden sonra yükleyebildiği için kamera hareket ederken yüksek çözünürlüklü parçaların ekrana sonradan gelmesi de mümkündür.
Sanal dokuları geleneksel dokularla aynı maliyet ve kalite özelliklerine sahip varsaymayın. Projede doku boyutlarının ikinin kuvveti olması gerekir; kenar döşeme ayarını artırmak bellek kullanımını yükseltebilir. TAA ile mip geçişleri çoğu durumda normal doku filtrelemesine yakın görünse de bazı koşullarda gürültü oluşabilir.
İlk kurulumdan sonra sahnenin sanal doku ve bellek sayaçlarını inceleyin; sınır görselleştirmesini açarak döşemeleri kontrol edin. RVT kullanılıyorsa hacmin sahne bileşenlerini kapsadığını, materyallerin doğru RVT Asset’i kullandığını ve hareketli bileşenlerin gereksiz yere RVT’ye yazılmadığını doğrulayın.
Kaynak ve lisans
Bu eğitim, Epic Games’in Unreal Engine sanal dokulandırma, Streaming Virtual Texturing ve Runtime Virtual Texturing belgelerinden Türkçeye uyarlanmıştır. Kaynaklar lisans=serbest olarak sağlanmıştır. Örnek adlandırma kalıbı ve komutlar belgelerdeki teknik kullanımları göstermek için aktarılmıştır.
Sık sorulan sorular
Unreal Engine’de Streaming Virtual Texturing nasıl etkinleştirilir?
Dokuya sağ tıklayıp Convert to Virtual Texture seçeneğini kullanın veya Texture Editor’da Virtual Texture Streaming’i etkinleştirin. Materyal Texture Sample düğümlerinin uygun Virtual Sampler Type kullandığını da kontrol edin.
Runtime Virtual Texture ne işe yarar?
RVT, texel verisini çalışma sırasında GPU ile üretip geniş alanlardaki gölgelendirme verisini önbelleğe alır. Landscape, araziye uyan spline’lar ve decal benzeri materyaller için kullanılabilir.
Unreal Engine’de sanal doku maliyeti nasıl ölçülür?
`stat virtualtexturing` sahne maliyetini ve sayfa tablolarına ilişkin sayaçları, `stat virtualtexturememory` ise sanal doku bellek sayaçlarını gösterir.
Kaynaklar
3 kaynakKaynak metinler yeniden yayımlanmaz; kısa alıntılar tırnak içinde verilir, geri kalanı özgün özet ve yorumdur.
Türkiye’deki mimarlık ve görselleştirme ekipleri için sanal dokulandırma, özellikle büyük dokuların ve arazi malzemelerinin yönetiminde değerlendirilmeye değer bir seçenek. Ancak SVT ya da RVT’yi yalnızca bellek tasarrufu beklentisiyle projeye eklemek doğru olmaz; materyal maliyetleri, olası görsel kusurlar ve kamera hareketindeki yüklenme davranışı sahnede ölçülmeli.
Ek bir lisans veya donanım şartı kaynaklarda belirtilmiyor; buna karşılık performans sonucu projeye bağlı. Bu nedenle ekipler, mevcut materyallerle küçük bir test sahnesi hazırlayıp ölçüm sonuçlarını görmeden üretim dosyalarını dönüştürmemeli. RVT’de statik bileşen ve doğru hacim sınırları özellikle kontrol edilmeli.




Yorumlar 0