Самодельный фмс
Просто в придуманном мире вы подгоняете коэффициенты под свое субъективное “нравится\не нравится”, но чтобы подогнать коэффициенты под реальную модель - нужно, в идеале, иметь оную модель в мясе с ПОЛНОЙ телеметрией на ней 😃 Подгонка же вручную, без возможности адекватного численного сравнения виртуальной и реальной модели - большое искусство и большой геморрой.
Когда я говорил “модель” - я имел в виду физическую модель “игрового” пространства. Игрового в кавычках потому, что чем точнее и качественнее, тем дальше от игрушки.
Что касается моделей самолетов, то что вы думаете, для того чтобы запрограммировать модель в симуляторе на нее телеметрию и датчики вешают? Да щас! 😃 Нет, конечно. Просто чем точнее реализована физика, тем меньше “шаманства” и “магических чисел” при программировании параметров моделей. Смотрите, например, CSM.
Естественно, чтобы написать симулятор желательно иметь какой-никакой личный опыт управления моделями или хотя бы некоторый штат бета-тестеров. Но это не самоцель, потому что те люди, которые моделируют поведение и расчет траекторий космических спутников сами в космосе никогда не были.
Одно дело - симулятор для начального обучения.
Если же делать симулятор для оттачивания мастерства - то будет, скажем, крыло у конкретного фан-флая срывать при 15 градусах, в то время как в ресльности при прочих равных условиях срыв потока при 16,5 градусах - и все, тренироватся можно лишь условно. А вот на стадии бетта-тестирования этого можно легко незаметить - именно поэтому нужно иметь возможность как можно более точно численно сравнивать с реальной моделью.
Да, чисто математически физика будет реализована на 5+, но вот при создании конкретной виртуальной модели нужно учитывать ВСЕ ее особенности. Руль высоты чуть дальше висит - на переходе от стаба к нему - доп. турбулентность, которую вы, например, в модели не учли. И хотя различия в полете скорее всего будут минимальны, лично я бы не назвал такой симулятор симулятором в полном смысле слова.
Хотя… ФМС, по сути, тоже некие абстрактные модели симулирует 😒
Если же делать симулятор для оттачивания мастерства - то будет, скажем, крыло у конкретного фан-флая срывать при 15 градусах, в то время как в ресльности при прочих равных условиях срыв потока при 16,5 градусах - и все, тренироватся можно лишь условно.
Срыв потока - вполне математически описываемая штука. Можно пойти “легким” путем и запрограммировать условия наступления срыва для каждой _конкретной_ модели самолета, но обычно так не делается, а вместо этого вводятся параметры крыла: стреловидность, профиль, хорда и так далее. Условия наступления срыва считаются исходя из параметров крыла, скорости потока, угла атаки…
Да, чисто математически физика будет реализована на 5+, но вот при создании конкретной виртуальной модели нужно учитывать ВСЕ ее особенности. Руль высоты чуть дальше висит - на переходе от стаба к нему - доп. турбулентность, которую вы, например, в модели не учли.
Поизучайте набор параметров модели самолета для симулятора reflex, например. Можно облазить свою модель с линейкой, забить все параметры и виртуальная модель будет ПОХОЖЕ летать. Вот я о чем.
И хотя различия в полете скорее всего будут минимальны, лично я бы не назвал такой симулятор симулятором в полном смысле слова.
Если не видно разницы, зачем платить больше? © Нужно, чтобы моделист с уровнем “выше среднего” не видел значительной разницы. Можно дальше улучшать, но это лишняя трата времени и денег.
Если не видно разницы, зачем платить больше? © Нужно, чтобы моделист с уровнем “выше среднего” не видел значительной разницы. Можно дальше улучшать, но это лишняя трата времени и денег.
Вот это уже похоже на ТЗ! 😃
Я к чему это? Вероятность того, что я таки рискну сделать силумятор - ненулевая. И с кажым днем все выше 😇
К сожалению, “рефлекс” видел только на картинках, а покупать - моя жаба пока к этому неготова 😃 Но посмотреть-пощупать дейсвтительно очень хотелось бы…
В фмс колизии вообще представлены точками.
Надо будет попросить знакомого притащить ноут в моделку с симом. Хоть посмотреть, что это такое на самом деле.
Vitaly, в модели (в моем понимании) нет ничего сложного. Есть опыт создания моделей для гта (если имелось ввиду тока 3д-модель). Это можно назвать самым простым.
В фмс нету например симуляции двухмотрных моделей 😉
А вообще, на рефлексы всякие я пока не претендую. Пока 😃 Просто хочется сделать сим лучше фмс в плане физики/графики. В фмс нет практически ничего. Ни ландшафта, ни моделей. У них даже плоскости не отклоняются. Ну, физика некоторая есть. Но вот что-то ни висеть ни боком летать пока не получается (это, кстати, возможно в фмс?).
Сейчас вплотную подошел к созданию физики. Т.е. попробую в ближайшее время начать писать движок. Потом буду доделывать графику. Подгонять лоды, если они понадобяться и т.д. Потом будут колизии и звук. Кстати, насчет колизий. Все же лучше и проще будет сделать наверно тоже точками. Тока точек сделать больше.
В RCFsim получается боком летать и чуть чуть висеть.
А может попытаться расколоть CSM и на базе его ядра чё-ньт замутьть добавив например нормальную графику. Предлагаю так потому, что сам пытался в свое время его немного облагородить - упростить и “опонятить” настройки (ну там дюймы в мм…и т.д. и в их базу данных).
2 Pa5ha:
в том то все и дело, что графика оно конечно хорошо, но в симуляторе важнее всего именно физика модели - причем физика как именно самолета\вертолета, а не точного просчета коллизий… Хотя последние тоже не мешают, конечно-же.
Насчет ремэйка CSM:
думаю, самый эффективным было бы заиметь исходники модуля физики самолета из него, а все остальное самим и написать… Разработчики часто делают исходники старых продуктов опен-соурс… Но тут, похоже, не тот случай 😦
Кстати, до сих пор валяеться на компеготовый модуль физики модели саломета - откуда-то скачивал в свое время. Как он по реалистичности - не знаю, но в описухе написано, что реалистичный 😃 Так что можно на его основе силумятор замутить, делая упор лишь на графику и физику коллизий 😒
А может попытаться расколоть CSM и на базе его ядра чё-ньт замутьть добавив например нормальную графику.
В общем, дохлый номер. Одно время у меня была идея оторвать от него bgi-графику, написать bgi-драйвер, единственной целью которого было бы передача управления 32-битному коду для того, чтобы этот код выводил то же самое, но в виндовом окне с использованием gdi. И даже частично в этом преуспел, но потом интерес пропал, а сам симулятор я подарил.
Идея была красивая, но заброшена по двум причинам. Первая - _совсем_ без патчения кода (заменой только bgi256.bgi на собственный) не получится, например, надо убрать ожидание ретрейса, и даже не убрать а заменить на соответствующую задержку. Вторая причина - вызов 32-битного кода из bgi-драйвера. Сделать универсально, чтобы работало и под nt и под 95 не выйдет, отдельно nt - у меня получилось кому интересно могу рассказать, но это шаманство. CSM же работает в realmode, был бы он хотя бы dpmi, а так… Ну, в общем, там и без этого много тонкостей, но было интересно. К тому же, он не бесплатный, что толку приделать графику когда все равно нужен интерфейс…
Даже имея исходники CSM на borland pascal 7 переложить его под винды врядли удастся, из-за того, что там очень многое завязано на железе. Изучать можно, но как основа для новой win32 программы не подходит, гораздо лучше для этого годится fms.
Кстати, до сих пор валяеться на компеготовый модуль физики модели саломета - откуда-то скачивал в свое время. Как он по реалистичности - не знаю, но в описухе написано, что реалистичный 😃
Какого саломета (лучше бы самолета, конечно)? Нужен именно для моделей, потому что аэродинамика больших самолетов и маленьких моделей несколько отличается. А в описании… Я не видел ни одной программы где было бы в описании сказано, что сия программа есть страшный отстой и глюкалово.
Нужен именно для моделей, потому что аэродинамика больших самолетов и маленьких моделей несколько отличается.
написал же выше - моделей 😃
А в описании… Я не видел ни одной программы где было бы в описании сказано, что сия программа есть страшный отстой и глюкалово.
- Так я и поставил по этому поводу смайлик 😃
Ну так если у кого какие-нть исходники остались - поделитесь думаю всем (симуляторщикам) интересно.
Мож чего вместе (или раздельно) интересного и намутим. Кстати чё-то мне в I-Nete по симулям не особо попадалось. А вам? Кстати всех с Н.Г.!
Ну так если у кого какие-нть исходники остались - поделитесь думаю всем (симуляторщикам) интересно.
Какие именно исходники вас интересуют? И главное, зачем? Если найдется человек, который будет что-то разрабатывать - легко, поделюсь с ним. А так… Смысл?
Мож чего вместе (или раздельно) интересного и намутим.
На мой взгляд надо исходить из какой-то реальной цели. Просто так, абстрактно что-то мутить - кроме мути ничего не получится. 😃
Кстати чё-то мне в I-Nete по симулям не особо попадалось. А вам?
Информации полно. Что именно требуется?
Информации полно. Что именно требуется?
Ссылки на исходники авиасиммуляторов 3D под DirectX (что же еще). Что бы молодеж владеющая С++ могла разобраться или повторить хотя бы. (То есть работающий проект пусть даже корявый).
Ну у вас и заявки! такой большой, должны же уже понимать, что к чему в этой жизни 😃
Ошибаетесь, я не о себе. Этими делами я маялся лет 20 назад. А речь о людях интересующихся данной темой. Хотя и мне тож интересно.
Интересно а есть ли какой нибудь симулятор хоть более меннее реалистично показывающий поведение модели скажем при потере скорости.А то ни на CSM ни на FMS я не мог свалить самолет в штопор. А в реале - убрать газ, руль высоты плавно на себя до упора, руль поворота в сторону и все - штопорит пока так держиш. Ни в одном симуляторе так сделать не получается. Да и поведение скажем планера на различных скоростях вовсе не такое как в жизни.
Есть. Но сваливаемость в штопр еще и от типа модели зависит - не секрет, что есть модели, которые нельзя загнять в штопр - лишь насильно изобразисть вертикальную спираль.
а конкретно ФМС на малых скоростях полета кроме ухудшения управляемости вообще ничего не симулирует.
Интересно а есть ли какой нибудь симулятор хоть более меннее реалистично показывающий поведение модели скажем при потере скорости.
На любом, кроме FMS. В CSM штопорит.
CSM не только штопорит но и другие чудеса творит на больших скоростях.
Ссылки на исходники авиасиммуляторов 3D под DirectX (что же еще). Что бы молодеж владеющая С++ могла разобраться или повторить хотя бы. (То есть работающий проект пусть даже корявый).
А если под OpenGL?
Вот например www.flightgear.org , авиасимулятор, правда не моделей, а реальных самолетов, но оттуда можно взять основу или куски кода.
Но имхо надо сначала составить полное ТЗ, ну на крайний случай частичное, а затем искать необходимую информацию.
У меня есть ряд вопросов по созданию симулятора (мое мнение отмечено знаком +).
-
Условия распространения.
Платный.
+Бесплатный.
Бесплатный с открытым исходником. -
Оплата разработчиков(программистов, дизайнеров).
Сдельная.
Оплата от распростанения.
+На инициативе. (довольно сложно на мой взгяд подобрать команду, т.к. инициатива бывает теряется в самый неподходящий момент). -
Сроки. (нельзя же основываться на собственном прогрессе)
+6 месяцев до первого релиза. -
Кто требуется.
+
{
Человек для проработки физики(с понимаем программирования, т.е. чтобы программист мог это реализовать).
Программист, скорее всего не один, написание движка, прикручивание физики к нему, написание моделей.
Дизайнер, ну без него никак, т.к. рисовать надо красиво, чтобы программа была конкурентоспособной.
Главный руководитель - чтобы пинал ногами разработчиков и давал ценные указания.
}
И главный вопрос кто за это все возмется при условиях которые Мы все определим?
Пока вижу только ADF’а который может, но не хочет(как я понял) этим заниматься.
И Pa5ha который собсно автор темы(тоже мне непонятно, это для Вас работа для курсового проекта, или чтобы сделать симулятор?).
2ADF на чем написан “esf033.zip”?
До завтра попробую написать краткое ТЗ, как я себе его представляю. ☕
2ADF на чем написан “esf033.zip”?
Ржу и плачу одновременно: на дельфях написан 😛 Быстродействия впритык, а переписывать на си лень ломает 😒
Быстродействия впритык
Значит так пишите. 😃 У Delphi один из самых эффективных оптимизаторов и самый быстрый менеджер памяти. Язык программирования тут не при чем.