Qısaca
- World Partition dünyanı bir daimi level daxilində hüceyrələrə bölür və hüceyrələri axın mənbələrinə uyğun yükləyib boşaldır.
- Level Instance bir neçə Actor-u təkrar istifadə edilə bilən level düzülüşündə birləşdirir; yadda saxlanılan dəyişikliklər digər nüsxələrə də tətbiq olunur.
- Sənədlərdə statik binalar və sıx vizual düzülüşlər üçün Packed Level Blueprint tövsiyə olunur.
- Level Streaming Mode əlavə iş yükü yarada bilər; bu rejimin intensiv istifadəsi performansa təsir edə bilər.
Bu bələdçidə Unreal Engine sənədlərində izah edilən World Partition və Level Instancing iş prosesləri böyük memarlıq səhnələri, landşaft düzülüşləri və təkrarlanan vizual komponentlər baxımından nəzərdən keçirilir. Mənbə sənədlərdə konkret Unreal Engine versiyası göstərilmir; buna görə menyu adları və davranışlar burada sənədlərdə təsvir olunduğu kimi verilir. World Partition böyük dünyanı əl ilə alt level-lərə bölmək ehtiyacını azaldır, Level Instancing isə seçilmiş Actor qruplarını təkrar istifadə edilə bilən düzülüşlərə çevirir.
1. Böyük dünyanı World Partition ilə hazırlayın
World Partition dünyanı bir daimi Level faylında saxlayır və sahəni iş zamanı yüklənə bilən grid hüceyrələrinə bölür. Hüceyrələr oyunçu kimi axın mənbələrinin mövqeyindən asılı olaraq yüklənir və ya boşaldılır. Beləliklə, iş zamanı bütün səhnə əvəzinə yalnız həmin anda görünən və ya qarşılıqlı əlaqədə olunan hissələr yüklənə bilər.
Yeni işə başlayarkən Open World xəritə növündə World Partition, One File Per Actor, Data Layers və Hierarchical Levels of Detail standart olaraq aktiv olur. Mənbə sənədlərə görə nümunə xəritədə 2 km x 2 km ərazi və açıq məkan üçün işıqlandırma quruluşu var. Bu hazır xəritə geniş mühit səhnəsi üçün başlanğıc nöqtəsi ola bilər.
File › New Levelyolunu açın.Open Worldxəritə növünü seçin.Xəritəni yaratmaq üçün
Createdüyməsinə klikləyin.
Mövcud Level üzərində işləyirsinizsə, Tools › Convert Level seçimi ilə onu çevirə bilərsiniz. Sənədlərdə WorldPartitionConvertCommandlet vasitəsilə çevirmə üsulu da izah olunur. Aşağıdakı əmr sənədlərdə verilən nümunədir; layihə və xəritə adları nümunə dəyərlərdir.
UnrealEditor.exe QAGame -run=WorldPartitionConvertCommandlet Playground.umap -AllowCommandletRenderingÇevirmə əmrində -ReportOnly heç bir əməliyyat aparmadan mümkün çevirmə barədə hesabat verir; -ConversionSuffix isə sınaq məqsədilə çevrilmiş xəritənin adına _WP sonluğunu əlavə edir. -DeleteSourceLevels mənbə level-ləri silə bildiyi üçün bu seçimin təsiri aydın olmadan istifadə edilməməlidir. Əmr sətri seçimlərini və çevirmə parametrlərini əvvəlcədən nəzərdən keçirmək əməliyyatın əhatə dairəsini anlamağa kömək edir.
2. Hüceyrə axınını və Actor davranışını tənzimləyin
World Partition istifadə edən səhnədə Actor-lar Details panelinin World Partition bölməsindəki Is Spatially Loaded parametrinə görə hüceyrələrlə əlaqələndirilir. Parametr aktivdirsə, Actor deaktiv Data Layer-ə təyin edilmədiyi halda axın mənbəyinin təsir dairəsinə daxil olduqda yüklənir. Parametr söndürülübsə, Actor deaktiv Data Layer-ə bağlı olmadığı təqdirdə yüklənir. Bu fərq uzaqdakı mühit elementlərinin səhnədə nə vaxt görünəcəyini planlaşdırarkən vacibdir.
Axın mənbələrinin mövqeyi və Runtime Grid parametrləri hüceyrələrin yüklənməsini müəyyən edir. Player Controller standart olaraq axın mənbəyidir; əlavə olaraq World Partition Streaming Source komponentindən də istifadə etmək olar. Məsələn, bu komponent oyunçunun teleport ediləcəyi mövqenin ətrafındakı hüceyrələrin əvvəlcədən yüklənməsini təmin edə bilər. Grid parametrləri World Settings daxilindəki World Partition Setup bölməsində yerləşir. Sənədlərdəki hüceyrə ölçüsü və yükləmə məsafəsi göstəriciləri ümumi tövsiyələr deyil, parametrlərin necə görünə biləcəyini göstərən nümunələrdir.
| Parametr | Sənədlərdəki nümunə dəyər | Təsiri |
|---|---|---|
| Cell Size | 256 m x 256 m x 256 m | Streaming level-ləri yaratmaq üçün istifadə edilən hüceyrə ölçüsünü müəyyən edir. |
| Loading Range | 768 m radius | Axın mənbəyindən hansı məsafəyədək hüceyrələrin yüklənəcəyini müəyyən edir. |
World Partition sənədlərində birdən çox runtime grid istifadə etməyin performansa mənfi təsir göstərə biləcəyi bildirilir. Buna görə grid sayını artırmazdan əvvəl səhnənin ehtiyacını və axın davranışını sınaqdan keçirmək lazımdır. Preview Grids seçimi grid xətlərini viewport-da göstərərək düzülüşü vizual yoxlamağa kömək edir.
3. Təkrarlanan səhnə düzülüşlərini Level Instance-ə çevirin
Level Instance bir qrup Actor-u alt level kimi birləşdirir və bu düzülüşün bir neçə nüsxəsini səhnəyə yerləşdirməyə imkan verir. Məsələn, təkrarlanan tikili qrupu və ya müəyyən maraq nöqtəsi bu üsulla vahid düzülüş kimi istifadə oluna bilər. Bir nüsxədə edilən dəyişikliklər yadda saxlandıqda digər nüsxələrə də tətbiq olunur.
Viewport-da və ya Outliner-də birlikdə istifadə olunacaq Actor-ları seçin.
Seçilmiş Actor-lardan birinə sağ klikləyib
Level › Create Level Instanceyolunu izləyin.Açılan pəncərədə pivot növünü müəyyən edin. Sənədlərdə
Center Min Z,CentervəPivot Actorseçimləri izah olunur.Parametrləri təsdiqləyib yeni Level Instance-ı yadda saxlayın.
Düzülüş üzərində işləmək üçün instance-ı seçib Level › Edit yolundan istifadə edin və ya Details panelindəki Edit düyməsinə klikləyin. Redaktə zamanı digər Actor-lar solğun görünür. İş bitdikdə Outliner-də Level Instance Actor-ını seçin və Details panelində Commit Changes vasitəsilə dəyişiklikləri yadda saxlayın. Yadda saxlamadan çıxmaq üçün Esc düyməsini iki dəfə basmaq olar. Dəyişikliklərin digər nüsxələrə də tətbiq olunması üçün redaktədən sonra yadda saxlama addımını tamamlayın.
Statik binalar və sıx vizual düzülüşlər üçün Packed Level Blueprint seçimindən istifadə etmək olar. Seçilmiş Actor-lara sağ klikləyib Level › Create Packed Level Actor yolunu izləyin. Sənədlərdə bu yanaşma statik mesh-lərin render üçün optimallaşdırılmış vahid Blueprint Actor-da birləşdirilməsi kimi izah olunur. Level Instance Actor qruplarını təkrarlana bilən level düzülüşü kimi idarə edir, Packed Level Blueprint isə statik mesh düzülüşlərini bir araya gətirir.
4. Memarlıq vizuallaşdırması iş prosesində seçim və tez-tez rast gəlinən səhvlər
Memarlıq vizuallaşdırma komandaları təkrarlanan tikinti elementlərini və ya mühit düzülüşlərini Level Instance kimi təşkil edərək eyni komponentdən bir neçə yerdə istifadə edə bilər. Bir nüsxədə edilən dəyişikliklərin digərlərinə də tətbiq olunması təkrarlanan düzülüşlərdə ardıcıllığı qorumağa kömək edir. Geniş mühit səhnələrində World Partition-ın hüceyrə axını hər şeyi eyni anda yükləmək əvəzinə lazım olan sahələri idarə etməyə imkan verir. Bununla belə, mənbələr konkret aparat tələbi, lisenziya şərti və ya performans zəmanəti göstərmir; layihə miqyasında sınaq aparmaq lazımdır. World Partition-ın əsas dünyasından kənarda Level Instance-lar avtomatik axın idarəetməsi və ya strategiyası təmin etmir.
İş zamanı davranışa da diqqət yetirilməlidir. Level Instance-lar və Packed Level Blueprint-lər World Partition Data Layers ilə işləyə bilər. Embedded Mode, One File Per Actor istifadə edən instance-ların Actor-larını iş zamanı World Partition grid-inə əlavə edir; sənədlərdə bu, standart və tövsiyə olunan kontent axını üsulu kimi göstərilir. Bunun əksinə olaraq, One File Per Actor istifadə etməyən bəzi Actor-lar iş zamanı yox ola bilər. Belə Actor-lara ehtiyac varsa, Level Streaming Mode nəzərdən keçirilməlidir; lakin bu rejim əlavə axın xərci yaradır və yüksək sıxlıqda istifadəsi performansa görə tövsiyə edilmir.
Tez-tez rast gəlinən səhvlər
Sənədlərdə verilən hüceyrə ölçüsü və yükləmə məsafəsi nümunələrini hər layihə üçün tövsiyə olunan sabit dəyərlər hesab etmək.
Level Instance dəyişikliklərinin digər nüsxələrə tətbiq olunması üçün redaktədən sonra
Commit Changesaddımını ötürmək.Level Instance-ı sökmə əməliyyatının geri qaytarıla biləcəyini düşünmək. Sənədlərə görə bu əməliyyat geri qaytarılmır; Actor-ı silərək ilkin asset-ləri səhnəyə yerləşdirir, lakin Content Browser-dəki mənbəni silmir.
Level Streaming Mode-u çox sayda istifadə etməyin əlavə performans xərcini nəzərə almamaq.
Mənbələr
2 mənbəMənbə mətnləri yenidən dərc edilmir; qısa sitatlar işarələnir, qalanı bizim xülasə və şərhimizdir.
Türkiyədəki memarlıq və vizuallaşdırma ofisləri üçün bu iki xüsusiyyət, xüsusilə geniş mühit səhnələri və təkrarlanan tikili qruplarında işi təşkil etməyi asanlaşdıra bilər. Level Instance dəyişikliklərinin nüsxələrə də tətbiq olunması eyni komponenti müxtəlif yerlərdə yeniləmək yükünü azaltmaq potensialına malikdir.
Bununla belə, sənədlərdə konkret aparat və ya lisenziya tələbləri göstərilmir, hüceyrə parametrləri üçün də layihənin miqyasından asılı olmayan ideal dəyərlər təqdim edilmir. Buna görə nümunə grid dəyərlərini birbaşa standart qəbul etməkdənsə, səhnənin axın davranışını sınaqdan keçirmək, Embedded və Level Streaming davranışlarını yoxlamaq lazımdır. Çevirmə və geri qaytarılması mümkün olmayan əməliyyatlardan əvvəl ehtiyat nüsxə yaratmaq da komanda iş prosesini daha təhlükəsiz edir.
Tez-tez verilən suallar
Unreal Engine World Partition nə işə yarayır?
Böyük dünyanı bir daimi Level daxilində grid hüceyrələrinə bölür. Hüceyrələri axın mənbələrinin mövqeyinə uyğun olaraq iş zamanı yükləyir və ya boşaldır.
Level Instance ilə Packed Level Blueprint arasındakı fərq nədir?
Level Instance Actor qruplarını təkrar istifadə edilə bilən alt level düzülüşü kimi birləşdirir. Packed Level Blueprint isə statik mesh düzülüşlərini vahid Blueprint Actor-da birləşdirir.
Level Instance dəyişiklikləri digər nüsxələrə də ötürülürmü?
Bəli. Dəyişikliklər yadda saxlandıqda digər nüsxələrə də tətbiq olunur. Redaktə tamamlandıqdan sonra Details panelindəki `Commit Changes` addımından istifadə edilməlidir.


