Stałe węzły

W Projektancie cieniowania węzły stałe reprezentują wartości literałów i atrybuty interpolowanych wierzchołków w obliczeniach cieniowania pikseli. Ponieważ atrybuty wierzchołków są interpolowane — i tak są różne dla każdego piksela — każde wystąpienie modułu cieniowania pikseli otrzymuje inną wersję stałej. Dzięki temu każdy piksel ma unikatowy wygląd.

Interpolacja atrybutów wierzchołków

Obraz sceny 3D w grze lub aplikacji jest cytująco przekształcany na piksele na ekranie wiele obiektów — które są definiowane przez wierzchołki, atrybuty wierzchołków i definicje pierwotne. Wszystkie informacje wymagane do nadaj pikselowi jego unikatowego wyglądu są dostarczane za pośrednictwem atrybutów wierzchołków, które są mieszane w zależności od odległości piksela od różnych wierzchołków, które sięgają po pierwotny element. Prymityw jest podstawowym elementem renderowania; oznacza to prosty kształt, taki jak punkt, linia lub trójkąt. Piksel, który jest bardzo blisko tylko jednego wierzchołka, otrzymuje stałe, które są niemal identyczne z tym wierzchołkiem, ale piksel równomiernie odstępowany między wszystkimi wierzchołkami prymitywu otrzymuje stałe, które są średnią tych wierzchołków. W programowaniu graficznym stałe odbierane w pikselach są oznaczane jako interpolowane. Zapewnienie stałej ilości danych w pikselach w ten sposób zapewnia bardzo dobrą jakość wizualizacji, jednocześnie zmniejszając zużycie pamięci i przepustowość.

Mimo że każde wystąpienie programu do cieniowania pikseli otrzymuje tylko jeden zestaw wartości stałych i nie może zmienić tych wartości, różne wystąpienia modułu cieniowania pikseli otrzymują różne zestawy danych stałych. Ten projekt umożliwia programowi cieniowania uzyskanie różnych danych wyjściowych koloru dla każdego piksela w pierwotnym.

Odwołanie do węzła stałego

Węzeł Szczegóły Właściwości
Wektor aparatu Wektor, który rozciąga się od bieżącego piksela do aparatu w świecie.

Dzięki temu można obliczyć odbicia w przestrzeni świata.

Dane wyjściowe

Output: float3
Wektor z bieżącego piksela do aparatu.
Brak
Color, stała Stała wartość koloru.

Dane wyjściowe

Output: float4
Wartość koloru.
Dane wyjściowe
Wartość koloru.
Stała Stała wartość skalarna.

Dane wyjściowe

Output: float
Wartość skalarna.
Dane wyjściowe
Wartość skalarna.
Stała 2D Dwuskładnikowa stała wektorowa.

Dane wyjściowe

Output: float2
Wartość wektora.
Dane wyjściowe
Wartość wektora.
Stała 3D Stała wektorowa z trzema składnikami.

Dane wyjściowe

Output: float3
Wartość wektora.
Dane wyjściowe
Wartość wektora.
Stała 4D Czteroskładnikowa stała wektorowa.

Dane wyjściowe

Output: float4
Wartość koloru.
Dane wyjściowe
Wartość wektora.
Znormalizowane położenie Pozycja bieżącego piksela wyrażona w znormalizowanych współrzędnych urządzenia.

Współrzędna x i współrzędna y mają wartości z zakresu [-1, 1], współrzędna z ma wartość w zakresie [0, 1], a składnik w zawiera wartość głębokości punktu w przestrzeni widokowej; w nie jest znormalizowane.

Dane wyjściowe

Output: float4
Położenie bieżącego piksela.
Brak
Kolor punktu Kolor wierzchołka bieżącego piksela, który jest kombinacją atrybutów koloru materiału i koloru wierzchołka.

Dane wyjściowe

Output: float4
Kolor cycytowania bieżącego piksela.
Brak
Głębokość punktu Głębokość bieżącego piksela w przestrzeni widoku.

Dane wyjściowe

Output: float
Głębokość bieżącego piksela.
Brak
Znormalizowana głębokość punktu Głębokość bieżącego piksela wyrażona w znormalizowanych współrzędnych urządzenia.

Wynik ma wartość z zakresu [0, 1].

Dane wyjściowe

Output: float
Głębokość bieżącego piksela.
Brak
Położenie ekranu Pozycja bieżącego piksela wyrażona w współrzędnych ekranu.

Współrzędne ekranu są oparte na bieżącym ekranie. Składniki x i y zawierają współrzędne ekranu, składnik z zawiera głębokość znormalizowaną do zakresu [0, 1], a składnik w zawiera wartość głębokości w przestrzeni widoku.

Dane wyjściowe

Output: float4
Położenie bieżącego piksela.
Brak
Surface Normal Normalna powierzchnia bieżącego piksela w przestrzeni obiektów.

Za jego pomocą można obliczyć udziały oświetlenia i odbicia w przestrzeni obiektów.

Dane wyjściowe

Output: float3
Normalna powierzchnia bieżącego piksela.
Brak
Wektor aparatu w tangensie Wektor, który rozciąga się od bieżącego piksela do aparatu w przestrzeni tangensowej.

Można jej użyć do obliczenia odbicia w przestrzeni tangensa.

Dane wyjściowe

Output: float3
Wektor z bieżącego piksela do aparatu.
Brak
Kierunek światła w przestrzeni tangensa Wektor definiujący kierunek rzutowania światła ze źródła światła w tangensowym miejscu bieżącego piksela.

Można jej użyć do obliczenia oświetlenia i składowych specyfikacji w przestrzeni tangensa.

Wyjście:

Output: float3
Wektor od bieżącego piksela do źródła światła.
Brak
Świat normalny Normalna powierzchnia bieżącego piksela w przestrzeni świata.

Za jego pomocą można obliczyć udział oświetlenia i odbicia w przestrzeni światowej.

Dane wyjściowe

Output: float3
Normalna powierzchnia bieżącego piksela.
Brak
Pozycja na świecie Położenie bieżącego piksela w przestrzeni świata.

Dane wyjściowe

Output: float4
Położenie bieżącego piksela.
Brak