Basit bir uçuş simülatörü


10

Crimson Skies gerçekçilik seviyesine sahip bir 3D uçuş simülatöründe (olduğu gibi, gerçekçi olmaktan ziyade arcade seviyesi), her bir oyun saatinin işaretlediği bir uçağın hareketini nasıl belirlersiniz?

(Crimson Skies, arcade benzeri bir uçuş simülatörüdür: http://youtu.be/OWmYt0LZDnU?t=3m )

Oyunun sabit adımlarla ilerlediğini varsayıyorum ve her adımda her hareketli nesne, mevcut konumundan diğerine sabit hızda düz bir çizgide hareket ediyor.

Kütle, hız, gaz .etc'yi belirlemek için hangi temel parametrelere ihtiyacınız var? Ayrıca onları nasıl birleştirirsiniz?


İlginç bir soru, ama çok geniş değil mi? Yani, uçak simülasyon dinamiklerinin cesur ayrıntılarını istiyor. Torkların ve ivmelerin sayısal entegrasyonunun yanı sıra, bir cevabın ele alması gereken özel bir şey var mı? Ben şahsen yörüngesini değiştirmek için torklardan ve ivmelenmelerden kaçınmayı tercih ederim, çünkü onlar daha zor bir oyuncu ve hoş olmayan bir oyuncunun sevmediği bir deneyim sunuyorlar (eylemsizlik efektleri kullanan oyun mekanikleri tweak zor).
teodron

"Crimson Skies seviyesi gerçekçiliğinin" ne anlama geldiğini tanımlamalısınız, çünkü o oyunu oynamamış ve şimdi cevap vermekten dışlanmış insanlar (benim gibi) var.
Philipp

3
Bu aslında "Fizik nasıl uygulanır?" Değil mi?
MichaelHouse

1
Cevabım burada : Bu ben bu soru için vereceğiniz tavsiyem İteratif ampirik testi. GUI'nize test etmek istediğiniz çeşitli parametreleri kontrol eden bazı test kaydırıcıları ekleyin.
MichaelHouse

3
"Fizik" + "Simülatör" + "Basit" Herhangi birini seçin. Herhangi bir kolay uçuş simülatörü örneği bulamamanızın nedeni, çizgi film uçuşunun aldatılması ve basit bir karakter kontrolörüne dönüşmesi, minimum simülasyonların bile fiziğin derinliklerine inmesi ve istikrarlı tutulması son derece zor olmasıdır.
Patrick Hughes

Yanıtlar:


22

Aerodinamik uçuşun nasıl simüle edileceğini anlamak için, önce hangi kuvvetlerin bir uçağın hareketini etkilediğini anlamalıdır. Bir uçağın gerçek yörüngesi, tüm bu fiziksel etkilerin toplamıdır:

Newton'un birinci ve ikinci hareket yasası

  1. Bir cisim, bir kuvvet tarafından hareket ettirilmedikçe, sabit bir hızda hareket eder.
  2. Bir cismin ivmesi, cisme etkiyen net kuvvetle doğru orantılıdır ve onunla aynı doğrultudadır ve kütlesi ile ters orantılıdır. Böylece, F = ma, burada F, nesneye etki eden net kuvvettir, m, nesnenin kütlesi ve a, nesnenin ivmesidir.

Motor İtişi

Motorun itişi, bir uçağı ileri doğru hızlandıran ve genellikle oyuncu tarafından kontrol edilebilen bir kuvvettir. Hızlanma, motorun gücünün uçağın kütlesine bölümüdür.

Yerçekimi

Yerçekimi, 9,81 m / s² hızda bir uçağı sürekli olarak aşağı doğru hızlandırır. Teorik olarak, yükseldiğinizde yerçekimi azalır, ancak normal uçakların çalıştığı yükseklikte bu göz ardı edilebilir.

Aerodinamik sürtünme

Bir uçak ne kadar hızlı hareket ederse, atmosferik sürtünme o kadar yavaşlar. Bu, teknenin hareket ettiği mevcut yöne doğru bir yönde hızlanan bir kuvvetle temsil edilir. Kuvvet, hız ile kuadratik olarak artar (çift hız = sürükleme kuvvetinin dört katı). Ancak uçak ne kadar yüksek uçarsa, atmosfer o kadar ince ve sürükleme kuvveti o kadar düşük olur. Bir uçağın maksimum hızı, motor itme kuvveti ve aerodinamik sürükleme tarafından üretilen kuvvetlerin birbirini iptal ettiği yerdir.

Karşılıklı sezgisel gelebilir, ancak daha güçlü bir sürükleme sabitine sahip olmak aslında oyununuzu oynamayı kolaylaştıracaktır (daha arcade benzeri), çünkü sürükleme, uçağın oyuncunun istemediği yöne uçmasını engelleyen güçtür. artık uçun (bir eğri uçarken olduğu gibi). Daha fazla sürükleme = daha yavaş ve daha manevra kabiliyetine sahip uçaklar. Düzlemin yön yönü ve hareket yönü arasında bir fark olduğunda sürüklemeyi artırarak bunu daha da geliştirebilirsiniz (bu gerçekçi değil - bir düzlemin aerodinamik profili, düzlem en az hava direnci için optimize edilmiştir. düz uçuyor ).

Aerodinamik kaldırma

Bu aslında bir uçağın uçmasına neden olan kuvvettir. Kanatlar tarafından üretilir. Kanat yüzeyi büyüdükçe, daha fazla kaldırma üretilir ve düzlemi yukarı doğru hızlandırır (zemine değil, kanatlara göre. Düzlem yan yana döndüğünde, asansör de yanlara doğru hızlanır). Tıpkı atmosferik sürtünme gibi, asansör de hız ve atmosfer yoğunluğuna göredir.

Kontrol yüzeyleri

Bir düzlem, hatve, sapma ve rulo için farklı kontrol yüzeyleriyle yönünü kontrol eder. Bir kontrol yüzeyi sadece düzlem hareket ederken çalışır. Verimliliği mevcut hız ve atmosferik yoğunluk ile orantılıdır. Kontrol yüzeylerinin hareket ettiği yönü değil, yalnızca düzlemin işaret ettiği yönü değiştirdiğini unutmayın. Bu, itme ve kaldırma yönünü ve dolayısıyla yavaş yavaş hareket yönünü etkiler.


1
Küçük: hız küpü ile güç (enerji oranı) artar. Sürükleme kuvveti kare hızıyla orantılıdır ve güç sürtünme ve hızın ürünü olacaktır. Ancak enerji oranları açısından başka bir şey tartışmıyorsunuz, bu yüzden muhtemelen yine de sürükleme kuvvetinden bahsetmek istediniz.
Seth Battin

"Verimliliği mevcut hız ve atmosferik yoğunluk ile orantılıdır." Biraz yanlış, bir uçak yön değiştirdiğinde daha fazla hava sürüklemesi yapar, çünkü hava akışını başka bir yöne zorlar, bu yüzden bunu ataletle dengelemeniz gerekir, ki bu son zamanlarda merak ettiğim bir şey: sonuçta ortaya çıkan gücü nasıl hesaplıyorsunuz? düzlemi yön değiştirmekten, buna cevap vermek için akışkanlar mekaniğini basitleştirebilirsiniz, ancak iyi cevabı bilmiyorum. Ayrıca kanatların boyutunu da düşünmelisiniz.
jokoon

1
@jokoon bu konuda haklısın, ama lütfen sorunun basit, arcade benzeri bir uçuş simülatörü hakkında olduğunu düşün. Maksimum gerçekçilik ne gerekli ne de arzu edilir. Maksimum gerçekçilik için, uçağın 3d modeli etrafındaki aerodinamiğin doğru bir simülasyonunda sürükleme, kaldırma ve dümen torkunu birleştireceğim, ancak gerçekçilik açısından Microsoft Flight ile rekabet etmeye çalışmayan çoğu oyun için bu aşırıya kaçacak .
Philipp

Bir zamanlar bir hava şovuna gittim, bir savaş uçağının dönüş yaptığını gördüğünüzde, uçağın havasını altına sürüklediğini, aynı zamanda uçtuğunu, aynı zamanda uçtuğunu izler ve hissedersiniz. Hala bahsettiğiniz asansörün, bahsettiğim detaylar olmadan hala görünüp görünmeyeceğini merak ediyorum. Sanırım evet, haklı mıyım? Sadece asansör vektörünü değiştirerek uçağı bir şekilde sürükler.
jokoon

1
@OndrejPetrzilka Uçaklar döndüklerinde nasıl para aldıklarını biliyor musunuz? Bu, kaldırma vektörünün dönüşün ortasını göstermesini sağlar.
user253751
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.