2012-07-27 6 views
6

W ciągu ostatnich kilku lat zajmowałem się grafiką 3D w Blenderze, a także próbowałem tworzyć gry 3D (w Unity 3D). Gram też w gry komputerowe i jestem zaskoczony jedną rzeczą:Dlaczego renderery gier są tak szybkie w porównaniu do renderów 3D aplikacji?

Dlaczego renderery aplikacji 3D są "powolne" w porównaniu do renderowania gier?

To nie jest pytanie ofensywne. Jestem po prostu ciekawy. Na przykład mogę grać w Crysis lub NFS: The Run bezproblemowo, ale jeśli stworzyłem podobną scenę w Blenderze, uważam, że rendering jednej klatki trwałby na zawsze.

Znalazłem trochę informacji w Internecie (np. "Ponieważ renderery gier używają wielu podróbek i hacków"), ale nie jestem programistą graficznym i byłbym wdzięczny za odpowiedź eksperta.

+1

Jeśli masz renderer zgodny z OpenCL lub CUDA, będziesz zaskoczony, jak szybko renderujesz scenę. Nie całkiem w czasie rzeczywistym, jak gry, ale prawie na miejscu. – Hassan

Odpowiedz

8

Systemy takie jak Blender, Maya i 3D Studio Max zwykle generują raytracing wielokrotnego odbicia dla renderowania klatek. Ich silniki pozwalają na realistyczne efekty szklane i dymne oraz oświetlenie otoczenia. Silniki gier mają ładnie wyglądające, ale mniej fotorealistyczne wersje tych rzeczy.

Co więcej, komentarz Hassana jest następujący: Blender nie używa karty graficznej do renderowania, to wszystko jest sterowane przez procesor (domyślnie). Procesory graficzne są znacznie lepsze w typowym przetwarzaniu równoległym, powszechnym w scenach renderowania, a producenci kart graficznych włożyli dużo pieniędzy, aby opracować technologię do szybkiego uruchamiania gier. Nawet wtedy niektóre algorytmy dla bardzo wysokiej jakości efektów fotorealistycznych są trudne do wydajnego wdrożenia w GPU. Przez 10 lat ludzie mówili o raytracing w czasie rzeczywistym, a niektórzy kandydaci (Nvidia's OptiX, Intel's MIC architecture)

+0

Nie miałem pojęcia, że ​​program do renderowania domyślnie nie korzysta z GPU. Interesujący fakt. –

+1

@Dan: Nie wszystkie programy do renderowania, tylko Blender. Byłbym zaskoczony, gdyby był komercyjny program modelujący, który nie korzystałby z karty graficznej. –

Powiązane problemy