Okulary 3D -- 5 powodów, dla których są skazane na porażkę

Szum wokół trójwymiarowych okularów 3D Vision firmy NVIDIA, prezentowanych na tegorocznym CES, szczerze mnie zaskoczył. Skłonny jestem sądzić, że większość podekscytowanych żurnalistów i blogerów nie pamięta urządzeń sprzed 10 lat, które oferowały dokładnie to samo i to przy praktycznie takich samych ograniczeniach technicznych. Przetestowałem wówczas kilka modeli i uważam, że poza wydajnością akceleratorów niewiele się do dziś zmieniło.
Okulary 3D nie przyjęły się wtedy, nie przyjmą się dzisiaj -- w kontynuacji notki wymieniamy 5 powodów, dla których są skazane na porażkę.
1. Potrzebujecie wypasionego monitora
Efekt trójwymiarowości obrazu osiągany jest poprzez naprzemienne wyświetlanie na ekranie klatek przeznaczonych dla lewego i prawego oka -- ekrany ciekłokrystaliczne w okularach mrugają synchronicznie, by kadry parzyste trafiały zawsze tylko do jednego oka, a nieparzyste do drugiego. Aby zachować częstotliwość 60 klatek na sekundę (która zapewnia postrzeganie płynnego obrazu), potrzebny jest monitor, który obsłuży odświeżanie 120Hz. Każda mniejsza wartość oznacza ciągłe migotanie obrazu, gwarantujące ból oczu i głowy po kwadransie grania.
Jeśli więc macie monitor kineskopowy wyższej klasy, sprawdźcie jego specyfikację -- być może w niższych rozdzielczościach uaktywnicie 120Hz. Jeśli używacie monitora LCD, hm, niestety musicie sobie kupić nowy, bo lwia część modeli obecnych na rynku dobija co najwyżej do 85Hz. Firma nVidia dostrzegła zresztą ten problem, oferując zestaw łączony okularów i monitora Samsung (za jedyne $600, czyli 2000 zł).
2. W najnowszych grach drastycznie obniżycie detale
Procesor i karta graficzna muszą generować dwa obrazy zamiast jednego, płynność animacji spada więc automatycznie o połowę. Dodatkowa moc obliczeniowa idzie na przełączanie bufora graficznego, wydajność obniża też warstwa abstrakcji API wprowadzana przez sterowniki realizujące funkcje 3D. Oczywiście aby okulary zadziałały, musicie włączyć w sterownikach pionową synchronizację obrazu (V-sync).
Co to wszystko oznacza? Niezależnie od tego, jak wypasioną kartę graficzną zamontowaliście w komputerze, sprawdźcie ile klatek na sekundę wyciąga w waszej ulubionej grze, a potem podzielcie to przez pięć. Otrzymana wartość będzie zazwyczaj odpowiadała liczbie klatek, które obejrzycie w okularach 3D. Werdykt jest jasny -- obniżycie rozdzielczość i poziom szczegółów albo gra będzie przycinać.
3. W wielu grach natkniecie się na artefakty graficzne
Aby zaprezentować obraz 3D, sterowniki dołączone do okularów muszą "rozsunąć" punkt widzenia gracza na dwie niezależne pozycje wirtualnych oczu. Jeśli w strzelance FPP gracz stał przy ścianie, to może się zdarzyć, że jedno z oczu "wniknie" w mur, co zaowocuje przypadkowymi obrazami. Inny problem wiąże się z obszarami ekranu, które nie są renderowane w technice 3D (tzw. stencil buffer, np. kokpit samolotu w symulatorze myśliwca) -- ich głębia nie zawsze jest określona, więc uzyskany efekt może zepsuć wrażenie trójwymiarowości.
Możecie być nieprzyjemnie zdziwieni, gdy wirtualny celownik zawiśnie "na szybie monitora" i, zamiast pomocą, stanie się przeszkodą w celowaniu do przeciwników w Waszej Ulubionej Strzelance.
4. Efekt jest przyjemny, jednak wciąż nierzeczywisty
Wyciągnijcie przed siebie dłoń i spójrzcie na nią. Następnie przenieście wzrok na ekran. Zwróciliście uwagę na zmianę ostrości, rozmycie obiektów na których nie skupiacie wzroku? Tego nie zapewni żadna gra, wszystkie obiekty na całym obszarze ekranu pozostaną ostre jak żyleta. Dodatkowo wokół bardzo jasnych, kontrastowych krawędzi będziecie widzieć symetryczne przebicia "z drugiego oka", które obniżą ogólny odbiór obrazu.
5. Nikt nie zobaczy jak gracie
Dopóki macie na nosie okulary 3D, osoby postronne nie zobaczą na ekranie nic poza poszatkowanymi kształtami geometrycznymi. Każdy obserwator potrzebuje własnego egzemplarza okularów ($200 sztuka) albo nici z trójwymiarowości.









Komentarze użytkowników(Strona 1 z 1)
Marek @ Jan 21st 2009 3:33AM
Hmmm... Trochę tendencyjne i naciągane te Wasze powody! Aż chciałoby się spytać po przeczytaniu tego fragmentu: "...większość podekscytowanych żurnalistów i blogerów nie pamięta urządzeń sprzed 10 lat," jakim prawem to mogło działać? A działało bo sam takie miałem! Odnośnie pkt. 1. powiedzcie mi proszę jak ludzie oglądali bez bólu oczu i głowy telewizję przez kilkadziesiąt lat, która przez wiele dekad raczyła nas co najwyżej 50 Hz(pomijam już wczesną fazę rozwoju i wynalazki pokroju Rubina!) ? Pkt.2. też jedna wielka ściema "Procesor i karta graficzna muszą generować dwa obrazy zamiast jednego, płynność animacji spada więc automatycznie o połowę." Załóżmy taką hipotetyczną sytuację: stoją obok siebie dwa komputery w takiej samej konfiguracji, jedyna różnica to okulary 3D, oba wyświetlają tę samą grę z tą samą częstotliwością odświeżania ekranu, niech będą te Wasze 120Hz (choć wystarczy 100 Hz). Pytanie brzmi, na czym polega spadek płynności animacji i mniej szczegółów w grafice? Ja nie mam pojęcia, przecież oba robią prawie to samo, różnica polega na tym iż jeden z komputerów miga 120 razy na sekundę dla dwóch oczu a drugi miga TEŻ 120 razy na sekundę z tym że dla każdego z oka osobno(dzięki okularom)!. Dalej już mi się nie chce ale jeśli miałbym z czymś się tu zgodzić to chyba tylko i wyłącznie z punktem 4.
Pozdrawiam
Ps. Lubię Wasz luzacki ton i cięty humor w wypowiedziach ale bądźcie rzetelni w tym co robicie a będę Was czytał codziennie, jak do tej pory ;)
Tomasz Zieli?ski @ Jan 21st 2009 4:02AM
Hej! Jeśli obok siebie stoją rzeczone dwa komputery, to ten z okularami musi *tę samą* scenę wyrenderować dwa razy z dwóch różnych pozycji. Siłą rzeczy więc liczba FPS od razu dzieli się przez dwa, bo w okularach nie pokazujesz na przemian kolejnych klatek, tylko parami ujęcia tej samej sceny. Do tego dochodzi włączona synchronizacja, jeśli CPU/GPU nie zdążą wyrenderować kolejnej klatki animacji, to przez *dwie* kolejne trzeba pokazywać starą zawartość bufora ramki. Do tego dochodzi narzut czasu obliczeń wprowadzany przez sterowniki rozdzielające punkt widzenia i przekazujące dwa osobne strumienie danych do realizacji (tekstury są wspólne, układ obiektów odrębny).
TV to inna bajka, czas poświaty luminoforu musi być długi, bo tak naprawdę wyświetlasz na przemian dwa przeplecione (interlace) półobrazy a częstotliwość wynikała bezpośrednio z charakterystyki napięcia sieciowego.
Marek @ Jan 21st 2009 7:10AM
Czy to że renderuje z dwóch różnych pozycji oznacza że jeśli w komputerze bez okularów poruszę kamerą/graczem i pozycja kamery ulegnie zmianie to będzie wymagało wygenerowanie dwóch różnych pozycji? Tak. A więc jaka jest różnica? Przecież komputer nie musi doczytywać innych tekstur i geometrii. Zmienia po prostu położenie kamery dla każdego oka, dla każdego odświeżenia na monitorze. Więc jeśli będę przesuwał kamerę w komputerze bez okularów sytuacja jest analogiczna z tą tylko różnicą iż kamera będzie się zachowywać spokojniej. Mogę się zgodzić iż jedynym poważniejszym obciążeniem jest synchronizacja pozioma oraz dodatkowe obliczenia związane z punktem widzenia. Ale to przy współczesnych procesorach jest, umówmy się, znikome. A co do odświeżania, przeplotu i luminoforu. Owszem zgadzam się z tym co napisałeś ale informacje należy uzupełnić o to iż w przypadku telewizji mieliśmy 50Hz ale system SECAM-wcześniej jak i PAL- obecnie ma zaledwie 25 klatek na sekundę a oglądaliśmy/oglądamy 50 półobrazów na sekundę co nie ma się nijak do 120 pełnych klatek! Chodziło mi o to, że owe wyżej wspomniane punkty NIE DO KOŃCA są obiektywne a wszystko nie jest takie czarno-białe.
Tomasz Zieli?ski @ Jan 21st 2009 6:34AM
Postaram się wyjaśnić inaczej. Załóżmy, że komputer bez okularów wyrabia 60 klatek na sekundę. Gracz idzie do przodu, ma co sekundę 60 nowych obrazów na ekranie, każdy z innego miejsca, ruch jest płynny. Teraz podłączamy okulary, komputer nadal może obliczyć 60 obrazów na sekundę, ale ponieważ dla każdej pary klatek (lewe i prawe oko) obraz musi pochodzić z dokładnie tego samego momentu czasowego, efektywna płynność animacji zmniejsza się o połowę. Ponieważ każda pozycja gracza skutkuje teraz renderowaniem dwóch obrazów, uzyskamy tylko 30 klatek animacji na sekundę - każda realizowana w dwóch egzemplarzach.
Oczywiście do tego dochodzą narzuty o których pisałem, bardziej kosztowne niż sądzisz. Geometria każdej kaltki będzie liczona ponownie, nie da się dla już policzonej sceny w prosty sposób "przesunąć kamery".
Marek @ Jan 21st 2009 7:15AM
"...Niezależnie od tego, jak wypasioną kartę graficzną zamontowaliście w komputerze, sprawdźcie ile klatek na sekundę wyciąga w waszej ulubionej grze, a potem podzielcie to przez pięć..." Czyli w dużym uproszczeniu można przyjąć iż powyżej zacytowane zdanie lekko mija się z prawdą?
Dendrol @ May 9th 2009 7:51AM
eeeeeee malkontent. Sprawdz sobie ile plazm może już obsłużyć wyższe częstotliwości, i pamietaj że wszystkie podłącza się już do kompa