Serwisanci dostępni teraz · czynne całą dobę, także w weekendy i świętaWarszawa i okolice · dojazd bezpłatny
Darmowa diagnoza laptopa
Darmowa diagnoza laptopa
Dojazd do klienta bezpłatnie
Dojazd do klienta bezpłatnie
Laptopy zastępcze bezpłatnie
Laptopy zastępcze bezpłatnie
Odbiór i zwrot sprzętu bezpłatnie
Odbiór i zwrot sprzętu bezpłatnie

Culling

Termin Definicja
Culling

Culling to technika optymalizacji renderowania polegająca na pomijaniu obiektów niewidocznych w danym kadrze (np. zasłoniętych lub poza polem widzenia), redukująca obciążenie GPU.

Czym jest culling w grafice komputerowej

Culling to metoda selekcji elementów sceny 3D, która pozwala ograniczyć renderowanie obiektów niewnoszących widocznego wkładu do aktualnego obrazu. Silnik graficzny analizuje położenie geometrii względem kamery, kierunek widzenia oraz relacje zasłaniania, a następnie pomija te fragmenty sceny, których nie trzeba przedstawiać na ekranie. Dzięki temu karta graficzna może skoncentrować zasoby na obiektach faktycznie widocznych dla użytkownika.

W praktyce nie oznacza to usuwania modeli z projektu ani zmniejszania ich jakości. Culling działa jako etap decyzyjny poprzedzający właściwe przetwarzanie geometrii, rasteryzację i nakładanie materiałów. Obiekt pozostaje zapisany w scenie, lecz w określonej sytuacji nie jest przekazywany do kolejnych etapów potoku renderowania. Po zmianie położenia kamery może ponownie zostać uznany za potrzebny i pojawić się na ekranie.

Najczęściej wyróżnia się kilka odmian tej techniki. Frustum culling pomija elementy znajdujące się poza bryłą widzenia kamery. Back-face culling odrzuca powierzchnie skierowane tyłem do obserwatora, jeżeli zgodnie z ustawieniami materiału nie powinny być widoczne od wewnętrznej strony. Occlusion culling wykorzystuje informacje o zasłanianiu, aby pominąć obiekty schowane za ścianami, terenem lub innymi modelami. W rozbudowanych scenach stosuje się także podział przestrzeni, hierarchie obwiedni oraz uproszczone testy widoczności.

Kontekst techniczny i porównanie z innymi optymalizacjami

Culling dotyczy przede wszystkim decyzji o tym, co w ogóle powinno zostać poddane renderowaniu. Jest to inny mechanizm niż obniżanie rozdzielczości tekstur, redukcja liczby wielokątów modelu czy zmiana poziomu szczegółowości. Techniki poziomu szczegółowości zastępują obiekt prostszą wersją, natomiast culling może całkowicie wykluczyć go z bieżącego przebiegu, jeżeli nie ma powodu, aby go wyświetlać.

Ważną rolę odgrywa również kolejność wykonywania testów. Prosty test położenia względem kamery jest zazwyczaj szybki i może zostać przeprowadzony przed bardziej kosztowną analizą zasłaniania. Z kolei occlusion culling bywa dokładniejszy w zamkniętych pomieszczeniach, lecz wymaga przygotowania dodatkowych danych opisujących układ sceny. W przestrzeni otwartej, gdzie widoczność zmienia się wraz z ukształtowaniem terenu, skuteczność zależy od sposobu podziału świata i jakości obliczeń widoczności.

Korzyść z cullingu nie polega wyłącznie na uzyskaniu wyższej liczby klatek obrazu. Ograniczenie liczby przetwarzanych obiektów może zmniejszyć obciążenie procesora, karty graficznej oraz pamięci używanej przez dane tymczasowe. W efekcie łatwiej utrzymać stabilną płynność, ograniczyć nagłe spadki wydajności i pozostawić zasoby na oświetlenie, cienie, efekty cząsteczkowe oraz inne elementy obrazu. Zysk będzie jednak zależeć od charakteru sceny, liczby obiektów i tego, czy wąskim gardłem jest procesor, karta graficzna, pamięć czy sposób przygotowania danych.

Typowe problemy i błędy związane z cullingiem

Nieprawidłowo skonfigurowany culling może powodować znikanie obiektów, które powinny być widoczne. Częstą przyczyną jest błędnie wyznaczona obwiednia modelu. Jeżeli obwiednia jest zbyt mała albo nie uwzględnia animacji, silnik może uznać cały obiekt za znajdujący się poza polem widzenia, mimo że jego część nadal powinna pojawiać się na ekranie. Problem może wystąpić także po zmianie skali, obrotu lub punktu zakotwiczenia modelu.

W przypadku back-face cullingu niepoprawne kierunki normalnych powierzchni mogą sprawić, że fragmenty siatki zostaną odrzucone z niewłaściwej strony. Podobny efekt może pojawić się przy jednostronnych materiałach zastosowanych do geometrii, która w rzeczywistości powinna być widoczna z obu kierunków. Wtedy przydatne jest sprawdzenie orientacji ścian, ustawień materiału oraz sposobu generowania geometrii.

Occlusion culling może z kolei powodować krótkotrwałe znikanie obiektów podczas przechodzenia między obszarami. Zwykle wskazuje to na niespójny podział sceny, niewłaściwie przygotowane dane widoczności albo zbyt agresywne założenia dotyczące zasłaniania. Warto odróżnić taki błąd od problemu z teksturą, shaderem lub pamięcią, ponieważ wszystkie te usterki mogą wizualnie wyglądać podobnie. Pomocne jest przełączenie poszczególnych metod selekcji, obserwacja obwiedni oraz porównanie obrazu z trybem diagnostycznym silnika.

Nie zawsze większa liczba testów oznacza lepszą wydajność. Jeżeli scena jest mała, a obiektów jest niewiele, koszt organizowania złożonej hierarchii widoczności może przewyższyć oszczędności. Dlatego culling powinien być oceniany na podstawie pomiarów, profilu obciążenia i rzeczywistego sposobu poruszania się kamery, a nie tylko na podstawie samej obecności tej funkcji.

W jakich sytuacjach warto skorzystać z pomocy serwisu - Culling

Do serwisu warto zgłosić problem, gdy obiekty w aplikacji 3D lub grze znikają mimo prawidłowej pozycji kamery, obraz chwilowo migocze podczas poruszania widokiem albo wydajność wyraźnie spada w scenach zawierających wiele elementów. Szczególnej uwagi wymaga sytuacja, w której artefakty pojawiają się po aktualizacji sterownika, zmianie ustawień grafiki lub instalacji nowego oprogramowania. W takim przypadku przyczyną może być zarówno konfiguracja cullingu, jak i szerszy problem z działaniem układu graficznego.

Przed zgłoszeniem można zapisać nazwę programu, moment występowania błędu, sposób odtworzenia problemu oraz informację, czy usterka dotyczy wszystkich scen, czy tylko jednego projektu. Przydatne są również zrzuty ekranu, nagranie krótkiego fragmentu działania i opis zmian wykonanych tuż przed pojawieniem się objawów. Pozwala to odróżnić błędną widoczność geometrii od przegrzewania, niestabilności sterownika, uszkodzenia plików lub niedopasowania ustawień do danego sprzętu.

W Warszawskim Pogotowiu Komputerowym 24/7 można zlecić sprawdzenie laptopa, gdy problemy z renderowaniem towarzyszą artefaktom obrazu, zawieszaniu aplikacji albo nieoczekiwanym spadkom płynności. Na początku wykonywana jest darmowa diagnoza LAPTOPA, obejmująca ocenę objawów i podstawową weryfikację konfiguracji. Na tej podstawie można ustalić, czy źródła problemu należy szukać w ustawieniach oprogramowania, sterownikach, układzie chłodzenia czy podzespołach odpowiedzialnych za grafikę.

+48 22 100 48 29Zadzwoń teraz · serwisant w 1 godzinę