Самодельный фмс

Vitaly

Институт вы закончите очень потом, если ничего не случится (что еще не факт). И симулятор тоже напишете сильно потом, если крупно повезет (в чем я сомневаюсь). А вот данный конкретный форум вы своими мегапланами засираете прямо сейчас. И эти мегапланы никого абсолютно не волнуют. Кроме разве что отдельных потребителей грибов, которых волнует абсолютно все, вплоть то цвета трусов Моники Левински.

Почитайте книжек хороших для начала. Типа Steeve Mc Connel “Rapid Development”. Может, хоть что-то в голове прояснится.

ADF

Про душу.
Программированое - это творчество. Особенно когда от забивки базовых функций и классов дело доходит до более абстрактных алгоритмов с зачатками ИИ (искусственного идиотизма 😃 ). И это совсем не то же самое, что набивать текст из книжки, тут думать надо, тварить, извращяться! 😇

Ибо еще в самом начале темы была поднята проблема о написании физики самолета - в книжках по программированию об этом не прочесть - значит, простор для своей гениальной мысли, если голова не жмет 😒 😛

Ну а про себя… я как бы и не скрываю, что просто поддерживаю теплую, дружескую болтовню 😇

Vitaly

Модератор

ADF получает 2 недели Read Only за флуд. В следующий раз будет месяц, и т.д. по нарастающей.

Pa5ha

Ну пусть это будет сначала не симулятор а просто тупая аркада, только для того, чтоб в ручках не путаться при первом полете.

Вариант amoeba песимистичный, мой оптимистичный. Но будет и не тот и не другой.

Виталий, Вы сами эти книжки читали? Помогло? Если да, то обязательно прочитаю.

Но в ридонли в курилке за то, что чьи-то взгляды не совпадают с Вашими - это уже слишком. Я тада тоже флудер и меня тоже надо в ридонли. А лучше вообще в бан недели на две, чтоб подумал.

ЗЫ.: В очередной раз убеждаюсь, что моделисты - люди не от мира сего. Не в плохом смысле этого слова, но думают они по-другому. Закройте нафик тему.

Vitaly

Я стараюсь советовать только то, в чем разбираюсь 😃 . Книжка “Rapid Development” очень известная. Вам помимо книжек еще могу правила форума посоветовать перечитать.

Вы не флудер, а 18-летний студент, с кашей в голове и со всеми вытекающими последствиями. Вас тут 6 страниц колбасит, и никто так и не может понять, чего же именно вы все-таки собираетесь писать. Если полноценный симулятор - то уже пытались объяснить, что это малореально. Если тупую аркаду - дык непонятно, зачем было заводить тему на этом форуме, и просить чтобы вам на серьезном уровне про симуляторы рассказали. Можно с таким же успехом взять программу “hello world”, влепить туда картинку прогладки с крылышками, и говорить что это симулятор, только очень упрощенный.

Вам amoeba перечислил по пунктам все ваши ошибки. Если это недостаточно понятно - я книжку посоветовал, с которой сам начинал когда-то. Книжка, правда, на албанском, но тут уж ничего не поделаешь.

toxa
ADF:

Ибо еще в самом начале темы была поднята проблема о написании физики самолета - в книжках по программированию об этом не прочесть - значит, простор для своей гениальной мысли, если голова не жмет 😒 😛

А в поваренной книге не пробовали искать?

Pa5ha

Короче. Проблема с физикой такого плана. Хочу понять, как летает самолет. Как расчитывать профиля и что значат все эти умные слова во всем этом топике. А сам вопрос заключается в том, что почитать?

toxa
Pa5ha:

Хочу понять, как летает самолет. Как расчитывать профиля и что значат все эти умные слова во всем этом топике. А сам вопрос заключается в том, что почитать?

Для начала учебник по физике и учебник по аэродинамике.

NailMan

Как я и говорил Валентину в приватной беседе, проблема физики заключается не в том как записать известные формулы в виде кода Дельфи, а в том как описать механизм коллизий для виртуальной модели ЛА, точнее как преобразовать воздействующие внешние силы(ветер, тепловые потоки и т.д.), а также всевозможные внутренние силы(подъемная, сопротивления и т.д.) в 6 ускорений(должно быть понятным что в инерциальной системе движения перемещения и вращения должны задаваться не конечными координатами и углами, а ускорениями).

В играх обычно есть только внешние факторы, и как правило это воздействиия при соударениях. Здесь самые сложные и энергоемкие вычисления, так как грубая сферическая модель коллизий(описанная сфера) не даст никакой точности, хотя и очень быстрая по своей проверке и вычисления вектора реакции. Я лично в своем космосиме пробовал усложнить эту модель, описывая сложную форму объектов набором сфер небольшого диаметра, общая форма описывалась довольно точно. Но заткнулся на том как описать механизм точного приложения сил к отдельным сферами и соотвественно получить набор из 6 ускорений(3 линеных и 3 уголовых) чтобы я мог применить их к объекту.
Если в качетве коллизионной модели использовать упрощенную полигональную модель объекта, то усложнится еще на много процесс обсчета.

Пример: у нас есть самолет, он расположен произвольно в небе, но пузом все таки вниз. Скажем делает правый вираж. Ветер каждую секунду немного меняет свой вектор и силу. Нужно вычислить какие ускорения он даст на каждую часть самолета(крыло, фюз, оперение) и по какому вектору, далее на основе полученных точных данных, нужно вычислить результирующие ускорения, кторые мы и применяем к объекту самолета.

Вобщем формулы из книжек дело десятое, нужно продумать процес вычисления и приведения всего этого к понятным OpenGL или DirectX входным данным, а именно линейным и угловым ускорениям в локальной системе координат.

toxa
NailMan:

Пример: у нас есть самолет, он расположен произвольно в небе, но пузом все таки вниз. Скажем делает правый вираж. Ветер каждую секунду немного меняет свой вектор и силу. Нужно вычислить какие ускорения он даст на каждую часть самолета(крыло, фюз, оперение) и по какому вектору, далее на основе полученных точных данных, нужно вычислить результирующие ускорения, кторые мы и применяем к объекту самолета.
Вобщем формулы из книжек дело десятое, нужно продумать процес вычисления и приведения всего этого к понятным OpenGL или DirectX входным данным, а именно линейным и угловым ускорениям в локальной системе координат.

NailMan, ваш подход годится для игры, но не подходит для реализации симулятора. Вы мешаете все в кучу. Коллизии - это своя песня, физическая модель - своя. Грубо говоря, вам не надо считать “столкновение” модели с ветром.

Для начала нужно решить физическую задачу о силах действующих на самолет в полете. Составить систему уравнений с N входными параметрами, которые будут задавать тягу двигателя, крен, тангаж, угол атаки крыла, всевозможные площади… Это будет математическая модель. Далее, в процессе работы симулятора, эта система уравнений постоянно решается, а промужутки времени через которые происходит вычисление замеряются. Знаем силы, знаем массу, знаем сколько прошло времени… Находим расстояние, которое пролетела модель по всем направлениям, а так же на сколько она при этом повернулась по всем осям. Метры переводим в локальные координаты.

После этого вычисляем коллизии с объектами, находящимися в игровом пространстве.

Что такое ветер? Ветер - это движение среды, в которой находится самолет. Точно так же, описание ветра вводится в физическую и математическую модель.

9 months later
Pa5ha

Решил поднять тему ибо решил попотеть над физикой немного. Ибо тему взял, как крусовую. В крайнем случае самолет будет летать “по рельсам”, но хотелось бы…

Начал обдумывать аккумулятор сил. В общем седня сидели на паре с преподавателем и пытались решить следующую задачу:
Допустим у нас в пространстве имеется некое тело. О нем известно: масса, момент инерции, тело в невесомости в вакууме. На тело действует сила. Точка приложения, вектор и величина известны. Требуется найти ускорение центра масс тела и угловое ускорение. С закрепленным телом понятно, а вот со свободным что-то не очень. Кто даст идею - буду очень очень благодарен -)

Pa5ha

Примерное решение нашел.

Интересно, поляры профилей включают все 360 градусов или только какой-то промежуток?

vovic
Pa5ha:

Кто даст идею - буду очень очень благодарен -)

Берете любой учебник по аэродинамике самолета, можно Мхитаряна, можно Остославского - последний даже лучше, ибо написан во времена отсутствия в природе компьютеров. Там приведены готовые уравнения движения тела по поставленной задаче.
Зачем изобретать велосипед?

Pa5ha

Балин, амеры не думают об остальном мире, я понимаю, что у них анлим… Мат модель 7 метров (!). Но все равно спасибо. Завтра из универа скачаю -)

Ну я бы рад такую книжку почитать, но кто мне её даст? Уверен, что не продается в нашей дыре в книжных магазинах, а заказывать как-то зеленый зверь душит -) Вряд ли стоит 100 рублей. Но все равно спасибо -)

13 days later
Pa5ha

Гм, скачал, но матлаба нету и я не знаю что это такое -)

Давеча посмотрел редактор физики Аерофлая делюкс. Что-то не очень там, мне не кажется, что разговоры про точность в полградуса и про то, что если в симуляторе фигуру выучил, то в реале не повторить - не актуальны.

Собсна, есть вопрос. Как работать с полярой профиля? Где взять? Профиль продувается для всех 360 градусов? Как ведет себя при боковом потоке? Ну т.е. если самолет летит боком (или ветер боковой). И вообще как дальше жить?

Pa5ha

Ну я смотрю что-то никому не интересно. Вот скрины хоть посмотрите.

Самолет пока что из rc plane master, площадка из mafia, машина corpse из gta3. На самолете со вчерашнего дня стали отклоняться рули. Скоро будет крутица винт и мотор будет пускать дым -) Собственно, иерархия самолета написана, теперь дело за физикой. Потом коллизийный движок. Графика пока что не очень. После переделки сцены было лень заново задавать материалы, поэтому забор непрозрачный, на машине гипертрофировано отражение ибо надо сделать регулятор отражения или затемнить текстуру (т.к. тип наложения add). Кривая текстура на колесе. Освещение из глаз. Руки ещё не дошли до него. На втором скрине видно солнце и мои опыты с хало, правда на фоне неба они не очень правильно воспринимаются.

Планируется создание моделей с овт. Текущая иерархия это позволяет. Ну и чтоб летать было не скучно различные контесты. Типа бомбометания, прохождение контрольных точек. Воздушный бой. А то скоро соревнование, а тренироваться не на чем. Самолет достраивается а в симуляторах такого нету.

С физикой более менее разобрался. Посчитать все силы могу. Но с аэродинамикой пока есть некоторые затруднения. Прошу помощи.

Если кто-то может выделить пару минут в день отвечать на мои вопросы по аське относительно аэродинамики, то буду премного благодарен. Впишу Ваше имя в кредитс -)

17 days later
Pa5ha

В RCFSim601 есть поляры только формат файла не понятен. Может кто подмогнет? Исходников бы этого симулятора. Физика в нем мне очень нравится. С автором пытался связаться, но он не часто видима почта проверяет.