VIRTUAL AVIATION

Simulacra, Wirtualna Awiacja

Realnemu lataniu szybko zaczęła towarzyszyć komputerowa symulacja lotu. Z czasem obie dziedziny połączyły się w jedną całość dopełniając się wspaniale. Za pomocą symulacji i tworzenia własnych fotorealistycznych scenerii mogłem w każdym momencie przenieść się w dowolne miejsce USA czy Kanady do wspaniałych wspomnień Odysei, które spędzamy w powietrzu z moim bratem. Tak więc oprócz zdjęć i filmów, tysięcy wspomnień, symulacja pozwoliła niezwykle realistycznie przenosić mnie do świata podróży, który tak świetnie znam z lotniczych wypraw.

Zawsze walczyłem o najwyższą immersję symulacji, w tym celu stosuję wiele technik augmentujących wrażenie realności, pomagających wspomagać zmysły kluczowe dla pilota.

W świecie realnym przeleciałem ponad 60 000 mil morskich eksperymentalnym samolotem, dlatego mam niezły punkt odniesienia. Dokładnie wiem jak ziemia wygląda z powietrza. Jeżeli szukasz więcej informacji o projektowanych przeze mnie systemach symulacji, to przeczytasz więcej na stronie Immersion Designers. Poniżej przedstawiam film ilustrujący pracę zaawansowanego symulatora renderującego obraz w rozdzielczości 12K o kącie projekcji 190 stopni, wspomaganego systemem wibracji. Nie ma obecnie bardziej wydajnego symulatora oferującego wyższy stopień zanurzenia w lotniczym świecie, dysponującego bardziej szczegółową grafiką zza kokpitu i dającego prze tym lepszą płynność odwzorowania ruchu. Wraz z wysokiej jakości symulacją dźwięku i wibracji, najsilniej oddziaływują na pilota, dając mu ogromne poczucie realizmu. Nie raz słyszałem z ust certyfikowanych trenerów symulatorów przyprowadzających pilotów na sesje latania, że ten pilot już leci, już nie czuje tego że jest w pokoju, że symulator pośredniczy w jego interakcji z samolotem i powietrzem.


Alternatywny świat X-Plane

Myślę że jestem pierwszym w Polsce, który zaufał symulatorowi X-Plane. Znam go już niemal 30 lat. W mojej rodzinie lotnictwo to częsty temat, więc naturalnym było, iż od początków rozwoju pierwszych komputerów osobistych to właśnie programy do symulacji lotniczej cieszyły się moją największą uwagą. Tradycyjne gry komputerowe nigdy nie wydawały mi się interesujące. Więcej o mnie i historii moich realnych lotów wzdłuż i wszerz Ameryki możecie przeczytać na  blogu Artymowicz Aviation.

Jest to artykuł o historii i perspektywach X-Plane. Artykuł nie jest sponsorowany, w związku z czym będzie subiektywny ale też uczciwą oceną tego symulatora. Nie będzie laurką, miejscami może być krytyczny i mam nadzieję, że będzie to odebrane „na plus”. Wszak po niemal 30 latach nadal jest to mój jedyny system do lotów wirtualnych i na którym opieram moje kolejne projekty symulatorów o możliwie najwyższej immersji na jaką pozwala obecna technologia. Tak więc nie będzie to krytyka by zniszczyć produkt, wręcz odwrotnie by go wspomóc szczerym spojrzeniem w przyszłość. Mam nadzieję że będziecie wdzięczni za taki punkt widzenia obserwatora analizującego rozwój X-Plane na przestrzeni kilku ostatnich dekad. Życzę mu dobrze.

Cieniem bardzo delikatnego optymizmemu może napawać fakt, iż pojawienie się architektury graficznej Vulcan zamiast OpenGL, potencjalnie może przyspieszyć symulator (tak się dzieje w innych symulatorach). Oczywiście pod warunkiem iż Ben nauczy się ją prawidłowo zaimplementować i wreszcie wykorzystywać prawidłowo wielowątkowość nowoczesnych CPU, które niestety nie mają już nic do zaoferowania w dziedzinie zwiększania częstotliwości zegara. To niestety może potrwać. Tak więc trzymam kciuki. 

X-Plane kiedyś

Zacząłem swoją przygodę z X-Plane od wersji 4, ale w tej chwili nawet trudno odnaleźć zrzuty ekranowe z tak zamierzchłych czasów. To były lata 90-te. Mimo iż rozpoczynałem swoją przygodę z komputerami personalnymi od ZX Spectrum w 1983 roku, potem PC a od 1990 roku stałem się niezwykle szczęśliwym posiadaczem Macintosha Centris 650 kupionego na zniżkę studencką w księgarni Uniwersytetu Santa Cruz w Kalifornii. Od tego momentu sprzedałem wszystkie inne komputery i w dziedzinie symulacji lotniczej musiałem znaleźć stosowny program do wirtualnych lotów.

Wybór nie był wielki ale dobrze trafiłem. X-Plane od razu zwrócił moją uwagę swoją otwartą strukturą i szerokim nieustającym wsparciem użytkowników. Do każdego katalogu można było zajrzeć i odczytać pliki, nie używało się żadnych zbędnych instalatorów, które nie wiadomo gdzie umieszczają pliki i często utrudniają panowanie nad systemem. Z drugiej strony trzeba było zorientować się w drzewiastej strukturze katalogów, poznać kolejność warstw przy budowie scenerii, czyli wszystko to czego doświadczycie nawet teraz – trzy dekady później. 

Istotną zaletą X-Plane był nienajgorszy model lotu bazujący na “Blade theory”, cokolwiek by to znaczyło i jakim by marketingowym hasłem nie było. Podejrzewam znając Austina Mayera – twórce symulatora, że do dnia dzisiejszego model lotu niewiele się zmienił. Austin od zawsze był w nieuzasadniony sposób dumny i przekonany, że jego “flight model” jest perfect.

Z pewnością jest to znacznie uproszczona, nie do końca fizyczna symulacja. Gdyby tak było model lotu X-Plane nie zajmował by resztek 5-10% budżetu zwykłego CPU. Raczej trzeba byłoby uruchamiać go na sporych klasterach komputerowych, żeby prawidłowo symulował prawa fizyki. Choć z drugiej strony symulacja śmigłowcowa w X-Plane od dawna była wyżej oceniana niż w innych symulatorach to znaczy, że przynajmniej w tej dziedzinie nie jest aż tak źle.

A skoro już o wiropłatach to często wśród moich gości bywali m.in. absolwenci Dęblińskiej Szkoły Lotniczej i w przypadku AS350 rzeczywiście chwalili jego niezrównaną paskudną niestabilność. Z kolei wojskowi piloci wypowiadali się bardzo pozytywnie o moim poprzednim symulatorze na łamach jednego z miesięczników. W 2013 roku w Polsce Zbrojnej ukazał się artykuł poświęcony mojemu ówczesnemu projektowi symulatora zaprojektowanemu w oparciu o X-Plane.

Wygląd

X-Plane zawsze był daleko brzydszy od swoich konkurentów. To był właściwie pewnik, że jeżeli zobaczyło się piękne zdjęcie z symulatora, to można było się założyć, że pochodzi z innego symulatora. Mikroskopijna ekipa pisząca kod X-Plane była i bywa na bakier z estetyką, wyczuciem realiów – no wiecie – zadufani Amerykanie. Austinowi do dzisiaj wystarczyły by zapewne aby królowały kokpity 2D a brak fotorealistyczności nie byłby najmniejszym ograniczeniem.

Śliczności X-Plane 7
Nowatorski ze świetną widocznością lateralną kokpit X-Plane 9 w wersji 2D aspect ratio 4:3 na ekranie 16:9

Muszę przyznać że w jednej dziedzinie zgadzam się z Austinem: sam przestałem używać opcję wirtualnego kokpitu 3D, gdyż jestem autorem unikalnego kokpitu i zupełnie wyjątkowej projekcji wizualiów o rozdzielczości 12K na trzech 60 calowych monitorach. Przyjdzie czas, że napiszę o tym systemie stosowny artykuł. Ale wracając do programistów to pieszczotliwie nazywany – Benek czyli Ben Supnik zajmujący się graficzną reprezentacją świata, słynny z pychy, a może tylko i niestety ograniczonych umiejętności skuteczne (i mało subtelnie) broni się przed zarzutami, że X-Plane ma bugi, problemy z wydajnością i wciąż nienaprawione artefakty. Na pytania o to kiedy wreszcie usunie problemy paru sprzed lat nigdy nie podaje terminów czy gwarancji że coś przyspieszy. Dlatego zazwyczaj bugi przechodzą do następnej wersji pod płaszczykiem nowych wizualnych wodotrysków.

Najszybsza – najbardziej wydajna wersja symulatora bez nadmiernych wodotrysków wizualnych: X-Plane 9

Wydajność 

Szybkość symulacji w X-Plane w porównaniu z innymi symulatorami historycznie była jego atutem. Tak było właściwie do wersji X-Plane 9. Gdy nadeszła wersja 10, użytkownicy złapali się za głowę i zaczęli głośno przeklinać: osiągali 7-9fps w KSEA na systemach o wyższej rozdzielczości niż HD. To była całkowita porażka.

Frame time – skaczące tajemnicze cyferki prawdę Ci powiedzą. Trzeba tylko umieć czytać

Systemy które wspaniale pracowały z X-Plane 9, w ogóle nie mogły korzystać z wersji 10, przynajmniej przez kilka następnych lat. Szybkość systemu bardzo nieznacznie rosła rok po roku, starano się wykorzystywać bardziej GPU, ale wtedy oprogramowanie renderowania HDR (High Dynamic Range) było fatalne i stanowiło poważny hamulec systemu. Z kolei jeśli chodzi o wykorzystanie CPU to nigdy nie było dobrze. Zawsze świat rysowany był jednym rdzeniem!

Pewnie wiecie, że poważne duże firmy płacą ogromne pieniądze programistom, by programy były szybkie. Laminar Research poszedł tą drugą gorszą drogą. Płaci niewiele i niewiele można wymagać w dziedzinie optymalizacji pracy symulatora. No cóż jest to prywatna mała firma. Znam kilku dobrej klasy programistów, którzy dziwią się dlaczego symulator jest tak okrutnie napisany, że renderowanie 30-40 klatek na sekundę to wysokie osiągnięcie na systemach o wysokiej rozdzielczości obrazu. Wysokiej klasy programista mógłby przyspieszyć ten proces kilkukrotnie. Największym problemem jest iż najszybszy dostępny hardware nie pomoże. Jeżeli program jest słabo napisany nie pomoże złożenie komputera i za 20 tysięcy złotych. W tych czasach najbardziej liczy się jakość programowania. Kiedyś można było się poobijać i poczekać rok, aż nowe CPU z szybszym zegarem “zrobią robotę”, niestety w obecnych czasach to już nie zadziała.

Dźwięk

W tej dziedzinie od co najmniej kilkunastu lat walczyłem o godne traktowanie tego super ważnego medium w symulacji lotniczej. Na X-Plane.org założyłem w latach 2000’ dział Sound Engineering. Nic do Laminar nie trafiało, prośby ani groźby. Na próżno było szukać słuchu czy jakiejkolwiek auralnej wrażliwości u Austina. Samolot mógł mieć jedną 2 sekundową próbkę dźwiękową do reprezentacji odgłosów całego skomplikowanego silnika (silnik, śmigło etc.) To żart, nieprawdaż?

Z resztą do dziś jest tak przy starszych modelach samolotów. Źle nagrane, źle wykonane pętle z trzaskami, zniekształceniami. Częstotliwość próbkowania 22kHz (czyli pasmo 11kHz), paskudny aliasing i mnóstwo innych artefaktów przepełniały czarę goryczy. Wiadomym jest iż każdy pilot wyczulony jest ogromnie na każdą nieoczekiwaną zmianę brzmienia silników i że zmysł słuchu jest niesłychanie ważny w kokpicie bo może uratować życie. Wszyscy przymykali oko na fatalny dźwięk ciesząc tylko oczy.

Po kilku latach współpracy z jednym z projektantów modeli śmigłowców, udało się stworzyć architekturę dźwiękową o nazwie DreamEngine. To już było coś, dzięki niej stworzyłem pierwsze profesjonalne opracowania dźwięku dla firmy Precision Flight Controls, USA. Niestety było to za późnych czasów 32-bitowego X-Plane więc niezbyt długo można było z niej korzystać. Oparcie architektury dźwiękowej X-Plane oczywiście na niestety mocno przestarzałej wersji FMOD to bardzo niedawny dodatek. Zawsze to lepsze niż nic. Jeżeli będziecie chcieli więcej historii na temat dźwięku to napiszę oddzielny artykuł.

Scenerie Ortho4XP

To była prawdziwa rewolucja, która rozsławiła X-Plane bardziej niż cokolwiek innego! Oscar, autor programu Ortho4XP zainspirowany filmem kolegi Jaromaza na youtube, zwierzył mu się kiedyś, że był to punkt zwrotny i wtedy zaczął przymierzać się do pisania własnego, jak później się okazało cudownego i unikalnego w funkcjonalności i szybkości programu Ortho4XP. Właśnie tej klasy programistów brakuje w Laminar Research.

W poprzednich latach używaliśmy strasznie prymitywnych i koszmarnie wolnych programów do tworzenia fotoscenerii. Pamiętam jak dziś, że tworzyłem scenerię okolic San Francisco wraz z Zatoką Monterey. Było to ok 1.5 stopnia kątowego. Sam proces ściągania tekstur ziemi w zoom level 19 trwał pół roku! Ale to nie oznaczało, że już możemy uruchamiać X-Plane i lądować w KSFO. Dalsze procesy trwały jeszcze ponad tydzień. Poza tym jeżeli coś źle poszło z kolejnymi procesami (np. zanik napięcia), trzeba było je rozpocząć od początku. 

Rzeka Colorado, Utah, niebywałej precyzji siatka wysokości (ang.: mesh) i tekstury zoom 18 – widok lepszy niż z kokpitu prawdziwego samolotu

   Ortho4XP autorstwa Oskara w przenośni i dosłownie autor zesłał nam z nieba. Głębokie przemyślenie tematyki tworzenia foto-scenerii, super szczegółowej siatki wysokości, stopnia skomplikowania tego procesu, ujęcia wielu trudnych aspektów i niezwykle zgrabne zaprogramowanie całego procesu w jeden kombajn wykorzystując równoległą pracę rdzeni komputera to ogromny atut tego programu. Bez niego trudno wyobrażać sobie aktualny sukces X-Plane. Prawie nikogo nie interesuje już naciągana teoria świata autorstwa Austina o nazwie “plausible world”. Wiecie – 100 teksturek na cały świat. Po co oglądać sztuczne łaty tych samych brzydkich tekstur, skoro w bardzo szybkim tempie można stworzyć prawdziwy fotorealistyczny świat zza okna samolotu? 

RedBull Air Race

Tworzyłem wirtualne scenerie 3D torów słynnych wyścigowych RedBull Air Race dla dwóch pilotów tej fantastycznej formacji: czołowego pilota RBAR: Michaela Goulian’a oraz naszego rodaka: Łukasza Czepieli. Poniżej przedstawiam kilka zdjęć z wielokrotnych przelotów jednego z pilotów. Optymalizacja toru lotu jest ważnym zagadnieniem podczas wyścigów lotniczych i w tej dziedzinie przydaje się symulacja.

RedBull AirRace w Gdyni trening Łukasza Czepieli
X-Plane w służbie RedBull AirRace, trening wirtualny przed zawodami w Gdyni

Piloci mogą ćwiczyć loty nawet w pokoju hotelowym korzystając z joysticka, jeszcze zanim fizycznie znajdą się w tym miejscu w kokpicie samolotu. Zazwyczaj z wyprzedzeniem miesiąca przed wyścigiem dostawałem komplet danych geograficznych aby wykonać całkowitą wirtualną replikę okolic torów wyścigowych w dowolnym miejscu na świecie włącznie z super precyzyjnym ustawieniem każdego z pylonów.     

CPU i GPU

Jak część z Was zauważyła już około 7 lat temu skończyła się wspaniała era niemal liniowego przyspieszania prędkości procesorów za pomocą częstotliwości zegara. To bardzo smutny moment z którym z pewnością nie łatwo się jest pogodzić Benowi.

CPU scaling showing transistor density, power consumption, and efficiency. Chart originally from The Free Lunch Is Over: A Fundamental Turn Toward Concurrency in Software

Programowanie równoległe to niełatwa sztuka, w szczególności dla gorszych programistów (widać to doskonale w tak banalnej wydawałoby się rzeczy jak paskudne zatrzymania systemu podczas doładowywania kolejnych stopni kątowych fotoscenerii). Teraz liczy się tylko wysokiej klasy programowanie, gdyż kolejne wersje procesorów zwiększają jedynie ilość rdzeni zamiast podnoszenia częstotliwości zegara. Tutaj widać pewne zagrożenie dla rozwoju symulatora. Optymizm Bena jakoś stopniowo stygnie wraz ze zwiększaniem zaangażowania w przenosiny systemu graficznego z OpenGL do Vulcan, obawiam się że nie możemy tutaj liczyć na skromność programisty.

Zanurzyć w immersji i przyspieszyć X-Plane 11

Od czasów wprowadzenia X-Plane 10 stale towarzyszyła mi potrzeba aktywnego poszukiwania takich rozwiązań sprzętowych i programowych, aby oszukać nieco „wołowatą” substancję symulatora i wycisnąć z niej maksymalną wydajność. W tym celu tworzyłem i modyfikowałem kolejne systemy symulacyjne. Obmyślanie programowych sposobów na przyspieszenie symulacji. Uwieńczeniem tych starań jest system, który możecie zobaczyć na mojej stronie Immersion Designers. System ukończyłem pod koniec 2017 roku, wyświetla w każdej klatce 25 milionów pixeli i daje wspaniałą płynność symulacji. Z pozycji pilota nie widać pixeli na ekranie, dzięki specjalnym monitorom obraz jest bardzo kontrastowy i posiada bardzo wysoką luminancję. System posiada układ generujący wibracje oraz inne innowacje. To bardzo szeroki temat który teraz tylko sygnalizuję.

Projektujemy wysokowydajne systemy symulatorów X-Plane

Przyszłość X-Plane

Według mnie przyszłość X-Plane zależy w dużej mierze od tego czy i jak bardzo zwiększy się wydajność symulatora po przejściu do architektury Vulcan. Pozostaje mieć nadzieję na podwojenie klatkażu zarówno w wysokiej rozdzielczości wielomonitorowych instalacjach jak i wreszcie do uzyskania płynności obrazu renderowanego w Wirtualnej Rzeczywistości. Rozdzielczość okularów VR będzie stopniowo rosła umożliwiając uzyskanie ostrego wysokiej klasy obrazu, lecz to spowoduje znacząco większe obciążenie CPU/GPU. Mam nadzieję, iż wprowadzenie Vulcan przyspieszy znacząco symulator w obu dziedzinach.

Jeśli tak się nie stanie, to oznaczać może stagnację X-Plane w tych bardziej wymagających dziedzinach. Oczywiście mały procent użytkowników symulatora renderuje obraz w bardzo wysokich rozdzielczościach, niewielu z nich w ogóle kiedykolwiek widziało świat z kabiny pilotów i dla nich aktualny stan X-Plane 11.34b1 pozostanie wystarczający do i tak mało realistycznego pilotowania samolotu za pomocą taniego joysticka. Wszystkie instalacje profesjonalne muszą renderować obraz o wysokiej rozdzielczości i stopniowo rezygnuje się z użycia wielu komputerów w jednym systemie połączonych sieciowo. To eliminuje wiele potencjalnych kłopotów przy synchronizacji wyświetlanego obrazu, zmniejsza pobór mocy i potrzebę klimatyzacji pomieszczeń.

Znam firmy, które mają w tej dziedzinie kłopoty. Jak wiadomo X-Plane nie radzi sobie z wykorzystaniem kilku kart graficznych, dlatego też nie ma innej drogi niż podwyższenie jakości programowania symulatora. Symulator ten stale ma potencjał i właśnie transformacja na architekturę Vulcan może okazać się ważnym sprawdzianem dla programistów, od których zdolności bardziej zaawansowani użytkownicy będą wymagać najwięcej. Będą to wysokie wymogi głębokiej immersji w świecie nowej generacji symulacji lotniczej. 

Skomentuj

Proszę zalogować się jedną z tych metod aby dodawać swoje komentarze:

Logo WordPress.com

Komentujesz korzystając z konta WordPress.com. Wyloguj /  Zmień )

Zdjęcie na Google

Komentujesz korzystając z konta Google. Wyloguj /  Zmień )

Zdjęcie z Twittera

Komentujesz korzystając z konta Twitter. Wyloguj /  Zmień )

Zdjęcie na Facebooku

Komentujesz korzystając z konta Facebook. Wyloguj /  Zmień )

Połączenie z %s