Простий симулятор польоту


10

У 3D-симуляторі польоту з рівнем реалістичності малинового неба (як на аркадному рівні, а не реалістичному), як ви визначаєте рух літака кожного ігрового годинника?

(Crimson Skies - аркадний симулятор польоту: http://youtu.be/OWmYt0LZDnU?t=3m )

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

Які основні параметри вам знадобляться для визначення маси, швидкості, дроселя .etc. Також як би ви їх поєднали?


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

Ви повинні визначити, що насправді означає реалізм на рівні багряного неба, тому що є люди (як я), які не грали в цю гру, і тепер вони виключені з надання відповіді.
Філіпп

3
Чи це не по суті "Як реалізувати фізику?"
MichaelHouse

1
З моєї відповіді тут , це та сама порада, яку я дав би щодо цього питання: Ітеративне емпіричне тестування. Додайте у свій графічний інтерфейс кілька тестових повзунків, які керують різними параметрами, які вас цікавлять.
MichaelHouse

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

Відповіді:


22

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

Перший і другий закон руху Ньютона

  1. Об'єкт рухається з постійною швидкістю, якщо на нього не діє сила.
  2. Прискорення тіла прямо пропорційне і в тому ж напрямку, що чиста сила, що діє на тіло, і обернено пропорційна його масі. Таким чином, F = ma, де F - чиста сила, що діє на об’єкт, m - маса об'єкта, а a - прискорення об'єкта.

Тяга двигуна

Тяга двигуна - це сила, яка прискорює літак вперед і, як правило, може управляти гравцем. Прискорення - це потужність двигуна, поділена на масу літального апарату.

Гравітація

Гравітація постійно прискорює літальний апарат вниз зі швидкістю 9,81 м / с². Теоретично гравітація стає меншою, коли ви йдете вище, але на висоті, де працюють нормальні літальні апарати, це можна ігнорувати.

Аеродинамічне перетягування

Чим швидше рухається літак, тим більше атмосферне тертя сповільнює його. Це представлено силою, що прискорюється в напрямку проти поточного напрямку, яким рухається судно. Сила збільшується квадратично зі швидкістю (подвійна швидкість = вчетверо більша сила перетягування). Але чим вище літає літак, тим тонша атмосфера і менша сила тягу. Максимальна швидкість повітряного судна - це сили, що створюються при натисканні двигуна та аеродинамічному перетягуванні, скасовують одна одну.

Це може здатися протиінтуїтивно зрозумілим, але наявність більш сильної константи перетягування фактично полегшить вашу гру (більш аркадна), тому що перетягування - це сила, яка зупиняє рух літака в напрямку, якого гравець не хоче літати більше (як, коли летить крива). Так більше тягання = повільніші та маневреніші літаки. Ви можете додатково покращити це, збільшивши тягу, коли є різниця між напрямком руху та напрямком руху літака (це навіть нереально - аеродинамічний профіль літака оптимізований для найменшого опору повітря, коли літак летить прямо ).

Аеродинамічний підйомник

Це сила, яка насправді змушує літак літати. Вона породжена крилами. Чим більша поверхня крила, тим більше генерується підйом і прискорює площину вгору (відносно крил, а не землі. Коли літак котиться збоку, підйомник також прискорює його вбік). Так само, як атмосферне перетягування, підйомник відносно швидкості та щільності атмосфери.

Контрольні поверхні

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


1
Невеликий: потужність (швидкість енергії) збільшується з кубом швидкості. Сила перетягування пропорційна швидкості в квадраті, а потужність буде добуток перетягування та швидкості. Але ви нічого не обговорюєте з точки зору енергетичних витрат, тому ви, ймовірно, мали намір посилатися на тягнути силу.
Сет Беттін

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

1
@jokoon ви маєте рацію з цього питання, але врахуйте, що питання стосується простого аркадного симулятора польоту. Максимальний реалізм не потрібен і не бажаний. Для максимального реалізму я б об'єднав крутний момент перетягування, підйому та руля в точному моделюванні аеродинаміки навколо 3d моделі літака, але для більшості ігор, які не намагаються конкурувати з Microsoft Flight з точки зору реалізму, це було б надмірно .
Філіпп

Я колись поїхав на авіашоу, коли бачиш, як винищувач робить поворот, ти спостерігаєш і відчуваєш вагу літака, що штовхає повітря під ним, наче він дрейфує, але летить при цьому. Мені все ще цікаво, чи все-таки з'явиться ліфт, про який ви говорили, без деталей, про які я говорив. Я думаю, що так, я маю рацію? Це змінило б лише вектор підйому, зробивши літак якось дрейфуючим.
jokoon

1
@OndrejPetrzilka Ви знаєте, як літають банки, коли вони повертаються? Це призводить до того, що вектор підйомника вказує на середину повороту.
користувач253751
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.