 |
GeForce 6800
Wojtek Kiełt, lipiec 2004
CineFX 3.0 i Shader Model 3.0
Piękna syrenka Nalu to efekt pracy wielu programistów, wszystko po to, aby zademonstrować możliwości silnika CineFX 3.0

Microsoft DirectX 9.0 wprowadził nowe standardy w technologii cieniowania 'vertexów' i 'pixeli' - wersje 2.0 i wersje 3.0. Sprzęt zgodny z Shader Model 2.0 dostępny jest od ponad roku, w tym czasie zarówno karty i jak oprogramowanie doznało gwałtownego wzrostu. Shader Model 2.0 zawierał technologie użyteczne dla zaawansowanego oświetlenia i technik animacji, lecz był ograniczony długością i złożonością programów cieniujących, co nie pozwalało na wierne oddanie wszystkich efektów.
Gdy programiści (twórcy gier) zaczęli naciskać na ograniczenia właściwe dla jednostek Pixel Shader 2.0 i Vertex Shader 2.0, rozpoczęła się adopcja nowego, bardziej zaawansowanego Modelu Cieniowania 3.0. Oto najważniejsze różnice pomiędzy modelami 2.0 i 3.0:
|
Pixel Shader
|
Shader 2.0
|
Shader 3.0
|
opis
|
|
Długość Shaderów
|
96
|
65535+
|
pozwala na złożone cieniowanie i oświetlenie
|
|
Dynamiczne rozgałęzienia
|
nie
|
TAK
|
oszczędza wydajność przez omijanie złożonego cieniowania na nieistotnych pixelach
|
|
Shader anti-aliasing
|
nie obsługiwane
|
wbudowane
pochodne instrukcje
|
Deweloperzy mogą obliczyć pochodne każdej funkcji, pozwalającej im modyfikować częstotliwość cieniowania lub over-sampling w celu eliminowania artefaktów
|
|
rejestry Back-face
|
nie
|
TAK
|
pozwala na dwustronne oświetlenie w jednym przejściu
|
|
interpolowany format koloru
|
8-bitowy
stałoprzecin.
|
32-bitowy
zmiennoprzecin.
|
wyższy zakres i precyzja koloru pozwala na
bardzo dynamiczną skalę cieniowania i oświetlenia
|
|
Multiple render targets
|
opcjonalnie
|
4 wymagane
|
pozwala wyższym algorytmom oświetlenia zaoszczędzić filtrowania i pracy vertex'ów - innymi słowy więcej świateł mniejszym kosztem
|
|
mgła i rozbłyski
|
8-bitowe
|
do wyboru
fp16-fp32
programy shader
|
Shader Model 3.0 daje deweloperom pełną i precyzyjną kontrolę nad obliczeniami rozbłysków i mgieł - przedtem funkcja stała
|
|
Licznik koordynat tekstur
|
8
|
10
|
więcej danych na-pixel pozwala na bardziej realistyczny rendering, w szczgólności skóry
|
|
Vertex shader
|
Shader 2.0
|
Shader 3.0
|
Description
|
|
Długość Shaderów
|
256
instrukcji
|
65535
instrukcji
|
więcej instrukcji pozwala na bardziej szczegółowe postacie, oświetlenie i animacje
|
|
Dynamiczne rozgałęzienia
|
nie
|
TAK
|
oszczędza wydajność przez omijanie złożonego cieniowania na nieistotnych wektorach
|
|
Tekstury Vertex
|
nie
|
do 4
tekstur
|
pozwala na 'mapowanie przemieszczeń'
|
|
obsługa 'Instancing'
|
nie
|
wymagane
|
umożliwia rysowanie wielu urozmaiconych obiektów
tylko przy wykorzystaniu pojedynczego polecenia.
|
Szczegółowe informacje na temat Shader Model 3.0 zamieściła na swojej stronie firma Microsoft.
Trzeciej generacji silnik Cine FX, w skład którego wchodzą Vertex Shader 3.0 i Pixel Shader 3.0, daje przede wszystkim pełną zgodność z standardem cieniowania Microsoft zawartym w najnowszym DirectX 9.0c. To duża technologiczna przewaga na konkurencyjnym R420 firmy ATi, który pozostał na poziomie zgodności ze specyfikacją Cieniowania 2.0.
Jak czytamy w dokumentacji nVidii, CineFX 3.0 daje bardzo dużą swobodę programistom i twórcom programów cieniujących, likwidując narzucony do tej pory przez sprzęt, limit w długości programów vertexowych i pixelowych.
- Nieskończona długość programów cieniujących
- Dynamiczna kontrola przebiegu
- Displacement mapping
- Rozdzielanie strumieni vertexów
- technologia Multiple Render Target (MRT)
Z naszego punktu widzenia, 'zwykłych' użytkowników tych kart, których interesuje wyłącznie ostateczny efekt, czyli ładne efekty 3D i dobra wydajność, wszystkie te informacje o nieskończonej długości i wyższej precyzji programów cieniujących, dynamicznej kontroli przepływu, pętlach, rozgałęzieniach, etc etc, mogą być jeśli nie niezrozumiałe, to nieco przynudnawe i niepotrzebne. Zatem mówiąc już językiem jak najbardziej prostym: CineFX 3.0 oferuje wszystko co ma pomóc programistom w sposób szybki i wygodny pisać gry, które na ekranie naszych monitorów (przy wykorzystaniu odpowiednich kart rzecz jasna) będą wyglądać jak to wspaniałe demko z syrenką. Więcej technicznych informacji na temat CineFX 3.0 znajdziecie w dokumencie Technical Brief: CineFX 3.0.

|