YSFlight

YSFlightпропрієтарний, безкоштовний ігровий авіасимулятор для платформ Windows, OS X та Linux-подібних операційних систем таких як Ubuntu.[1]

YSFlight
Тип Авіасимулятор
Розробник Soji Yamakawa
Перший випуск 15 квітня 1999 (1999-04-15)
Стабільний випуск 20150425 (25 квітня 2015 (2015-04-25))
Платформа кросплатформенна
Операційна система 32-bit & 64-bit, Windows
Linux
Mac OS X
Розмір 20 Мб(залежно від типу операційної системи)
Доступні мови англійська, японська
Стан розробки активний (1999-)
Ліцензія Безкоштовне програмне забезпечення
Вебсайт ysflight.com

Історія

Розробка YSFlight почалася у 1999 році завдяки Soji Yamakawa. Він вперше почав працювати над симулятором ще коли навчався в школі, і згодом перетворив його в наочний посібник для тих хто хоче зрозуміти як працюють аеронавігаційне обладнання літаків та ознайомитися з фізикою польоту. Він продовжує працювати над цим авіасимулятором самостійно, і зазвичай щороку випускає тестові та стабільні версії. Розпочавши цей проект в першу чергу для запуску на застарілих та комп’ютерах з малою потужність й можливостями, згодом розробник почав переключатися на використання більш сучасних механізмів відображення ігрової графіки. Сам інтерфейс та функціональність з часом зазнали змін, і зараз гра у нових версіях виглядає більш реалістично ніж в попередніх.

Особливості розробки

Однією з головних цілей проекту було використання власних мінімально необхідних вільних програмних бібліотек.

  • FSGUI Library - вільна бібліотека графічного інтерфейсу, для створення 3D програм на основі технологій OpenGL[2]
  • YS-Class Library - вільна програмна бібліотека для обробки полігонів в 3D просторі та виведення результату на 2D площину[3]

Ліцензія на дані програмні бібліотеки виглядає наступним чином:

About Copyright I keep the copyright of the files included in the package. However, you can use this library for your own product, regardless of free or commercial, proprietary or open source, if you agree to take all responsibility on the consequence of using any contents included in the library package and I will not take any responsibility. If you disagree, please do not use YS-Class library. There is no string attached. Use of this class library will NEVER obligate you to disclose your source code.

Згідно з цією ліцензією YSFlight створений на основі вільних програмних бібліотек, але сам по собі симулятор є не вільною, а лише безкоштовною грою із закритим джерельним кодом.

Можливості і особливості

YSFlight відрізняється від інших подібних симуляторів, таких як Microsoft Flight Simulator X, тим що стандартні моделі транспортних засобів не містять текстур, а стандартні карти місцевості містять текстури низької роздільної здатності.[4] З іншого боку наявні спрощене відображення кабіни літака та основних аеронавігаційних інструментів роблять його краще зрозумілим для користувачів. Користувач може грати без підключення до мережі, або ж в режимі мережевої гри, в котрому можливе підключення одночасно до 16 YSFlight-клієнтів.[5] Гра добре працює і на старіших комп'ютерах, конфігурації яких зазвичай вже недостатньо для роботи інших сучасних авіасимуляторів.[6]

Політ Kawasaki T-4 на низькій висоті у YSFlight.

Версія YSFLIGHT 20150425 вже містить 16 сценаріїв (карт), серед яких є як карти реальних локацій, зокрема таких як Гавайські острови, аеропорти Хітроу та Гатвік, так і футуристичні ландшафти.

Доповнення для гри

Є кілька типів доповнень, котрі може створювати і редагувати кожен користувач:

  • Aircraft - повітряні судна, основний вид доповнень.
  • Ground object - наземні об'єкти, до яких відносяться більшість об'єктів, що використовуються для оформлення сценарію, зокрема будівлі, автотранспорт, морський транспорт, спеціальні об'єкти інфраструктури аеропортів та злітно-посадкових смуг.
  • Scenery - сценарій, що містить карту місцевості та певні додаткові інструкції для руху наземних об'єктів та літаків (повітряні маршрути).
  • Mission - місії гри з наперед визначеними завданнями та/або основним видом транспорту і сценарію
  • Flight - файл збереження гри з усіма параметрами відповідно часових інтервалів (аналогічно запису "чорної скриньки")
  • Misc - різні додаткові об'єкти, зокрема звукові файли, текстури, візуальні моделі окремих видів зброї, візуальні моделі елементів керування.

Формати файлів

Формати файлів доповнень YSFlight наразі є звичайні текстові файли зі спеціальними розширеннями, структура яких визначається як "один рядок - одна опція". Специфікація їх відкрита, але офіційної повної документації немає, і час від часу в залежності від версії вони трохи відрізняються, але в більшості додатки від старших версій працюють і в нових версіях гри.

  • DAT - файл конфігурації повітряного судна чи наземного об'єкту, що містить параметри. Цей файл є основним для визначення траєкторії руху на відміну від методу кінцевих елементів (FDM), динаміка польоту і фізична модель залежить від параметрів, котрі надаються в специфікаціях реальних транспортних засобів, а не від форми 3D моделі. При якісно оформлених параметрах моделювання польоту літака та траєкторії майже не відрізняється від траєкторій в інших сучасних симуляторах.
  • DNM - візуальна анімована полігональна модель літака, наземного об'єкту та кількох інших видів додатків. Структура коду DNM-файлів складається з SRF-блоків (частин) та параметрів їх анімації (обертання, положення, прив'язка увімкнення до визначених клавіш). Деякою мірою формат файлу DNM схожий з форматом AC3D, що використовується для візуальних моделей літаків у симуляторі FlightGear.
  • SRF - візуальна статична полігональна модель. Код цих файлів може бути включений у код DNM-файлів безпосередньо або ж за допомогою відносних посилань.
  • IST - файл конфігурацій візуальної панелі інструментів, для відображення реалістичних циферблатів та індикаторів авіоніки в кабіні літака. Окрім цього в симуляторі є можливість використання нашоломного дисплея (HUD).
  • ACP - файл конфігурації посадкової платформи авіаносців та інших наземних об'єктів.
  • SCN - 3D сценарій (карта) гри
  • STP - файл містить координати стартових позицій для визначених сценарію
  • LST - список шляхів до файлів кожного з встановлених додатків. Увімкнення тих чи інших додатків відбувається після додавання шляхів до файлів відповідних додатків.
  • YFS - в залежності від заголовку всередині файлу, може бути файлом місії або ж файлом запису гри. Структура обох видів дуже подібна.

Користувачі гри постійно досліджують структуру файлів і вже зібрали достатньо інформації, серед якої є багато прикладів нестандартних рішень для розширення можливостей гри.

Мережевий протокол

Для створення мережевої гри використовується TCP-протокол, зокрема за YSFlight'ом закріплено порт 7915. Специфікація мережевого протоколу відрізняється в залежності від версії гри, тому з'єднання різних версій в одну мережу стандартним методом неможливе. Але за допомогою сторонніх програм розроблених користувачами цю проблему вирішено зокрема шляхом включення в ролі проксі-сервера програми OpenYS. Офіційної специфікації протоколів розробник не публікував, проте користувачі вже розібрали їх[7][8][9]

Додаткові програми

Завдяки простоті форматів файлів доповнень їх можна легко редагувати за допомогою звичайного текстового редактора, та все ж існують більш зручні програмні засоби для їх створення та редагування.

Офіційні додатки

Soji Yamakawa окрім власне симулятора також створив кілька програм з графічним інтерфейсом для полегшення процесу створення доповнень користувачами:

  • PolygonCrest — вільний 3D редактор спеціально розроблений для створення та редагуванн DNM та SRF моделей літаків та наземного транспорту та інших об'єктів. Окрім цього доступна робота з файлами Wavefront OBJ та OFF.[10][11]
  • SceneryEditor — безкоштовний (shareware) повнофункцінальний редактор 3D сценаріїв (карт) та місій, спеціально розроблений для роботи з файлами FLD, STP, YSF.[12][13][14]

Неофіційні додатки

Окрім цього існують кілька програм створених безпосередньо користувачами YSFlight:

  • OpenYS - вільний ігровий сервер написаний на мові C#, котрий може бути використаний для організації мережевої гри між необмеженою кількість користувачів з додатковими можливостями, від початку відсутніми в стандартному режимі гри[15][16]. Ця програма є продовженням раніше створеної програми на мові Python - Orb [17][18]
  • YSFS-blender - набір Python-скриптів для Blender, що дозволяють відкривати і редагувати підтримувані симулятором формати файлів.[19][20]
  • Dynamodel Manager Sharp - безкоштовна програма для налаштування анімаційних ефектів у DNM-файлах[21][22]
  • YSFS machine gun configurator - онлайн-сервіс для створення DAT файлів[23]
  • srf-dnm_three.js - набір скриптів для візуалізації файлів SRF та DNM за допомогою бібліотеки Three.js використовуючи технологію WebGL[24]
  • YSFlight Mission Utility - програма для створення YFS-файлів місій[25][26][27]

Спільноти користувачів

Кількість користувачів за час існування симулятора коливається, але можна сказати що станом на 2016 рік грою користуються на всіх континентах, при цьому більшість з них проживає в Азіатсько-Тихоокеанського регіоні

  • YSFHQ - YSFlight Headquarters - єдина міжнародна спільнота користувачів YSFlight.[28]
  • YSFlight Korea - найбільш активна локальна спільнота користувачів котра сформувалася у Південній Кореї. Особливістю цієї спільноти є якісна організація публічних демонстрацій та змагань з використанням виключно симулятора YSFlight.[29]

Посилання

Див. також

Джерела

  1. YSFlight System Requirements
  2. YSFLIGHT.COM - FSGUI Library
  3. YSFLIGHT.COM - YS-Class Library
  4. About YSFlight - YSFlight Headquarters. Архів оригіналу за 19 серпня 2014. Процитовано 1 серпня 2014.
  5. YSFlight Review - Flightsim.com. Процитовано 1 серпня 2014.
  6. System Requirements - YSFlight.com. Процитовано 14 листопада 2014.
  7. YS-NET-TOOLS - A set of tools for YSflight servers under the GPL license.
  8. YS-NET-TOOLS forked by YSFHQ owner
  9. How To Create A Server - YSFlight Headquarters
  10. YSFLIGHT.COM - Polygon Crest
  11. Polygon Crest Help by Captain YS
  12. YSFLIGHT SCENERY EDITOR TEST VERSION (20051003)
  13. YS FLIGHT SIMULATOR - Untested Version for Debugging Purposes - SceneryEditor(20150202)
  14. Scenery Editor Text Tutorials Modding for YSFlight - Scenery Editor (November 2012)
  15. OpenYS - Open Source YSFlight Server! - YSFlight Headquarters
  16. OpenYS - Server Owner Installation and Usage Tutorial - YouTube
  17. Orb - A Python Based YSFlight Server Extension
  18. Orb: YSFlight Proxy Server Script - YSFlight Headquarters
  19. YSFS Blender - Python scripts for Blender 2.49 & 2.60 to import and export YSFlight files (.srf, .dnm, .fld, .yfs)
  20. YSFS 2.0 - Python scripts for Blender 2.75+ to export YSFlight files (.srf, .dnm)
  21. Dynamodel Manager Sharp - DNM-editor for YSFlight. Архів оригіналу за 30 травня 2016. Процитовано 28 квітня 2016.
  22. Dynamodel Manager Sharp - DOWNLOAD. Архів оригіналу за 30 травня 2016. Процитовано 28 квітня 2016.
  23. YSFS machine gun configurator online
  24. srf & dnm(model format for YSFlightSimulater) importer for three.js
  25. YSFlight Mission Utility | SourceForge.net
  26. YSFHQ/YSFlightMU: The YSFlight Mission Utility allows users to create custom save files for use with the YSFlight Simulation...
  27. YSFlight Mission Utility User Guide. Архів оригіналу за 5 травня 2016. Процитовано 28 квітня 2016.
  28. YSFlight Headquarters forum
  29. YSFlight Korea website
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.