Son xəbərlər
SketchUp-da Tag və Scene istifadəsi: Modelin təşkili və təqdimatıUnreal Engine-də virtual teksturlaşdırma: RVT və SVT necə istifadə olunur?Blender Geometry Nodes ilə nöqtələrə obyekt yerləşdirmə bələdçisiBlender-da 3D Cursor və Color Balance ilə memarlıq səhnəsini tənzimləməkEssen Mərkəzi Kitabxanası köhnə mağazanı altı mərtəbəli ictimai məkana çevirdiBlender Freestyle ilə memarlıq xətt renderi: addım-addım təlimat3ds Max MAXScript-ə giriş: Avtomatlaşdırma üçün addım-addım öyrənmə bələdçisiNVIDIA App 11.0.9: DLSS 4.5 Şüa Yenidənqurması əlavə edildiHoudini Karma-da Geometry və Volume AOV-larının qurulmasıBlender Flamenco render fermasını necə qurmaq olar: Manager və Worker ayarları
TövsiyələrUnreal Engine

Unreal Engine-də virtual teksturlaşdırma: RVT və SVT necə istifadə olunur?

Unreal Engine böyük teksturaların yaddaş istifadəsini idarə etmək üçün Runtime Virtual Texturing (RVT) və Streaming Virtual Texturing (SVT) üsullarını təklif edir. Bələdçidə üsul seçimi, materialların çevrilməsi və performansın yoxlanılması nəzərdən keçirilir.

Qatlı landşaft teksturalarını və müasir pavilyonu əks etdirən memarlıq vizuallaşdırmasıSüni intellekt şəkli
Təmsili şəkil, süni intellektlə yaradılıb.Şəkil: 3dsınıfı / FCA AI

Qısaca

  1. RVT teksturaları iş zamanı GPU-da yaradır və prosedur və ya qatlı materiallarda istifadə oluna bilər.
  2. SVT diskdəki teksturaların ekranda görünən hissələrini tile-lar şəklində GPU yaddaşına yükləyir.
  3. SVT teksturalarından istifadə edən materiallarda Texture Sample düyünləri uyğun Virtual sampler növü ilə işləməlidir.
  4. Virtual teksturlaşdırmanın xərclərini `stat virtualtexturing` və `stat virtualtexturememory` əmrləri ilə yoxlamaq olar.

Epic Games-in Unreal Engine üzrə rəsmi sənədləri virtual teksturlaşdırmanı böyük teksturaları iş zamanı daha az və daha sabit yaddaş istifadəsi ilə emal etməyin bir yolu kimi izah edir. Sistem iki üsuldan ibarətdir: Runtime Virtual Texturing (RVT) və Streaming Virtual Texturing (SVT). Bu bələdçi memarlıq vizuallaşdırması və real vaxt səhnələrində bu iki üsulun istifadə sahələrini, SVT teksturalarının materiallara qoşulmasını və performansın necə yoxlanacağını izah edir. Mənbə sənədlərində məlumatların aid olduğu konkret Unreal Engine versiyası göstərilmir.

1. RVT, yoxsa SVT? İstifadə məqsədinə uyğun seçim

RVT-də tekstura məlumatı GPU tərəfindən iş zamanı yaradılır. Epic-in sənədlərində bu üsul prosedur teksturalar, qatlı materiallar və landşaftlarda mürəkkəb material istifadəsi üçün uyğun hesab olunur. Landscape Spline iş axınları, mesh-lər üçün decal istifadəsi, eləcə də landşaft və obyektlərin ümumi şəkildə bir-birinə qarışdırılması da RVT-nin faydalı ola biləcəyi nümunələrdəndir. Bu izah decal-lərin birbaşa landşaft və ya obyektlərlə qarışdırıldığı mənasına gəlmir.

SVT isə diskdə hazırlanmış teksturalardan istifadə edir. Sistem teksturanın mip səviyyələrini sabit ölçülü tile-lara bölür; GPU ekranda görünən piksellərin ehtiyac duyduğu hissələri müəyyən edir və həmin tile-lar GPU yaddaşındakı keşə yüklənir. Beləliklə, yüksək ayırdetməli teksturalarda görünməyən hissələrin də bütövlükdə yüklənməsi əvəzinə, yalnız lazım olan sahələr emal olunur. SVT işıq xəritələri və rəssam tərəfindən hazırlanmış böyük teksturalar kimi hazırlanması vaxt aparan məlumatlar üçün uyğundur.

ÜsulMəlumat axınıSənədlərdə göstərilən istifadə sahəsi
RVTTekstura məlumatı GPU-da iş zamanı yaradılır.Prosedur və ya qatlı materiallar, mürəkkəb landşaft materialları
SVTTekstura məlumatı diskdən yüklənir; lazım olan tile-lar yaddaşa alınır.İşıq xəritələri və böyük, detallı teksturalar

2. SVT teksturalarını və materialları çevirmək

SVT istifadə edərkən Texture Asset üzərində Virtual Texture Streaming aktiv olmalıdır. Həmçinin bu teksturanı nümunələyən materiallardakı Texture Sample düyünləri uyğun Virtual sampler növündən istifadə etməlidir. Content Browser-dəki çevirmə seçimi seçilmiş teksturalarla yanaşı, onlara istinad edən materialları da çevirmə siyahısına əlavə edə bilər.

  1. Content Browser-də SVT-yə çevriləcək Texture Asset-i seçin.

  2. Asset üzərində sağ klikləyib Convert to Virtual Texture seçimini açın.

  3. Çevirmə pəncərəsində siyahıya alınmış teksturaları və onlara istinad edən materialları yoxlayın.

  4. Çevirməni başlatmaq üçün Ok düyməsinə basın.

  5. Daha sonra əlaqəli materiallardakı Texture Sample düyünlərinin düzgün Virtual sampler növündən istifadə etdiyini yoxlayın.

Teksturanı əl ilə də çevirmək olar. Texture Asset-i açıb Details panelindəki Texture bölməsində Virtual Texture Streaming seçimini aktiv edin. Bu əməliyyatdan sonra həmin teksturadan istifadə edən mövcud materiallar etibarsız vəziyyətə düşə bilər. Əlaqəli materiallarda Texture Sample düyününü uyğun Virtual sampler növünə keçirmək lazımdır. Sənədlərdəki nümunədə virtual rəng teksturası üçün Virtual Color istifadə olunur; Color sampler növü düzgün uyğunluq deyil.

Virtual tekstura material qrafikinə əlavə ediləndə Unreal Engine uyğun Virtual sampler növünü avtomatik təyin edir. Lakin Material Instance-larda istifadə ediləcək Texture Sample Parameter yaradılırsa, əsas materialın sampler növü vacibdir: alt nümunələr əsas materialda müəyyən edilmiş növdən istifadə edir. Virtual növündə olmayan əsas material parametr yuvasına virtual tekstura təyin etmək mümkün deyil.

3. UDIM və virtual tekstura işıq xəritələri

Unreal Engine UDIM adlandırma qaydasına uyğun şəkilləri vahid Virtual Texture Asset kimi idxal edə bilir. Faylların eyni baza adına və dörd rəqəmli koordinat nömrəsinə malik olması lazımdır. Sənədlərdəki format belədir:

Prompt
BaseName.####.[Support Image Format]

Məsələn, MyTexture.1001.png faylı eyni baza adına malik, fərqli koordinat nömrəli şəkillərin də axtarılmasını təmin edir. UDIM şəkillərinin ölçüləri fərqli ola bilər. Mənbədəki nümunədə 2x2 düzülüşündə yerləşən iki ədəd 2048x2048 və iki ədəd 128x128 şəkil vahid virtual tekstura kimi nümunələnir. Mənbə izahına görə, kiçik şəkillərin bu düzülüşdə daha böyük sahəni tutması disk və ya iş zamanı yaddaş istifadəsini artırmır.

Virtual tekstura işıq xəritələrini aktivləşdirmək üçün Project Settings bölməsində Engine › Rendering yolunu açıb Enable virtual texture lightmaps seçimini istifadə edin. Epic bildirir ki, bu xüsusiyyət işıq xəritələrinin yaradılma keyfiyyətini və axın performansını yaxşılaşdıra bilər. Sənədlərdə r.IncludeNonVirtualTexturedLightmaps və r.VT.EnableLossyCompressLightmaps konsol dəyişənləri də izah olunur. İkinci dəyişən virtual tekstura işıq xəritələrində itkili sıxılmanı aktivləşdirir; bunun işıq xəritəsi teksturalarının keyfiyyətini azalda biləcəyi qeyd olunur.

4. Performansı ölçmək və tez-tez rast gəlinən səhvlər

Virtual tekstura nümunələnməsi ənənəvi tekstura nümunələnməsindən daha çox xərc tələb edir. Material qrafikindəki hər Virtual Texture nümunəsi bir lookup yaradır. Eyni UV-lərdən və Sampler Source-dan istifadə edən nümunələrin stack-ləri birləşdirilə bilər; eyni şərtləri paylaşan ən çoxu 8 nümunə bir stack-də birləşə bilər. UV-lər fərqlidirsə, stack-lər ayrı qala və əlavə tekstura müraciətləri yarana bilər.

Səhnədəki xərcləri yoxlamaq üçün konsolu açıb aşağıdakı əmri icra edin:

Prompt
stat virtualtexturing

Bu əmr virtual teksturlaşdırmanın səhnə üzrə milisaniyə ilə ölçülən xərcini və səhifə cədvəlləri ilə bağlı sayğacları göstərir. Yaddaş sayğacları üçün:

Prompt
stat virtualtexturememory

SVT istifadə edən materiallarda mip görünüş şəbəkəsini açmaq üçün:

Prompt
r.VT.Borders 1

Yoxlama başa çatdıqda şəbəkəni söndürün:

Prompt
r.VT.Borders 0

Tez-tez rast gəlinən səhvlər

  • Sampler növünü düzəltməmək: Əl ilə çevirmə materialları etibarsız edə bilər. Texture Sample düyünlərində uyğun Virtual növün seçildiyini yoxlayın.

  • Virtual teksturanı xərcsiz hesab etmək: Yaddaş üstünlüyü nümunələmə xərcini aradan qaldırmır. Səhnəni statistika əmrləri ilə ölçün.

  • Fərqli UV istifadəsini nəzərdən qaçırmaq: Fərqli UV-lərdən istifadə edən nümunələrin stack-ləri birləşməyə bilər; materialın xərci arta bilər.

  • Görüntü qüsurlarını nəzərə almamaq: Səs-küylü və ya həddindən artıq detallı teksturalarda aşağı ayırdetməli mip məhdudiyyəti aliasing və ya Moiré effektlərinə səbəb ola bilər. SVT-nin reaktiv yükləməsi kamera hərəkəti zamanı bəzi tile-ların gec gəlməsinə və görünən şəkildə peyda olmasına da səbəb ola bilər.

Memarlıq, interyer və archviz işlərində RVT prosedur landşaft, qatlı səthlər və obyekt-landşaft keçidləri üzərində işləyən komandaların nəzərdən keçirə biləcəyi seçimdir. SVT isə böyük teksturalar, UDIM dəstləri və ya işıq xəritələri olan səhnələrdə yaddaş istifadəsini idarə etməyə kömək edə bilər. İş axınına əlavə etməzdən əvvəl material uyğunluğunu, GPU xərcini və hərəkətli kamerada tile-ların yüklənməsini yoxlayın. Sənədlərdə versiya məlumatı göstərilmədiyi üçün nəticələri istifadə etdiyiniz Unreal Engine versiyasında ayrıca təsdiqləmək lazımdır.

Mənbələr

2 mənbə
D
dev.epicgames.comdev.epicgames.com/documentation/en-us/unreal-engine/virtual-texturing-in-unreal-engine
Xülasə
D
dev.epicgames.comdev.epicgames.com/documentation/en-us/unreal-engine/streaming-virtual-texturing-in-unreal-engine
Xülasə

Mənbə mətnləri yenidən dərc edilmir; qısa sitatlar işarələnir, qalanı bizim xülasə və şərhimizdir.

3dsınıfı rəyi
3dRedaktorun qiymətləndirməsi

Türkiyədəki memarlıq və vizuallaşdırma ofisləri üçün virtual teksturlaşdırma böyük tekstura dəstləri və landşaft ağırlıqlı səhnələrdə yaddaşın idarə olunmasına töhfə verə bilər. Lakin bu, hər layihədə avtomatik olaraq daha sürətli render əldə ediləcəyi demək deyil; virtual tekstura nümunələnməsinin əlavə xərci və fərqli UV istifadəsinin təsiri nəzərə alınmalıdır.

Ən təhlükəsiz yanaşma üsulu bütün layihəyə tətbiq etməzdən əvvəl onu nümunəvi səhnədə sınaqdan keçirməkdir. Çevirmədən sonra material uyğunluğu, GPU yaddaş sayğacları, incə detallardakı görüntü keyfiyyəti və kamera hərəkəti zamanı tile-ların yüklənməsi birlikdə yoxlanmalıdır. İstifadə olunan Unreal Engine versiyasında davranışı təsdiqləmək də komandaların yoxlama siyahısında olmalıdır.

Tez-tez verilən suallar

Unreal Engine-də RVT ilə SVT arasındakı fərq nədir?

RVT tekstura məlumatını GPU-da iş zamanı yaradır. SVT isə diskdəki teksturaların görünən hissələrini tile-lar şəklində yükləyir.

SVT teksturaları materiallarda necə istifadə olunur?

Teksturada Virtual Texture Streaming aktiv olmalı, materialdakı Texture Sample düyünləri isə uyğun Virtual sampler növündən istifadə etməlidir. Çevirmə menyusunda teksturalarla yanaşı, onlara istinad edən materiallar da siyahıya alınır.

Unreal Engine-də virtual tekstura performansı necə ölçülür?

`stat virtualtexturing` səhnə xərcini və səhifə cədvəlləri ilə bağlı sayğacları göstərir. `stat virtualtexturememory` isə səhnədəki virtual tekstura yaddaşı sayğaclarını göstərir.

Şərhlər və forum türkcədir.Müzakirəyə qoşulun
+

Əlaqəli xəbərlər