Наприкінці 1980-х — початку 1990-х японський школяр Соджі Ямакава (англ.Soji Yamakawa)[2][3] почав працювати над розробкою та створенням власного авіасимулятора "Formation Aerobatic".[4]
15 травня 1999 року Ямакава, вже будучи студентом, випустив перший публічний реліз "YS Flight Simulator" (скорочено "YSFlight"), який вже можна було використовувати як наочний посібник для тих, хто хоче ознайомитися з основами пілотування, аеронавігації та зрозуміти як працюють основні пілотажні прилади літальних апаратів. Сам Ямакава є приватним пілотом[en] та регулярно літає на літаку Cessna 172[7][8].
Проект в першу чергу був орієнтований для запуску на застарілих комп’ютерах з малою потужність і можливостями, згодом розробник почав переключатися на використання більш сучасних механізмів відображення ігрової графіки. Сам інтерфейс та функціональність з часом зазнали змін, і в останніх версіях ігрове оточення виглядає більш реалістично ніж в попередніх, хоча все ще залишається більш спрощеним у порівнянні з іншими сучасними авіасимуляторами.
Однією з головних цілей проекту було створення та використання у процесі розробки власних мінімально необхідних вільних програмних бібліотек:
FSGUI Library - вільна бібліотека графічного інтерфейсу, для створення 3D програм на основі технологій OpenGL[9]
YS-Class Library - вільна програмна бібліотека для обробки полігонів в 3D просторі та виведення результату на 2D площину[10]
По завершенню навчання Ямакава отримав ступінь доктора філософії та влаштувався викладачем комп'ютерної графіки в Університеті Карнегі-Меллон, і в подальшому використовував код YS-Class Library для проведення практичних занять зі студентами.
У 2012, випущено версію 20120701.
У 2015, випущено версію 20150425, яка містила значні зміни в інтерфейсі програми та отримала велику кількість нових функцій, містила 16 сценаріїв (карт), серед яких є як карти реальних локацій, зокрема таких як Гавайські острови, аеропорти Хітроу та Гатвік, так і футуристичні ландшафти.
Станом на 2016 рік ліцензія на програмну бібліотеку YS-Class Library виглядала наступним чином:
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.
У січні 2019, було випущено версію 20181124, у якій було додано режим перегонів з таймером та мітками пройденої дистанції.
YSFLIGHT можливо не стане шедевром. Але я хочу зробити його програмою, до якої будь-хто зможе повернутися в будь-який час. Хтось може покинути YSFLIGHT сьогодні. Але одного разу через кілька років людина може виявити, що він все ще доступний, і, можливо, здійснить один політ по повітряному маршруту. Я сповнений рішучості зберегти YSFLIGHT.
19 серпня 2022, Ямакава оприлюднив увесь початковий код YSFlight на умовах ліцензії BSD і таким чином перевів симулятор у розряд повністю вільного програмного забезпечення[11][12]. Спільнота користувачів YSFlight створила форк під назвою YSCE (YSFlight Community Edition), у якому було виправлено старі помилки та додано нові функції[13].
Можливості
YSFlight відрізняється від інших подібних симуляторів, таких як Microsoft Flight Simulator X, тим що стандартні моделі транспортних засобів не містять текстур, а стандартні карти місцевості містять текстури низької роздільної здатності.[14] З іншого боку наявні спрощене відображення кабіни літака та основних аеронавігаційних інструментів роблять його краще зрозумілим для користувачів.
Користувач може грати без підключення до мережі, або ж в режимі мережевої гри, в котрому можливе підключення одночасно до 16 гравців до одного серверу YSFlight[15].
Гра добре працює і на старіших комп'ютерах, конфігурації яких зазвичай вже недостатньо для роботи інших сучасних авіасимуляторів[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 - в залежності від заголовку всередині файлу, може бути файлом місії або ж файлом запису гри. Структура обох видів дуже подібна.
Користувачі гри постійно досліджують структуру файлів і вже зібрали достатньо інформації, серед якої є багато прикладів нестандартних рішень для розширення можливостей гри.
Бібліотека моделей літаків у форматі VRML, створена Ямакавою[17], часто використовувалася для різних досліджень.
Мережевий протокол
Для створення мережевої гри використовується TCP-протокол (порт 7915). Специфікація мережевого протоколу відрізняється в залежності від версії гри, тому з'єднання різних версій в одну мережу стандартним методом неможливе, але за допомогою сторонніх програм розроблених користувачами цю проблему вирішено, зокрема шляхом включення у ролі проксі-сервера програми OpenYS.
Офіційної специфікації протоколів розробник не публікував, проте користувачі розібрали їх власноруч методом зворотньої розробки[18][19][20].
Додаткові програми
Завдяки простоті форматів файлів доповнень їх можна легко редагувати за допомогою звичайного текстового редактора, та все ж існують більш зручні програмні засоби для їх створення та редагування.
Офіційні додатки
Soji Yamakawa окрім власне симулятора також створив кілька програм з графічним інтерфейсом для полегшення процесу створення доповнень користувачами:
Polygon Crest (ysgebl[21]) — вільний 3D редактор спеціально розроблений для створення та редагування файлів DNM та SRF моделей літаків, наземного транспорту та інших об'єктів. Окрім цього є підтримка імпорту та експорту файлів Wavefront OBJ та OFF[en].[22][23]
Окрім цього існують кілька програм створених безпосередньо користувачами YSFlight:
OpenYS — вільний ігровий сервер написаний на мові програмування C#, котрий може бути використаний для організації мережевої гри між необмеженою кількість користувачів з додатковими можливостями, від початку відсутніми в стандартному режимі гри[27][28][29][30]. Ця програма є продовженням раніше створеної програми на мові Python - Orb[31][32][33][34].
YSFS-blender — набір Python-скриптів для Blender, що дозволяють відкривати і редагувати підтримувані симулятором формати файлів.[35][36]
Dynamodel Manager Sharp — безкоштовна програма для налаштування анімаційних ефектів у DNM-файлах[37][38]
YSFS machine gun configurator — онлайн-сервіс для створення DAT файлів[39]
srf-dnm_three.js — набір скриптів для візуалізації файлів SRF та DNM за допомогою бібліотеки Three.js використовуючи технологію WebGL[40]
YSFlight Mission Utility — програма для створення YFS-файлів місій[41][42][43]
Спільноти користувачів
Кількість користувачів за час існування симулятора змінюється, але можна сказати що станом на 2016 рік грою користуються на всіх континентах, при цьому більшість з них проживає в Азіатсько-Тихоокеанського регіоні.
YSFHQ (YSFlight Headquarters) — єдина міжнародна спільнота користувачів YSFlight.[44] Є наступником порталу YSPilots[45][46][47].
YSFlight Korea — найактивніша локальна спільнота користувачів, сформована у Південній Кореї[48][49]. У 2015, спільнота YSFlight Korea представляла авіасимулятор YSFlight у павільйоні авісимуляторів на міжнародній виставці аерокосмічної техніки та озброєнь Seoul ADEX[ko][50], а також приймала участь у турнірі «11th ROKAF Air Combat Simulation Contest» (кор.제11회 공군참모총장배 항공전투시뮬레이션 대회)[51] серед користувачів авісимуляторів Lock On, Falcon BMS та Microsoft Flight Simulator, організованому Повітряними силами Республіки Корея (ROKAF)[52][53][54][55][56][57], участь у якому спільнота YSFlight Korea регулярно приймає що два роки з 2011[58][59]. Також YSFlight Korea утворили віртуальну повітряну демонстраційну групу YS Black Eagles, за аналогом повітряної демонстраційної Чорні Орли Повітряних сил Республіки Корея.
Віртуальні повітряні демонстраційні групи
Користувачі YSFlight сформували велику кількість віртуальних повітряних демонстраційних груп, як вигаданих, так і створених за подобою дійсно існуючих повітряних демонстраційних груп: YSFlight Blue Angles[60], YSFlight Thunderbirds та YS Black Eagles, тощо.
Щорічно проводиться кілька віртуальних авіашоу, на яких виступають віртуальні повітряні демонстраційні групи та окремі користувачі YSFlight[61][62][63][64][65][66].
Yamakawa, Soji. List of Publications (Updated on 11/21/2017). via ysflight.in.coocan.jp
Yamakawa, Soji ; Agwu, Uchechukwu (21 травня 2020). Design of Lattice Structures for Additive Manufacturing (PDF). NextManufacturing. Carnegie Mellon University. "His freeware, YS FLIGHT SIMULATOR, has been used in more than 30 countries and has received numerous awards including an Online Software Award from the Internet Association Japan and an Editor’s Choice Award from German company, PC Freunde. It has been downloaded over 1.5 million times."
↑O’Hagan Anna Donnla.Sleep Loss and Fatigue Among Commercial Airline Pilots (PDF). — Dublin City University, 2018. — 1 September. "Situation awareness was assessed using the Situation Awareness Rating Technique (SART) which was completed following performance of a computerised flight simulator task on a YSFlight Simulator (Version 20130805) (Appendix G)."
↑Nisansala, Aruni; Weerasinghe, Maheshya; Dias, G. K. A.; Sandaruwan, Damitha; Keppitiyagama, Chamath; Kodikara, Nihal; Perera, Chamal; Samarasinghe, Prabhath (2015). Kim, Kuinam J. (ред.). Flight Simulator for Serious Gaming. Information Science and Applications(англ.). Springer. с. 267—277. doi:10.1007/978-3-662-46578-3_31. ISBN978-3-662-46578-3. X Plane, FSX, YS Flight and Flightgear were concerned with higher priority as they are the best rating products in market.