Dlaczego nie wstępnie renderować części fabularnych w grze?

55

Podczas grania w gry często występują przerywniki fabularne, w których nie można wchodzić w interakcje z grą, można jej tylko słuchać lub oglądać podczas gry.

Jednak w wielu grach te historie są renderowane na żywo za pomocą silnika gry, a nie za pomocą wstępnie renderowanych filmów. Nie rozumiem, dlaczego sceny fabularne nie są wstępnie renderowane podczas tworzenia gry

Moje pytanie brzmi:

Dlaczego nie wstępnie renderować przerywnika fabularnego podczas tworzenia gry jako wideo z najwyższymi ustawieniami, aby użytkownik nie musiał renderować go po swojej stronie?

Domyślam się, że twórcy gier nie decydują się na to, ponieważ filmy i renderowanie gier w czasie rzeczywistym wymagają bardzo płynnego przejścia.

Thomas W.
źródło
27
Istnieje również rozmiar zasobu. Renderując za pomocą silnika, po prostu przechowujesz dane animacji. Renderowanie wstępne w wysokiej rozdzielczości oznacza gigabajty danych.
Almo
55
Nie mogę powiedzieć, jeśli już o tym wiedzą, ale większość gier FYI wykorzystywane do wykonywania ich przerywniki z prerendered filmach. W rzeczywistości odeszli od robienia tego w ten sposób. W szczególności zapoznaj się z FF7 i 8 na Playstation.
jhocking
4
i dobre starsze dni, w których używali rzeczywistych aktorów w przerywnikach filmowych (takich jak Rycerz Jedi) zamiast renderowanych (jak w rozszerzeniu Rycerz Jedi)
SztupY
3
@jhocking Spot on! Nie zapomnij o FF10!
MonkeyZeus,
4
W rzeczywistości istniały całe gry składające się wyłącznie ze wstępnie renderowanych scen (niektóre starsze przygody). To było wtedy, gdy renderowanie scen 3D w przyzwoitej jakości było dużym problemem.
wondra,

Odpowiedzi:

92

Mogę wymyślić kilka powodów:

  • Wstępne renderowanie i nagrywanie wideo kosztuje DUŻO więcej miejsca na dysku niż animacja na żywo z animacjami kości.
  • Aspekty wizualne. Jeśli wstępnie renderujesz połowę tego, co widzisz w grze z „lepszą” jakością, przejście może sprawić, że gra straci płynność. Mogę wyobrazić sobie, jak główny bohater gry jest renderowany z 1000 wielokątów podczas normalnej gry, ale nagle widzę go renderowanego z 2000 wielokątów, ładnym wygładzeniem skóry i 25 efektami cieniowania, to przez dwie minuty, a następnie odskakuj z niską rozdzielczością postać ... wyglądałoby to dziwnie.
  • Wewnętrzny proces zatwierdzania / modyfikacji. Sądzę, że proces prostego modyfikowania animacji dla przerywnika z firmy produkującej gry jest znacznie prostszy niż modyfikowanie oryginalnego zasobu animacji, renderowanie jej i zatwierdzanie.
  • Nie ma takiej potrzeby (lub „ponieważ mogą”). Silniki i sprzęt do gier stają się coraz bardziej wyrafinowane i wydajne, więc jakość ich produkcji zbliża się do jakości kinowej, więc skoro maszyna użytkownika końcowego może to zrobić, po co męczyć się z renderowaniem wstępnym?
  • Pływ. Jak zasugerowałeś, chyba że naciskasz na silnik, aby to zrobić, może minąć krótki czas ładowania przed pokazaniem wideo, podczas gdy przejście do scenki przerywnikowej oznacza załadowanie mniejszej ilości danych i niewielkie przejście stanu gry.

Sugerowane na podstawie komentarzy:

  • Koszt. Korzystanie z oprogramowania o architekturze optymalizującej wstępnie renderowane sceny (takie jak „Bink Video” Rad Game Tool) może być kosztowne w celu uzyskania licencji i wdrożenia. (Dzięki @Honeybunch)

  • Dostosowywanie. Jeśli gracz może zmienić wygląd swojej postaci, ekwipunek lub skład drużyny, wówczas albo te opcje nie zostaną odzwierciedlone we wstępnie renderowanych sekcjach (np. Zawsze wyświetlana jest postać kanoniczna / wyposażenie / impreza) lub kilka wstępnie renderowanych filmów wymagane, aby objąć wszystkie możliwe kombinacje (co szybko staje się niepraktyczne, jeśli gracz ma wiele możliwości). (@DMGregory i @Kevin)

Vaillancourt
źródło
8
Ostatni punkt w rzeczywistości odnosi się do innych w trudny sposób. Twórcy gier używali prerenderowanych przerywników filmowych, ponieważ wbudowana grafika nie była wystarczająco dobra (tj. Musiała), ale przestała to robić tak szybko, jak to było możliwe z innych powodów.
jhocking
7
Myślę, że szczególnie podczas odchodzenia od renderowanych scen przerywnikowych wielu programistów poszło w czasie rzeczywistym, aby udowodnić, że potrafią . Nadal często zdarza się, że zwiastuny prowadzą z chwalebną obietnicą „wszystko, co zobaczysz, jest renderowane w czasie rzeczywistym” - jest to punkt sprzedaży w tym widoku, a poleganie na czymś wstępnie renderowanym jest czasem „oszustwem” lub próbując ukryć silnik gry, który nie spełnia tego zadania. Ponadto przerywniki filmowe w czasie rzeczywistym mogą odzwierciedlać dostosowanie postaci / drużyny gracza, a wstępnie renderowane musiałyby zawierać vids dla każdej kombinacji.
DMGregory
5
If you pre-rendered half of what you see in the game with "better" quality, the transition could make the game lose it's flow.Tak, dokładnie. Ten efekt był bardzo zauważalny (i wstrząsający) na przykład w Final Fantasy 8, gdzie grafika w grze i tak była już bardzo dobra, przynajmniej na PS 1, ale nagle trafiłeś na przerywnik filmowy i wszystko wygląda inaczej, ponieważ są w filmie zamiast silnika gry.
Mason Wheeler,
42
Kolejna kwestia: jeśli postać gracza ma coś do dostosowania (nawet jeśli jest to coś naprawdę prostego, np. Kolor stroju ), gracz zauważy, że twoja wstępnie wyrenderowana przerywnik filmowy nie pasuje do twoich ustawień. W przeciwnym razie musisz wstępnie wyrenderować osobną scenkę przerywnikową dla każdej możliwej postaci niestandardowej, która może, ale nie musi, być opłacalna (np. Spróbuj wstępnie zrenderować każdego możliwego dowódcę Sheparda lub Dovahkiina).
Kevin,
7
Zapomniałeś o innym ważnym: przerywniki filmowe w czasie rzeczywistym pozwalają na renderowanie gry z dokładnie wybraną rozdzielczością. Przy wstępnie renderowanym przerywniku, skalowanie w górę lub w dół i różne proporcje będą wyglądać źle.
Keavon
44

Wiele gier pozwala postaciom zmieniać wygląd podczas gry. Renderowanie scen przerywnikowych w silniku może odzwierciedlać te zmiany. W przypadku filmów nie masz takiej elastyczności.

Brian Rasmussen
źródło
31
Może to mieć zabawne konsekwencje, gdy twoja postać jest zaangażowana w poważną scenkę przerywnikową, nosząc najbardziej wacki kostium, jaki możesz znaleźć.
BenM
3
Zgadzam się i myślę, że o to właśnie chodzi w grach takich jak Saints Row :)
Brian Rasmussen
3
Pamiętam grę, która dokładnie miała ten problem (Gothic 1 i Gothic 2). Zostało to rozwiązane poprzez konieczność posiadania specjalnego stroju, aby móc kontynuować grę (więc strój pasuje do tego w renderowanej scenie). Innym punktem, który może być interesujący, jest moc obliczeniowa w przyszłości. W starsze gry można teraz grać z wyższą rozdzielczością i szczegółami niż wtedy, gdy trafią na rynek. W zależności od sposobu wykonania scen jakość gry może być wyższa niż na scenie.
Skalli
6
@BenM. Przypomina mi to Assassin's Creed 4: Black Flag , w której gracz może nosić kostiumy z kapturami lub bez. Ponieważ jednak oficjalna szata zabójcy ma kaptur, otrzymujemy scenki przerywnikowe, w których Edward próbuje zakryć twarz kapturem, nawet jeśli jego obecny strój nie ma takiego. Wygląda naprawdę głupio.
Nolonar,
2
Jest to 100% powodu, dla którego używamy przerywników silnikowych zamiast prerenderów. Możliwość wykonania przerywników filmowych w Mayi pozwoliłaby nam zaoszczędzić wiele narzędzi, a na odtwarzaczu Blu-ray jest wystarczająco dużo miejsca, aby przechowywać potrzebne wideo. Ale nasza gra pozwala graczom przebrać swoją postać, więc kostium musi znajdować się w przerywnikach filmowych.
Crashworks,
21

Inne zalety renderowania przerywników w silniku obejmują:

  • Skaluje się do sprzętu, w przeciwieństwie do wstępnie renderowanych filmów. Niektóre starsze gry mają przerywniki renderowane w rozdzielczości 720p lub niższej, które po prostu nie wyglądają tak ładnie na ekranie o rozdzielczości 4k lub wyższej.

  • Jest bardziej przyjazny dla modów. Jeśli zdecydujesz się zainstalować modowe tekstury o wysokiej rozdzielczości lub po prostu chcesz zastąpić konia Wiedźmina fajnie wyglądającym gigantycznym wilkiem, modyfikacji tych nie będzie nigdzie widać na wstępnie renderowanym filmie.

  • Synchronizacja warg jest znacznie łatwiejsza w przypadku silnika. Obecnie animacje warg zależą od ścieżek audio. Oznacza to, że aktor głosowy nie musi synchronizować mowy z ruchami ust bohatera. Jeśli kiedykolwiek będziesz potrzebować zlokalizować grę z jednego języka na inny, twój aktor głosowy musi tylko skupić się na swoich liniach i nie musisz ponownie renderować sceny.

  • Jest bardziej elastyczny. Niezależnie od tego, czy twoja postać ledwie stoi wyprostowana z powodu odniesionych obrażeń, czy też jest pijany, jego aktualny stan można odzwierciedlić znacznie dokładniej po renderowaniu w silniku, niż na filmie.

  • Środowisko jest odzwierciedlane dokładniej. Może po prostu spłonąłeś cały las, albo w jakiś sposób udało ci się uniknąć śmierci Aerith wbrew wszelkim przeciwnościom. Cóż, wstępnie renderowany film nie może uwzględniać każdej ewentualności.


Ostatecznie wszystko sprowadza się do tego, że przerywniki renderowane w silniku są dynamiczne, a zatem oferują elastyczność, której po prostu renderowane wideo po prostu nie może.

Nolonar
źródło
16

Gry, które zasłynęły z renderowanych przerywników, które wyglądają znacznie lepiej niż rzeczywista gra, to gry Final Fantasy z epoki PlayStation 1. Na przykład bohater Final Fantasy VII wyglądał tak podczas przerywników filmowych:

wprowadź opis zdjęcia tutaj

I tak podczas rzeczywistej gry:

Gra FF VII Cloud

Na czym polega problem? Różnica między estetyką podczas przerywników filmowych a rzeczywistą rozgrywką była tak różna, że ​​ledwo wyglądała jak ta sama gra. Przerwa między przerywnikami filmowymi a rozgrywką była tak oczywista, że ​​przerwała zanurzenie i zakwestionowała zawieszenie niewiary graczy.

W dzisiejszych czasach gry tego unikają, renderując narracyjne przerywniki za pomocą silnika gry. W ten sposób podział między interaktywnymi i nieinteraktywnymi częściami gry jest znacznie bardziej płynny.

Chociaż jest to coś, co nie jest w 100% porzucone. Na przykład Wiedźmin 3 integruje kilka wstępnie renderowanych sekwencji CGI. Znana jest przerywnik wprowadzający , ale podczas niektórych kluczowych przerywników w rzeczywistej grze występuje również subtelne użycie, które można zauważyć tylko zwracając uwagę na artefakty kompresji wideo. Problem spójności związany z dostosowywaniem postaci rozwiązuje się, robiąc to głównie w scenach, w których na ekranie nie ma głównych bohaterów.

Philipp
źródło
5
Widzę, że zbliżenia grafiki w grze są znacznie bardziej niszczące niż zanurzone wideo z lepszą grafiką. Zwłaszcza, że ​​twarze / włosy nie są traktowane dobrze w czasie rzeczywistym, nawet dzisiaj.
CodesInChaos
3
@CodesInChaos nawet gry, które wyświetlają przerywniki w czasie rzeczywistym, często używają wyższej jakości modeli, tekstur i animacji twarzy podczas fragmentów przerywników (ponieważ budżet renderowania jest łatwiejszy do kontrolowania w tych scenach, niż gdy gracz może swobodnie wędrować po całym świecie , mogą sobie pozwolić na więcej szczegółów tutaj, gdzie jest to najbardziej widoczne). Nawet w przerywnikach filmowych w czasie rzeczywistym niekoniecznie patrzysz na powiększony widok zwykłych zasobów postaci.
DMGregory
3
Myślę, że Resident Evil 2 pięknie poradził sobie z tym problemem, IMHO. Prawie wszystkie przerywniki filmowe rozpoczynają (lub są całkowicie) procedurę w silniku i z wdziękiem przechodzą do CGI. Myślę, że jest to również porównywalne z użyciem FMV przez Myst, z rzadkim wyjątkiem, prawie jakakolwiek inna gra FMV z lat 90. Oczywiście, CGI było nieco bardziej imponujące w 1996 roku niż FMV w 1992 roku, więc przypuszczam, że byliśmy bardziej skłonni znosić niezręczny przepływ, aby mieć nasze przerywniki CGI.
user1103
2

Kolejna kwestia wstępnie renderowanych przerywników filmowych obejmuje możliwości, ponieważ w dzisiejszych grach Twoje działania zmieniają przebieg fabuły.

W związku z tym powstają niezliczone różne kombinacje wyników, a tym samym niezliczone różne wstępnie renderowane przerywniki filmowe. Ma to pewne oczywiste ograniczenia (setki GB, być może TB).

Wyrenderowanie go przez silnik gry w czasie rzeczywistym oznacza, że ​​wystarczy wysłać odpowiednie parametry zawierające działania, które gracz podjął do tego momentu. Silnik gry oblicza następnie możliwy wynik na podstawie tych parametrów.

W ten sposób, tylko z jednego silnika, możesz dodać tyle możliwych wyników, ile chcesz.

Teio
źródło