AVolume sınıfından türetilir ve panelde LCC Load Volume olarak gösterilir.
Kırpma hacmi veya kesit düzlemi ile arasındaki temel fark, etki ettiği aşamadır: kırpma ve kesit alma yalnızca nihai görüntülemeyi değiştirir, veriler ise her zamanki gibi yüklenir ve video belleğine aktarılır. Yükleme hacmi düğüm gezintisi sırasında etki eder ve reddedilen düğümler hiç okunmaz. Bu nedenle yükleme miktarını ve video belleği kullanımını düşüren tek yöntem odur.
| Header | Tools/LCCLoadVolume.h |
| Temel Sınıf | AVolume |
| Blueprint | Blueprintable / BlueprintType |
| Lisans | Pro sürüm özelliğidir; lisans olmadan etkisi yoktur |
Bir yükleme hacmi, sahnedeki birden fazla LCC Actor'ı aynı anda etkileyebilir.
Özellikler
| Özellik | Tür | Açıklama |
|---|---|---|
bEnabled | bool | Etkin olup olmadığı |
Mode | ELoadRegion | Inside (yalnızca içindekini yükle) veya Outside (içindekini hariç tut) |
VolumeType | ELoadVolumeType | Box veya Sphere |
Değerler için ELoadRegion ve ELoadVolumeType bölümlerine bakın.
Üç özelliğin hiçbirinde setter yoktur; değerleri doğrudan atayın. Filtreleme yükleme sırasında yapılır, bu nedenle değişiklikten sonra verilerin yeniden yüklenmesi gerekir.
Sınır Hassasiyeti
Test splat başına değil düğüm başına çalışır; bu yüzden sınır, kırpma hacmine göre daha kabadır: kenardaki bir düğüm koşulu sağlamadığı anda tamamen dışarıda bırakılır.
İki mod farklı testler kullanır:
| Mod | Koşul | Sınır davranışı |
|---|---|---|
Inside | Bir düğüm yalnızca tamamen hacmin içinde kaldığında yüklenir | Korunan aralık hacimden biraz daha küçüktür |
Outside | Bir düğüm hacimle çakıştığı anda hariç tutulur | Hariç tutulan aralık hacimden biraz daha büyüktür |
Her iki taraf da LOD geçişlerini kararlı tutmak için bilinçli olarak temkinli bırakılmıştır. Bir oktree'de alt düğümün sınırları her zaman üst düğümün sınırları içinde yer alır ve kamera uzaklaştıkça LOD alt düğümden üst düğüme geçer. Inside bir kesişim testi kullansaydı, üst düğüm kısmen örtüştüğü için yüklenir ve alt düğümlerin zaten dışarıda bıraktığı bölgeleri geri getirirdi; görsel olarak uzaklaştırırken bir içerik bloğunun aniden belirmesi anlamına gelir. Outside ise bir kapsama testiyle simetrik bir sorun yaşardı.
Hassas bir sınır gerektiğinde, aynı dönüşüme sahip bir kırpma hacmi ekleyin: yükleme hacmi yükleme miktarını azaltır, kırpma hacmi ise kenarı düzeltir.
Çalışma Zamanında Oluşturma
ALCCLoadVolume* Volume = GetWorld()->SpawnActor<ALCCLoadVolume>(
ALCCLoadVolume::StaticClass(), Location, FRotator::ZeroRotator);
Volume->VolumeType = ELoadVolumeType::Box;
Volume->Mode = ELoadRegion::Inside;
Volume->bEnabled = true;
Volume->SetActorScale3D(FVector(20.0f, 20.0f, 10.0f));
Component->AddLoadVolume(Volume);
Component->Load(Path); // must be configured before loading
Sıra önemlidir: filtreleme yükleme sırasında yapılır; bu nedenle Load() sonrasında bir yükleme hacmi eklemek, kaldırmak veya bir özelliği değiştirmek zaten yüklenmiş verileri değiştirmez, yeniden yükleme gerekir.
// Reload after changing the filtered range
Volume->SetActorLocation(NewLocation);
Component->Refresh(); // internally UnLoad then Load
Refresh() tam bir yeniden yükleme kadar maliyetlidir, bkz. ALCCActorBase::Refresh.
Bunun ve Kırpma Hacminin Arasında Seçim Yapma
| İhtiyaç | Hangisi kullanılmalı |
|---|---|
| Büyük bir sahneden küçük bir parçayı ayırmak, video belleği ve yükleme süresinden tasarruf etmek | Yükleme hacmi |
| Delik açmak veya kabuk oluşturmak; sınırın hassas olması önemlidir | Kırpma hacmi |
| Hem video belleğinden tasarruf hem de hassas sınır | İkisini aynı dönüşümle üst üste kullanın |
| Etkiyi çalışma zamanında sık sık açıp kapatmak | Kırpma hacmi (bEnabled değerini değiştirmek bir sonraki karede uygulanır, yeniden yükleme gerekmez) |
Ayrıca Bakın
- ALCCClippingVolume: kırpma hacmi
- ALCCSectionPlane: kesit düzlemi
- AddLoadVolume: Component tarafındaki ekleme ve kaldırma yöntemleri
- Sahne Düzenleme - Yükleme Hacimleri: adımlar ve ekran görüntüleri
- Sürümler ve Lisanslama: lisans kapsamı
Bu bölüm XGRIDS'in resmî kullanım kılavuzundan Türkçeye çevrildi; ekran görüntüleri ve arayüz adları özgün haliyle İngilizcedir. İngilizce aslı (yeni sekmede açılır) · Güncelleme:

