Saya sedang mengerjakan game iPhone 2D menggunakan Corona (versi percobaan, jadi saya tidak bisa menggunakan forum mereka). Permainan ini melibatkan karakter yang jatuh di langit, dan saya mencoba menerapkan "lompatan ganda" untuk karakter tersebut, agar dia dapat melompat ke atas saat jatuh. Saya menggunakan perpustakaan fisika Corona untuk membuat karakter jatuh, dan sejauh ini metode terbaik untuk membuatnya melompat menggunakan metode impuls vertikal
object:applyLinearImpulse(0, -0.4, object.x, object.y)
Masalah yang saya hadapi adalah ketika karakter baru mulai (kecepatan vertikal rendah), dia melompat sangat tinggi, dan ketika dia jatuh untuk sementara waktu (kecepatan vertikal tinggi), lompatan diabaikan. Saya menduga bahwa solusi terbaik adalah dengan menggunakan semacam persamaan dengan kecepatan sebagai input untuk membuat lompatan yang sama terlepas dari kecepatan, tetapi saya tidak tahu apa persamaan itu.
Oke, jadi itu yang saya pikirkan. Pertanyaan akhirnya adalah, bagaimana tepatnya Anda menerapkan lompatan ganda dengan fisika? Apakah ada persamaan yang tepat untuk masalah saya? Haruskah saya mengambil pendekatan yang berbeda? Ini sudah pernah dilakukan sebelumnya dalam game seperti Smash Bros, jadi ada solusi yang berulang, kan?