Unitate - închiderea ocluziei ferestrei de ghidare

Ocluzia Culling este o funcție care oprește redarea obiectelor pe care camera nu le vede în prezent (acestea sunt închise de alte obiecte). În grafica 3D a computerului, acest lucru nu se întâmplă automat. Cel mai adesea, obiectele trase mai departe de aparatul de fotografiat sunt desenate mai întâi și obiectele apropiate de cameră sunt desenate deasupra lor (acest lucru se numește "overdraw"). Închiderea ocluziilor diferă de Frustum Culling. Frustum Culling dezactivează numai redarea obiectelor care nu intră în zona de vedere a camerei, fără a atinge supraîncărcarea obiectelor ascunse. Rețineți că folosirea Frustum Culling este utilă chiar și atunci când utilizați ocluzia.

Unitate - închiderea ocluziei ferestrei de ghidare
Un nivel de labirint ca în interior. Această vizualizare normală a scenei arată toate obiectele vizibile de joc.
Unitate - închiderea ocluziei ferestrei de ghidare
Închiderea regulată a frustrului face ca obiectele să se afle numai în vizorul camerei. Acest lucru este automat și se întâmplă întotdeauna.
Unitate - închiderea ocluziei ferestrei de ghidare
Închiderea ocluziei elimină alte obiecte din interiorul lucrărilor de redare a camerei, dacă sunt complet ascunse de obiecte mai apropiate.

Închiderea ocluziei, folosind o cameră virtuală, trece prin scenă pentru a construi o ierarhie a seturilor de obiecte potențial vizibile. Aceste date sunt folosite în timpul execuției de către fiecare cameră pentru a determina ce vede și ce nu. Pe baza informațiilor primite, Unity oferă redarea numai a obiectelor vizibile. Acest lucru reduce numărul de apeluri de remiză și crește performanța jocului.

Datele pentru sacrificarea ocluziei constau în celule. Fiecare celulă face parte din scenă. Celulele formează un arbore binar. Ocluzia Culling folosește doi copaci. Primele celule de vizualizare (pentru obiectele statice), a doua celule țintă (pentru obiecte în mișcare). View Cells conține o listă de indexuri care determină vizibilitatea obiectelor statice cu o precizie mai mare.

Acest lucru este important de reținut atunci când creați obiecte, deoarece aveți nevoie de un echilibru bun între dimensiunile obiectelor și celulelor. În mod ideal, nu ar trebui să aveți celule care sunt foarte mici în comparație cu obiectele. În același timp, nu ar trebui să aveți obiecte care să acopere un număr mare de celule. Uneori este util să împărțiți obiecte mari în părți. Uneori este util să combinați obiecte mici între ele (pentru a reduce apelurile de remitere) și, în timp ce acestea rămân în aceeași celulă, sacrificarea ocluziilor va funcționa corect. O colecție de celule și informații de vizibilitate care determină ce celule sunt extrase dintr-o altă celulă sunt denumite PVS (Potentially V esteible S et).

Puteți utiliza scena "depășire", modul de redare pentru a vedea numărul de depășire care se produce și panoul cu informații despre statistici din joc. Mai jos este o comparație a acestora înainte și după aplicarea sacrificării ocluziei.

Unitate - închiderea ocluziei ferestrei de ghidare
Observați în ecranul de scenă Overdraw, o densitate mare de excavații cât mai multe camere. Acestea nu sunt vizibile în vizualizarea jocului, dar totuși.
Unitate - închiderea ocluziei ferestrei de ghidare
Cu aplicarea de închidere ocluzională, camerele îndepărtate nu sunt prestate, depășirea este mult mai puțin densă, iar numărul de triunghiuri și loturi este redat.

Setarea opririi ocluziunii

Există câteva reguli pentru utilizarea corectă a ocluziunii. În primul rând, geometria dvs. la nivel ar trebui să fie împărțită în bucăți de dimensiuni rezonabile. Acest lucru este încă necesar pentru a împărți nivelul în mici și bine definite zone separate unul de celălalt prin obiecte mari cum ar fi pereți, clădiri etc. Ideea este că fiecare plasă individuală va fi fie activată, fie oprită (în funcție de datele de închidere a ocluziei). Deci, dacă aveți un obiect care conține tot mobilierul din cameră, atunci totul va fi redat sau nu va fi nimic. În acest caz, este mai bine să faceți fiecare mobilier într-o plasă separată, apoi fiecare dintre ele să fie redată în funcție de punctul de vedere al camerei.

Pentru ca obiectele să acționeze în ocluzie, trebuie să fie marcate cu eticheta Occluder Static în Inspector. Cea mai rapidă modalitate de a face acest lucru este să selectați toate obiectele de care aveți nevoie și să le marcați ca Ocument Static și Occludee Static.

Unitate - închiderea ocluziei ferestrei de ghidare
Marcați un obiect pentru ocluzie

Când trebuie să folosesc Occludee Static. Elementele transparente care nu blochează vizibilitatea, precum și obiectele mici care nu se suprapun altor obiecte ar trebui marcate ca Occludees. nu occludere. Aceasta înseamnă că nu vor fi redate când sunt închise de alte obiecte. În cazul în care aceste obiecte înseși închid vizibilitatea altora, randarea nu va fi oprită. Acest lucru ajută la reducerea calculelor.

Fereastra de închidere a ocluziei

Pentru cele mai multe operațiuni, utilizați fereastra de ocluzie (Window-> Occlusion Culling)

În fereastra Occlusion Culling, puteți lucra cu ochiuri și zone de ocluzie.

În fila Obiect din fereastra de închidere a ocluziei când componenta Renderer este selectată pe scenă. puteți modifica stegulețele statice corespunzătoare:

Unitate - închiderea ocluziei ferestrei de ghidare
Închiderea ocluziunii pentru retezătorul de ochiuri

În fila Obiect a ferestrei de ocluzie. cu zona de ocluzie selectată. puteți lucra cu proprietățile OcclusionArea corespunzătoare. Pentru mai multe informații, accesați zona de ocluzie

Unitate - închiderea ocluziei ferestrei de ghidare
Ocluzie de eliminare pentru zona de ocluzie

NOTĂ: În mod implicit, dacă nu creați zone pentru sacrificarea ocluziei. se aplică întregii scene.

NOTĂ: De fiecare dată când aparatul foto este în toate zonele de sacrificare a ocluziei, această funcție nu va fi aplicată. Este important să localizați sacrificarea zonei de ocluzie în locurile în care camera ar putea fi amplasată, dar o dimensiune prea mare a acestor locuri va avea un efect negativ asupra productivității în timpul coacerii.

Ocluzia Culling - Coacerea

Unitate - închiderea ocluziei ferestrei de ghidare
Ocluzia inspectorului de sacrificare Tab

Fereastra de coacere a ocluziei are un buton "Set Default Parameters", care vă permite să resetați valorile de coacere la valorile implicite ale Unity. Acestea sunt bune pentru multe scene tipice, cu toate acestea, de multe ori puteți obține rezultate mai bune prin ajustarea valorilor pentru a se potrivi cu conținutul special al scenei dvs.

Stabilește unde poate fi localizată camera foto. Setați această casetă de selectare dacă doriți să tăiați obiecte statice în această zonă de tăiere.

Unitate - închiderea ocluziei ferestrei de ghidare
Proprietățile zonelor de tăiere pentru obiectele în mișcare.

După ce ați adăugat zona de tăiere, trebuie să observați cum va rupe cutia în celule. Pentru a urmări modul în care va fi calculată regiunea de tăiere, selectați opțiunea Vizualizare din panoul Previzualizare ocluzie. Ocluzia Culling Preview Panel.

Unitate - închiderea ocluziei ferestrei de ghidare

Testarea ocluziei generate

După efectuarea calculului, puteți testa ceea ce a fost obținut în final prin activarea funcției de tăiere (în panoul de previzualizare pentru ocluzie în modul rendering) și deplasarea camerei principale în portul de vizualizare al scenei.

În timp ce deplasați camera prin scena (indiferent dacă vă aflați în modul de joc sau nu), veți observa cât de diferite obiecte de scenă vor dispărea, apoi vor apărea. Importanța acestui proces este că în acest fel veți prinde erori în rezultatul calculului tăierii. Recunoașteți obiectele care dau erori prin modul în care apar brusc în portul de vizualizare în timp ce deplasați camera prin scena. O cale de ieșire din această situație este de a schimba rezoluția de ieșire (dacă aveți de-a face cu volume țintă) sau de a muta obiecte de la un loc la altul astfel încât să nu mai pâlpâie și astfel să nu provoace alte probleme. Pentru a depana probleme legate de tăierea obiectelor, puteți deplasa camera principală în zonele cu probleme pentru verificarea lor la fața locului.

Când procesul de calcul este finalizat, veți vedea paralelipipede colorate în fereastra de proiecție. Cuburile albastre reprezintă volumele țintă. Cuburile albe sunt celulele volumelor de vizualizare. Ele servesc pentru a sparge aceste volume în părți mici. Dacă parametrii au fost setați corect, veți observa că unele dintre obiectele din scenă au încetat să mai fie vizibile. Acest lucru se datorează faptului că fie nu sunt vizionate de aparatul de fotografiat, fie că sunt închise de alte obiecte.

Dacă chiar și după finalizarea tuturor calculelor din scenă, toate obiectele sunt încă vizibile, adică nu o tăiați, deci ar trebui să încercați să le rupeți în părți mai mici care se potrivesc în interiorul celulelor.

Crearea unui sentiment de dimensiuni mari și mici

Materiale, Shadere texturi

Articole similare