Co to jest samokontrola?
„Self-shading” to termin opisujący okoliczności, w których jedna część obiektu rzuca na siebie cień. Przykłady samokontrolowania obejmują cień odlewany przez ludzki nos na twarz lub górną wargę, gdy źródło światła pochodzi z góry lub cień rzucany przez siedzenie krzesła na nogach krzesła. Gdy termin jest używany w grafice komputerowej-w szczególności programowanie grafiki komputerowej-jest to odniesienie do cieni rzucanych przez trójwymiarowe obiekty sceny (3D) na siebie lub cienie, które są rzucane przez dynamiczne obiekty na siebie i obiekty wokół nich. Charakter programowania grafiki komputerowej w czasie rzeczywistym powoduje, że wiele aplikacji stosuje techniki, które często usuwają możliwość renderowania własnych shadów na korzyść innych optymalizacji, chociaż wraz ze wzrostem prędkości i możliwości komputerów stają się bardziej dostępne metody samozachowawania w czasie rzeczywistym. Istnieje kilka metod renderowania obiektów w czasie rzeczywistym, BuOgraniczenia sprzętowe zwykle dają wyniki, które mają pewne wady, takie jak niedokładne cienie, cienie z sztucznie twardymi krawędziami lub sceny, które rendują bardzo powoli na kartach graficznych, które nie są niesamowicie szybkie.
Jednym rozróżnieniem, które należy dokonać podczas mówienia o samookaleczaniu, jest różnica między obiektami statycznymi i dynamicznymi w grafice w czasie rzeczywistym. Obiekty statyczne to obiekty 3D w scenie, które nie poruszają się i nie zmieniają żadnej części ich geometrii w trakcie renderowania. Z drugiej strony obiekt dynamiczny jest obiektem, który nie jest w żaden sposób bezpośrednio przymocowany do sceny i może różnić się od jednej ramki do drugiej. W przeważającej części większość statycznych obiektów i scen nierealistycznych wykonuje się z powodu silnika renderowania, albo z powodu innych sztuczek graficznych, które można użyć.
Kilka optymalizacji, które są używane do renderowania grafiki 3D w czasie rzeczywistymMenting Dynamic Self-Cading Trudne. Niektóre przykłady obejmują silnik graficzny, który stosuje tylko efekty oświetlenia do statycznego tła, ignorując dynamiczne obiekty, takie jak postacie w scenie lub silnik, który traktuje obiekty tylko jako sylwetki, bez świadomości geometrii wewnętrznej. Wraz ze wzrostem procesorów graficznych i komputerów nowe techniki pozwalają pojawiać się obiekty samozadowolenia w scenie w czasie rzeczywistym, z pewnymi ograniczeniami i kompromisami.
Objętości cienia to jeden ze sposobów, w jaki shading można wdrożyć w scenie 3D. Ta metoda zasadniczo tworzy obiekty 3D, które zajmują zamkniętą głośność w scenie, w której rzucany jest cień, umożliwiając rendererowi lub shaderowi przeprowadzanie testów na temat tego, czy jakikolwiek punkt znajduje się w objętości zacienionej, aby ustalić, jak jest oświetlony. Inne metody tworzą mapy cienia lub przybliżone cienie z pozycji wierzchołków, aby stworzyć bardzo rozproszone cienie, które niekoniecznie podążają za wiernością krawędzi.
Muszą prawie wszystkie metody samokontroliWymień prędkość lub jakość, aby uzyskać akceptowalny wynik. Problemy z jakością mogą wystąpić dzięki zastosowaniu szybkich, ale o niskiej rozdzielczości lub rozmytej technikach, które mogą sprawić, że niektóre samozatrudnienie wydają się złe lub nie na miejscu. Problemy z prędkością występują, gdy zastosowane algorytmy wymagają zbyt dużej ilości kosztów na głowę lub próby zbyt dokładnego obliczenia projekcji cienia. Chociaż nie ma jednego standardowego algorytmu produkującego samokontroły, niektóre karty graficzne obejmują natywne przyspieszenie dla różnych metod, które mogą zwiększyć prędkość niektórych technik.