Pl/FAQ

From FlightGear wiki
Jump to navigation Jump to search

Dziękujemy za zainteresowanie FlightGear! Ten FAQ zawiera listę najczęściej zadawanych pytań. Jeśli nie możesz znaleźć odpowiedzi na swój problem, proszę utworzyć temat na naszym forum This is a link to the FlightGear forum..

Dystrybucja

Skąd wziąć FlightGear?

Oficjalną stroną pobierania jest: https://www.flightgear.org/download/. Znajdziesz tam wersje binarne dla Windows, macOS oraz Linux (AppImage). W większości dystrybucji Linux, FlightGear można pobrać bezpośrednio z repozytoriów danej dystrybucji. Szukaj w "Centrum/Menedżer oprogramowania" Twojej dystrybucji.

Jak zainstalować FlightGear na Linux?

Wiele dystrybucji zawiera FlightGear w swoich repozytoriach. Ponadto w Centrum Pobierania znajdziesz też wersję skompilowaną do AppImage, którą uruchomisz na niemal każdej współczesnej dystrybucji. Jeśli nie możesz znaleźć wersji pakietowej dla siebie, rozważ pobranie i kompilację z kodów źródłowych.

Gdzie mogę znaleźć najnowszy kod źródłowy?

Najnowszy kod źródłowy jest dostępny dla każdego za pośrednictwem naszego repozytorium Git.

Gdzie mogę latać i skąd wziąć scenerie?

Latać można wszędzie, po całym świecie. Scenerie można pobrać na wiele sposobów. Obecnie najlepszą opcją jest automatyczne pobieranie scenerii w zależności od tego gdzie się znajdujesz. Służy do tego program TerraSync. Aby go włączyć wystarczy w Launcherze wejść do "Ustawienia" -> "Pobieranie" i tam zaznaczyć opcję "Automatycznie pobieraj scenerię".

Można także pobrać większe rejony świata ręcznie, ze strony Pobieranie Scenerii

Gdzie mogę zdobyć dodatkowe samoloty?

Najnowsze, oficjalne samoloty można pobrać i zainstalować jednym kliknięciem w zakładce samolotów w Launcherze (patrz FlightGear Qt Launcher).

Możesz także zajrzeć na oficjalną stronę Pobierania Samolotów.

Inne samoloty w fazie rozwoju możesz znaleźć w oficjalnym repozytorium samolotów FGAddon, a inne w hangarach FlightGear osób trzecich (patrz także Jak zainstalować samoloty).

Dlaczego samoloty na FlightGear.org są nieaktualne?

Samoloty z oficjalnej strony pobierania są aktualizowane tylko w momencie wydania nowej wersji FlightGeara. Dzieje się tak, ponieważ samoloty, które są obecnie w fazie rozwoju, są zwykle opracowywane dla rozwojowych/nieopublikowanych wersji FlightGeara. Te wersje rozwojowe mają wiele funkcji, które nie są obsługiwane przez starszą, stabilną wersję. Gdybyśmy częściej aktualizowali pobierane samoloty, większość samolotów nie działałaby w stabilnej wersji FlightGeara.

Jak aktualne są dane we FlightGear w porównaniu z rzeczywistością?

Korzystamy z tych samych danych nawigacyjnych i baz lotnisk co X-Plane. Aktualne bazy danych można znaleźć w folderach $FG ROOT/Navaids/ and $FG ROOT/Airports/. Jeśli chciałbyś zaktualizować lub poprawić nasze dane, zobacz http://flightgear.org/Docs/AirNav/AptNavFAQ.FlightGear.html, aby uzyskać instrukcje jak skontaktować się z administratorem bazy.

Czy FlightGear jest bezpłatny?

FlightGear można pobrać bezpłatnie z wielu miejsc, w tym ze strony internetowej FlightGear, ale można go również kupić na płycie CD/DVD. Chociaż oferujemy tę usługę (zobacz oficjalną stronę internetową), zachęcamy inne grupy do redystrybucji dla swoich użytkowników, zwłaszcza w ramach dystrybucji systemu operacyjnego, która sprawia, że instalacja jest jeszcze szybsza i łatwiejsza dla nowych użytkowników.

Czasami możesz znaleźć FlightGear na sprzedaż, na portalach aukcyjnych lub komercyjnych stronach internetowych pod inną nazwą. Można to zrobić całkiem legalnie, o ile warunki licencji są przestrzegane i może być warte kosztów, jeśli uwzględnione zostaną niektóre funkcje o wartości dodanej, takie jak dodatkowa sceneria, samolot lub wsparcie posprzedażowe. Niestety, większość przypadków obserwowanych do tej pory wydaje się być po prostu próbą zarobienia pieniędzy na sprzedaży czegoś, co jest bezpłatne i nie zapewnia prawdziwej wartości dodanej.

Jak mogę zacząć korzystać z FlightGear?

FlightGear można pobrać z Download Central. Po uruchomieniu Launchera, możesz doinstalować tam samoloty z oficjalnego hangaru. Włączając automatyczne pobieranie scenerii, FlightGear sam zadba o scenerię. Uważaj na wymagania systemowe! Sprawdź też Nowy we FlightGear.

Kompilacja

Jak skompilować FlightGear z kodów źródłowych?

Zobacz Budowanie FlightGear. Istnieją wyjaśnienia dla kompilacji pod Window, Linuks, a nawet skrypty do automatycznego pobrania i kompilowania całości.

Dlaczego FlightGear się nie kompiluje?

To zależy. Po pierwsze upewnij się że używasz odpowiednich wersji FlightGear, SimGear, plib, zlib. Jeśli którykolwiek z pakietów nie pasuje (wersją) do innych, kompilacja może się nie udać.

Upewnij się też czy masz implementację OpenGL ze wsparciem glut'a z odpowiednimi plikami nagłówkowymi. Użytkownicy Linuksa posiadający karty nVidia powinni się sprawdzić, czy mają najnowsze sterowniki. Inni posiadacze Linuks powinni mieć bibliotekę Mesa3d (http://mesa3d.org/). Sprawdź też czy masz dobrze zainstalowany i skonfigurowany serwer X-ów.

Jeśli dalej masz problemy, zapytaj na FlightGear forum This is a link to the FlightGear forum., na IRC lub zapisz się na naszą listę mailingową FlightGear-Users i daj nam znać, jaki masz problem.

Czym jest SimGear i dlaczego go potrzebuję?

SimGear jest biblioteką kodu pomocniczego. SimGear jest potrzebny tylko wtedy, gdy planujesz skompilować FlightGear - nie jest potrzebny do uruchamiania prekompilowanych binariów. Więcej informacji znajdziesz na stronie http://www.simgear.org/. Uwaga: Podczas kompilacji FlightGeara bardzo ważne jest posiadanie pasującej wersji SimGeara.

Konfiguracja i uruchomienie

Jak uruchomić FlightGear?

Najprostszym sposobem jest użycie Launchera. Alternatywnie możesz go uruchomić z terminala używając opcji wiersza poleceń.

Jak zainstalować nowe scenerie?

Jeśli naprawdę nie chcesz/nie możesz używać Terrasync, pliki archiwum scenerii (np. w100n30.tar.gz) powinny zostać rozpakowane do katalogu Scenery/Terrain w Twoim $FG_ROOT. Więcej na Instalowanie scenerii.

Jak skonfigurować mój joystick?

FlightGear obsługuje wiele joysticków/wolantów od razu po podłączeniu. Jeśli jednak masz problemy, zobacz Urządzenie wejściowe.

W jakim formacie powinien być mój osobisty plik .fgfsrc?

Twój plik .fgfsrc powinien po prostu być listą opcji wiersza poleceń, z każdą opcją w osobnej linii. Plik ten nie jest plikiem XML.

Jeśli wolałbyś korzystać z plików konfiguracyjnych XML mógłbyś dodać coś takiego do pliku .fgfsrc lub do wiersza poleceń:

--config=/ścieżka/do/pliku.xml

Prawie każda opcja odpowiada właściwości, więc możesz wybrać metodę która Ci najlepiej odpowiada.

Jak dostać się do opcji, pomocy itp.?

Prawdopodobnie nie widzisz głównego menu. Aby je wyświetlić naciśnij F10.

Latanie

Jak uruchomić silnik/i?

Samoloty różnią się w swoich procedurach startowych. Niektóre mogą mieć sekwencję automatycznego startu lub instrukcje w menu pomocy samolotu (naciśnij klawisz ?) i/lub na stronie Wiki o statkach powietrznych. Zapoznaj się z Podręcznikiem FlightGear lub zobacz szybki przewodnik.

Gdzie jest przesuwana mapa?

W symulatorze można wejść w menu "Wyposażenie > Mapa", ale nie jest to mapa lotnicza. Popularna ruchoma mapa jest dostępne w ramach osobnego projektu o nazwie Atlas. Jest również MPmap - mapa online dla multiplayer.

Jeśli lubisz alternatywę dla Atlasa z uaktualnioną grafiką i mapami dostarczanymi przez projekt OpenStreetMap, to sprawdź Phi lub JMapView.

Gdzie mogę się nauczyć latania według wskazań przyrządów i nawigacji?

Jest dobry artykuł Understanding navigation oraz jest to bardzo dobrze wyjaśnione w Podręczniku FlightGear. Inne zasoby to:

  • See How It Flies - bardzo dobra książka autorstwa Johna S. Denkera, dostępna online.

Jaka jest różnica między lotką a sterem kierunku?

W tej samej książce jest trochę informacji o lotkach i sterze kierunku.

Czy FlightGear wspiera multiplayer?

Oczywiście. Zobacz Howto: Multiplayer. Zarówno wersje Windowsowe jak i Unixowe obsługują tryb wieloosobowy na serwerach FlightGear. Również komunikacja głosowa jest obsługiwana dzięki FGCom.

Mapa pokazująca samoloty graczy online w czasie rzeczywistym jest dostępna jako MPmap.

Gdzie są najlepsze miejsca do latania w FlightGear?

Sceneria FlightGear obejmuje cały świat, ale dzięki społeczności użytkowników FlightGear, niektóre lotniska i obszary są bardziej szczegółowe niż inne:

  • W okolicach Paryża we Francji jest wiele wysokiej jakości modeli scenerii.
  • EHAM Amsterdam Schiphol, EGK Londyn Gatwick i LFPG Paryż Charles de Gaulle są jednymi z najwyższej jakości lotnisk.
  • LOWI Innsbruck jest zarówno rozwinięty w scenerii jak i na lotnisku.
  • TNCM St. Maarten jest popularnym celem podróży, a okoliczne wyspy (Anguilla, St. Eustatius, Saba, St. Barthélemy, St. Kitts i Nevis) są dobrze wymodelowane.

Ponadto zobacz sugerowane loty, sugerowane lotniska i sugerowane scenerie niestandardowe.

Gdzie mogę znaleźć informacje o lotniskach i mapy lotnicze online?

Lotniska:

Mapy:

Zobacz także pozyskanie map lotniczych.

Czy we FlightGear jest możliwość prowadzenia działań militarnych np. prowadzenia walk powietrznych lub zrzucania bomb?

Tak. Sprawdź dodatek Bombable i Bombable topic on the forum This is a link to the FlightGear forum.. Istnieją również scenariusze bombardowania dla A-10 i innych samolotów z uzbrojeniem, jak North American OV-10A Bronco, General Dynamics F-16 i F-117 Nighthawk.

Problemy z lataniem

Dlaczego moje powierzchnie sterowe wracają do określonej pozycji?

Jest kilka możliwości, które mogą do tego doprowadzać:

Dlaczego mój kokpit znika, gdy się rozglądam?

Prawdopodobnie używasz wersji samolotu z panelem 2D. Upewnij się, że wybrałeś ten z kokpitem 3D. Większość samolotów ma go teraz!

Wokół lata mnóstwo innych samolotów

FlightGear posiada tak zwany system sztucznego ruchu lotniczego (AI Traffic). System ten generuje sterowane przez komputer samoloty na podstawie prawdziwych planów lotu, aby świat we FlightGear wyglądał bardziej żywo. Aby wyłączyć sztuczny ruch idź do menu "SI" > "Ruch lotniczy oraz scenariusze" i odznacz opcję "Enable AI traffic".

Jeśli natomiast nie widzisz żadnych samolotów poza swoim, rozważ przyczynienie się do dodania ruchu w swoim ulubionym miejscu!

Samolot ciągle skręca w lewo, nie mogę lecieć prosto!

Tak, FlightGear jest prawdziwym symulatorem lotu i modeluje te efekty. Dokładnie tak zachowują się prawdziwe samoloty śmigłowe. Zobacz zrozumienie momentu obrotowego śmigła i współczynnika P. Sprawdź też rozkład obciążenia samolotu.

Wkład własny

W jakim języku napisany jest FlightGear?

Głównie C++ z pewną ilością wspierającego kodu C, który jest głównie zawarty w SimGear. Więcej szczegółów na temat użytych języków:

Ponieważ wydajesz się być zainteresowany rozwojem rdzenia, powinieneś naprawdę sprawdzić Howto:Start core development.

Jak zaprojektować model dynamiki lotu do nowego samolotu?

FlightGear obsługuje różne modele dynamiki lotu (FDM), ale tylko dwa z nich są powszechnie używane:

  • JSBSim: patrz http://jsbsim.sf.net/.
  • YASim: jeśli chcesz pracować z prostszym FDM, spróbuj swoich sił w YASim. Przewodnik dotyczący tworzenia samolotów YASim znajduje się w podstawowym pakiecie FlightGear w pliku $FG_ROOT/Docs/README.yasim.

Zobacz Portal rozwoju samolotów.

Jak zaprojektować albo zmienić panel?

Zobacz plik $FG_ROOT/Docs/README.xmlpanel.

Skąd mogę się nauczyć programowania 3D i zaangażować się?

Jeśli chciałbyś stworzyć trójwymiarowy kokpit samolotu do FlightGear lub stworzyć budynki, zewnętrzne modele samolotów itp., Twoja pomoc jest bardzo potrzebna. Postaraj się nie przesadzać ze złożonością siatki. Najczęściej używanymi narzędziami są tutaj Blender, AC3D, Gimp.

Jeśli natomiast naprawdę chcesz wejść w programowanie w C++, będziesz musiał kupić sobie dobrą książkę o OpenGL. Jednak, FlightGear korzysta z biblioteki wysokiego poziomu OSG, wydajnego zestawu narzędzi do grafiki 3D. Aby rozpocząć pracę z kodowaniem 3D w C++, możesz przejrzeć dokumentację OSG i nauczyć się tylko tyle OpenGL, ile będziesz potrzebować.

Jak mogę dodać lotnisko?

Proces ten obejmuje stworzenie układu lotniska w WorldEditor, przetestowanie go (możesz chcieć wygenerować część scenerii, ale nie jest to obowiązkowe), a następnie, jeśli twoje źródła danych są zgodne z GPL, użycie WorldEditor do przesłania go do bramki. Lotnisko będzie dostępne w następnej pełnej przebudowie scenerii, chyba że chcesz wygenerować własną scenerię. Więcej na Howto:Make an airport.

Czy mogę stworzyć własną scenerię?

Tak, choć może to być trudne zadanie. Generowaniem scenerii dla FlightGeara zajmuje się siostrzany projekt TerraGear. Dobrą wiadomością jest to, że gdy już wszystko ustawisz, jest to dość łatwe (choć może być czasochłonne), a przede wszystkim, że możesz to łatwo udostępnić.

Problemy

X-y nie działają / są uszkodzone / złe / nie uruchamiają się

FlightGear jest bardzo skomplikowanym programem. Jeśli potrzebujesz pomocy w ogólnym użytkowaniu symulatora, znajdziesz ją na portalu Użytkownika oraz na forum FlightGeara This is a link to the FlightGear forum..

Jeśli Twoim problemem jest zawieszanie się oprogramowania, otrzymujesz błędy itp., rozważ zastosowanie się do wskazówek zawartych na stronie rozwiązywania problemów.

Niektóre z najczęściej występujących problemów są jednak wymienione poniżej. Jeśli nie możesz rozwiązać problemu samodzielnie i potrzebujesz pomocy kogoś, proszę pamiętaj, że jesteśmy wszyscy tutaj dla zabawy, deweloperzy również, i że każda pomoc jest aktem hojności. Więc postaraj się być miły, nawet jeśli problem cię frustruje.

Nie można wykonać pliku: bin/Win32/fgrun.exe podczas instalacji

This section contains out-of-date information

Please help improve this article by updating it. There may be additional information on the talk page.

W Twoim systemie brakuje bibliotek runtime MSVC wymaganych przez FlightGeara. Pobierz i zainstaluj następujące vcredist_x86.exe:

Co się stało z panelem, klawiaturą itp.?

Problemem jest prawie na pewno to, że Twój pakiet bazowy (FGData) nie jest zsynchronizowany z FlightGearem. Wiele konfigurowalnych części FlightGeara jest zdefiniowanych w plikach XML zawartych w pakiecie podstawowym.

Dlaczego FlightGear działa tak wolno?

Jeśli wydaje Ci się, że FlightGear działa zbyt wolno, sprawdź w Howto: Improve Framerates, czy możesz pokombinować z ustawieniami grafiki.

Jeśli wszystko działa skrajnie wolno (np. ~1 klatka na sekundę), być może sprzętowa akceleracja 3D nie jest aktywna. Upewnij się, że masz zainstalowane biblioteki OpenGL i poprawnie skonfigurowane oraz upewnij się, że masz najnowsze sterowniki do swojej karty graficznej. Bądź również świadomy, że niektóre karty graficzne nie są zbyt dobrze wspierane.

Jak sprawdzić liczbę klatek na sekundę?

W symulatorze idź do menu "Widok" > "Opcje widoku" i zaznacz tam opcję "Show frame rate".

Jak zmienić ustawienia kokpitu 2D?

Aby pokazać/ukryć panel 2D użyj kombinacji klawiszy Shift+P. Aby wyświetlić/ukryć HUD, naciskaj klawisz Shift+H. Możesz też włączyć alternatywny HUD przez naciśnięcie Shift+I (naciśnij I aby wrócić do domyślnego). Klawiszem Shift+H dostosujesz jasność HUD-a.

Utknąłem do góry nogami po rozbiciu się?

Szybką odpowiedzią jest zresetowanie symulatora, poprzez menu "Plik" > "Zresetuj". To ustawi twój samolot z powrotem w pozycji startowej.

Alternatywnie naciśnij Ctrl+U (w domyślnej konfiguracji), aby podnieść samolot o 1000 stóp.

Dla upartych: sztuczka do nauki. Aby wrócić do normalnej (nie odwróconej) pozycji, wznieś się o 500 stóp i obróć się przy użyciu lotek o 180*. Pamiętaj, sterowanie działa odwrotnie gdy jesteś do góry nogami i utrzymuj prędkość!

Dlaczego najnowsze wersje niektórych samolotów nie działają w mojej (starszej) wersji FlightGeara?

Często rozwój nowych samolotów nadąża za rozwojem kodu FlightGeara. Nowe lub nowo zmodyfikowane samoloty mogą korzystać z plików (takich jak nowe pliki instrumentów) lub funkcji dostępnych tylko w nowszych wersjach FlightGeara. Jeśli utknąłeś w starszej wersji FlightGeara, możesz spróbować pobrać wcześniejszą wersję samolotu z odpowiedniego oficjalnego hangaru FlightGear.

Kiedy uruchamiam FlightGear widzę błąd wspominający o "SQLite". Co mam zrobić?

Od wersji FlightGear v2.10 (wydanej w lutym 2013) wprowadzono pamięć podręczną navdata, aby poprawić czas uruchamiania FlightGeara. Ta pamięć podręczna to baza danych SQLite, która czasami jest trochę niestabilna. Jeśli baza danych jest uszkodzona, FlightGear nie będzie mógł się uruchomić.

Aby to naprawić musisz po prostu usunąć plik $FG_HOME/navdata.cache. Przy pierwszym uruchomieniu FlightGeara, po usunięciu pliku, pamięć podręczna navdata zostanie odbudowana. Ponieważ proces ten jest czasochłonny, uruchomienie FlightGeara zajmie więcej czasu.

Niektórzy uciekają się do usunięcia całego katalogu $FG_HOME lub nawet ponownej instalacji FlightGeara. Jednak żadne z nich nie jest potrzebne i może spowodować utratę wszelkich skonfigurowanych niestandardowych preferencji.

Kolejnym wskaźnikiem problemu związanego z SQLite jest komunikat o błędzie:

  Sqlite error:attempt to write a readonly database (8) while running:
     INSERT OR REPLACE INTO stat_cache (path, stamp) VALUES (?,?)

W takim przypadku, wcześniej uruchomiona instancja FlightGeara może nadal działać i blokować plik navdata.cache. Sprawdź, czy działa inny proces fgfs i zakończ go.

Mój samolot ma szare okna?

Problem nieprzejrzystych szarych okien, prze które nie można nic zobaczyć, jest najczęściej spowodowany niezgodnością wersji programu FlightGear i samolotu. Lub może to być spowodowane efektem okna, który nie jest zgodny z systemami renderowania Rembrandt lub ALS. Przyczyną techniczną jest niezgodność renderera i zadeklarowanego efektu dla okna. Niektóre rozwiązania obejmują:

  • Jeśli używasz stabilnej wersji FlightGeara, pobierz samolot z oficjalnego hangaru pasującego do Twojej wersji FlightGeara.
  • Jeśli używasz najnowszej wersji z builda nocnego lub samodzielnie skompilowanej wersji FlightGeara lub chcesz używać najnowocześniejszego samolotu, zobacz FGAddon - pozyskiwanie samolotu.
  • Jeśli korzystasz z samolotu z jednego z nieoficjalnych hangarów, najlepiej skontaktuj się z oryginalnym autorem samolotu lub osobą odpowiedzialną za ten hangar.
  • Jeśli używasz Rembrandta, spróbuj wyłączyć ten system renderowania. Samoloty, które używają model-default.eff dla okien (prostym kosztem nierobienia niczego) zamiast model-transparent.eff, model-combined-transparent .eff lub glass.eff (które instruują Rembrandta, aby nie używał odroczonego renderowania dla szyb) będą miały szare okna podczas używania Rembrandta.

Mój ekran staje się całkowicie czerwony zaraz po uruchomieniu FlightGear

Czerwony ekran to wizualizacja efektu "redout" (napływ krwi do głowy pilota z powodu zbyt dużych przeciążeń). Jeśli pojawia się zaraz po uruchomieniu FlightGeara, może to być spowodowane problemem z ładowaniem scenerii. FlightGear ładuje scenerię w locie, a jeśli scenerii nie można załadować, np. ze względu na problemy z siecią, może nie być podłoża, na którym można zlokalizować statek powietrzny. W rezultacie samolot spada przez nieistniejący grunt, zaczynając się przewracać doprowadzając do nadmiernych przeciążeń. To z kolei powoduje efekt czerwonej planszy. Aby zweryfikować problem, należy rozpocząć lot w KSFO, którego sceneria jest już zawarta w pakiecie podstawowym.

FAQ

Z kim się kontaktować w sprawie tego FAQ?

Dodaj komentarz na temat FAQ na tej stronie.

Jak stary jest ten dokument?

Sprawdź jego historię.

Jaką inną dokumentację powinienem przeczytać?

Wkład własny

Ochrona treści

DRM

Cleanup.png This article may require cleanup to meet the quality standards of the wiki. Please improve this article if you can.

Co jakiś czas pojawia się pytanie, czy dostarczanie do do FlightGeara zamkniętego kodu źródłowego wtyczki (dokładniej wtyczki czytnika plików OSG) jest legalne. Jedyną potrzebą trzymania kodu w pobliżu jest zapobieganie inżynierii wstecznej. [1][2][3]

FlightGear w obecnej postaci jest efektem pracy wielu ludzi, którzy dobrowolnie pracują nad wspólnym wysiłkiem stworzenia otwartej i rozszerzalnej platformy symulatora lotu. Sam Twój pomysł wprowadzenia DRM jest wbrew wszelkim zasadom open source.

Możesz swobodnie stworzyć samolot dla FlightGeara na licencji własnościowej - to są dane z perspektywy symulatora i nie uruchamiają licencji. Możesz to sprzedawać, nie pozwalając na ponowną dystrybucję kodu źródłowego. Musisz trzymać się z dala od kilku rzeczy (nie możesz używać ogólnych instrumentów, bibliotek Nasal,...) ale to powinno być do zrobienia. Możesz pobierać opłaty licencyjne za taki samolot i nikt nie może go redystrybuować.[4]

dane są analizowane z XML-a do dynamicznych tabel wyszukiwania (IE. STL). Jedynymi zasobami używanymi poza tym, co jest potrzebne do stworzenia funkcji FDM, jest narzut związany z wyciąganiem danych z pliku XML do pamięci. To musiałoby się zdarzyć bez względu na to, w jakiej formie były dane. Chociaż mogą istnieć lepsze sposoby przechowywania danych niż XML-e, jeśli nie przejmujesz się interakcją człowieka z danymi. Myślę, że uczynienie danych czytelnymi/edytowalnymi dla człowieka jest głównym celem używania XML-i. Może być zbyt gadatliwy, ale działa i istnieją standardowe biblioteki do odczytu/parsowania plików XML, dzięki czemu używanie ich do wprowadzania danych jest dość proste. Jest to korzystne zarówno dla FlightGeara, jak i JSBSim pod względem ograniczenia złożoności obsługi danych konfiguracyjnych. Ponadto istnieje ograniczona liczba standardowych formatów dla tego typu rzeczy, takich jak JSON, a wszystkie te, które są czytelne/edytowalne przez człowieka, mają wiele takich samych problemów jak XML. W pełni funkcjonalne FDM są złożone, a zrozumienie XML-a używanego do konfiguracji złożonego FDM jest bardzo drobnym problemem, a każdy, kto faktycznie rozumie w pełni funkcjonalny FDM, będzie miał bardzo niewiele problemów z częścią XML.[5]

FlightGear sam w sobie jest OpenSource, więc niezależnie od tego, w jakim systemie DRM chcemy zakodować dane, każdy może go usunąć (i jest to całkiem legalne). Nie trzeba się zastanawiać, aby wygenerować wersję FlightGear bez ochrony praw autorskich i rozpowszechnić ją, na której Twoja treść działa bez klucza (lub czegokolwiek innego). Biorąc pod uwagę, że ludziom zwykle udaje się złamać schematy DRM przy braku otwartego kodu źródłowego, próba zrobienia tego z kodem źródłowym otwartym dla każdego wydaje się po prostu stratą czasu. Po drugie, jakikolwiek format pliku odczyta OSG, zanim dotrze do renderera, musi być tablicą wierzchołków. Renderer tego potrzebuje, na etapie GLSL nie ma deszyfrowania. Więc są szanse, że skoro działamy na *Open*GL, to znowu każdy, kto naprawdę chce, może wypisać niezaszyfrowany format.[6]

Ponieważ FlightGear jest open source, niezwykle łatwo jest dodać kod, aby uzyskać dostęp do grafu sceny 3D i wyodrębnić pełny model samolotu (z wyłączeniem skryptów, chociaż można je odtworzyć). Informacje po prostu tam siedzą, w pełni widoczne i gotowe do pobrania z gałęzi OSG jak duża soczysta brzoskwinia. Prawdopodobnie mógłbym napisać ten kod w pół dnia, ale konwersja do formatu AC3D, tekstur PNG itp. w celu odtworzenia nowej kopii samolotu zajęłaby trochę więcej czasu. Gdyby FlightGear miał zamknięty kod źródłowy, napisanie kodu ekstraktora OSG byłoby znacznie trudniejsze, ale mimo to nadal wykonalne.[7]

Właśnie z tego powodu mamy wsparcie dla katalogów i zewnętrznych hangarów. Oczywiście chcemy zachęcać do tworzenia samolotów na licencji GPL, ale nie każdy twórca samolotów chce lub może udostępniać swoje prace na licencji GPL. FlightGear szanuje i wspiera tę opcję. [8]

Z pewnością można uruchomić model FDM z zewnątrz i użyć jednej z wielu opcji sieciowych I/O we FlightGear, aby przesyłać dane tam i z powrotem. W przeszłości zrobiono to w kilku projektach badawczych, aby wykorzystać FlightGear jako narzędzie do wizualizacji. Co za tym idzie, możesz zrobić to samo w przypadku skryptów - uruchomić skrypty na zewnątrz i wchodzić w interakcje z FlightGearem za pośrednictwem jednego z tych protokołów.[9]

Jeśli faktycznie spróbujesz pobierać opłatę 100$ za samolot dla FlighGear, nie znajdziesz zbyt wielu klientów, ponieważ FG jest popularny głównie w społeczności OpenSource. Jeśli sprawisz, że będzie to zbyt kłopotliwe za pomocą DRM-ów, być może ktoś spróbuje to obejść dla zasady (ludzie robią to dla sportu) - nie jest łatwo sprawić by wieloplatformowy DRM nie był irytujący dla użytkowników.[10]

Należy pamiętać, że bez względu na format źródłowy (dll, zaszyfrowany + podpisany, binarny itp.), ostatecznie siatka modelu, tekstury i struktura logiczna są wczytywane do wewnętrznych struktur klas OSG. Po zakończeniu tego procesu, aby model mógł zostać wyrenderowany na ekranie, osoba może wywołać odpowiednią funkcję write*File() w celu zapisania poddrzewa modelu w dowolnym obsługiwanym formacie. Jedyne, co jest potrzebne, to dostęp do kodu źródłowego FlightGeara, aby wstawić wywołanie funkcji w strategicznym miejscu. W ostatecznym rozrachunku nie możesz całkowicie chronić swojej treści, jeśli nie masz pełnej kontroli nad sytuacją na poziomie kodu źródłowego aplikacji. I jest to klasyczna strategia hakowania ochrony przed kopiowaniem, wstawiaj magię do kodu po uwierzytelnieniu/załadowaniu/dekodowaniu formatu dystrybucji, a następnie zapisz go w "odszyfrowanym" formacie. Ludzie robią to cały czas, nawet z zastrzeżonym kodem. Wartość celu zwykle określa, jak ciężko są skłonni pracować, aby go ukraść.[11]

Dodanie wsparcia dla DRM do FlightGear nie nastąpi - skrypty Nasal są domyślnie dostarczane w formacie zwykłego tekstu (podobnie jak JavaScript), natomiast zaciemnianie jest oczywiście możliwe, jednak nie ma to żadnego sensu w kontekście FlightGear jako projektu otwarto źródłowego.

Ponadto skrypty mogą być łatwo udostępniane i uruchamiane przez użytkowników, po prostu je wymieniając lub kopiując.

Nawet gdybyś zrzucił pośredni kod bajtowy Nasal do pliku obiektowego i wykonał to za pomocą maszyny wirtualnej Nasal, nie byłoby możliwości wyegzekwowania DRM.

Oczywiście, ponieważ FlightGear jest open source, możesz po prostu dodać obsługę DSO/wtyczek do rozwidlenia FlightGear i oprzeć całą swoją pracę na tym rozwidleniu - z drugiej strony, twoje modyfikacje nadal będą musiały być udostępniane.

Istnieje sposób na tworzenie legalnych dodatków z zamkniętym kodem źródłowym: możesz napisać cały "tajny" kod C++ jako zewnętrzną aplikację i pozwolić jej komunikować się z FlightGearem za pośrednictwem gniazd sieciowych. To powinno działać w miarę dobrze. Ale nie oczekuję, że zdobędziesz wielu klientów. Przede wszystkim, przynajmniej w Linuksie, nikt nie chce uruchamiać binarnych blobów, które mogłyby z łatwością wymazać katalog domowy podczas zabawy we FlightGear. A potem dzieje się tyle darmowych samolotów, z dużym rozmachem, że prawdopodobnie zawsze będziesz w tyle. A ci programiści mają bliskie powiązania z (lub są) programistami FlightGeara, więc mają tę zaletę, że mogą w dowolnym momencie zmienić kod FlightGeara według własnych upodobań. Mogą zmieniać interfejs do woli, a ty musisz nadrobić zaległości i zająć się reklamacjami klientów, którzy nagle siadają na zepsutym binarnym blobie, który nie działa z ostatnią wersją FlightGeara. I wreszcie, to podejście do gniazd działa tylko za pośrednictwem systemu właściwości i jest otwarte do wglądu dla każdego (oprócz niedawno dodanej półtajnej właściwości wektora śmieci).

FlightGear nie ma możliwości ładowania samolotów z bibliotek współdzielonych. Możesz rozpowszechniać swój samolot na licencji zastrzeżonej, tak jak robi to Vitos, ale nie jako biblioteka współdzielona. Zmiana we FlightGear, aby mógł ładować samoloty z bibliotek współdzielonych, wymagałaby dużo pracy. Kto miałby to robić i dlaczego ktokolwiek miałby to robić, skoro mógłby poświęcić swój czas na ulepszanie wolnego oprogramowania? I dlaczego główni twórcy FlightGear mieliby akceptować taki wkład?[12]

Realistycznie patrząc, jeśli chcesz sprzedać komercyjny samolot, twoją bazą klientów będzie Flight Sim X, X-Plane, Prepar3D. Po prostu nie uzyskasz żadnej przyczepności w ekosystemie FlightGear. Nie jest on do tego stworzony. [13]

Poza tym obsługa języka skryptowego OSG (lua) nie może uzyskać dostępu do wszystkich wewnętrznych funkcji Nasal, po prostu dlatego, że we FlightGear nie zaimplementowano kodu łączącego. Więc nie ma żadnych właściwości dla ciebie i żadnego dostępu do wewnętrznego wywołania funkcji, które zapewnia Nasal. [14]

  1. Paul Guhl  (Aug 25th, 2011).  [Flightgear-devel] Content protection for modders? .
  2. Soitanen (Aug 28th, 2014). Re: Encrypted aircraft dynamics post on the forum This is a link to the FlightGear forum.
  3. Alan Teeder  (Oct 21st, 2015).  [Flightgear-devel] External FDM to protect propriety data in a GPL eviirenment .
  4. Thorsten Renk  (May 9th, 2016).  Re: [Flightgear-devel] can i distribute my airplane as a shared library, and what legislation issues would that ensue? .
  5. hvengel (Aug 28th, 2014). Re: Encrypted aircraft dynamics post on the forum This is a link to the FlightGear forum.
  6. Thorsten Renk  (May 9th, 2016).  Re: [Flightgear-devel] can i distribute my airplane as a shared library, and what legislation issues would that ensue? .
  7. Edward d'Auvergne  (May 10th, 2016).  Re: [Flightgear-devel] can i distribute my airplane as a shared library, and what legislation issues would that ensue? .
  8. Stuart Buchanan  (May 10th, 2016).  Re: [Flightgear-devel] botom line: if i don't my aircraft to be subject to GPL FGAddon clauses .
  9. Stuart Buchanan  (May 10th, 2016).  Re: [Flightgear-devel] can i distribute my airplane as a shared library, and what legislation issues would that ensue? .
  10. Thorsten Renk  (May 9th, 2016).  Re: [Flightgear-devel] can i distribute my airplane as a shared library, and what legislation issues would that ensue? .
  11. Curtis Olson  (May 9th, 2016).  Re: [Flightgear-devel] can i distribute my airplane as a shared library, and what legislation issues would that ensue? .
  12. Ludovic Brenta  (May 9th, 2016).  Re: [Flightgear-devel] can i distribute my airplane as a shared library, and what legislation issues would that ensue? .
  13. geneb  (May 9th, 2016).  Re: [Flightgear-devel] can i distribute my airplane as a shared library, and what legislation issues would that ensue? .
  14. Erik Hofman  (May 9th, 2016).  Re: [Flightgear-devel] can i distribute my airplane as a shared library, and what legislation issues would that ensue? .