ฉันกำลังเล่นเกม 2D บน iPhone โดยใช้ Corona (เวอร์ชั่นทดลองดังนั้นฉันไม่สามารถใช้ฟอรัมของพวกเขาได้) เกมดังกล่าวเกี่ยวข้องกับตัวละครที่ตกลงมาบนท้องฟ้าและฉันพยายามที่จะใช้ "การกระโดดสองครั้ง" สำหรับตัวละครเพื่อให้เขาสามารถกระโดดขึ้นได้ในขณะที่ตกลงมา ฉันใช้ห้องสมุดฟิสิกส์ของ Corona เพื่อให้ตัวละครตกและวิธีที่ดีที่สุดในการกระโดดให้เขาคือการใช้วิธีการกระตุ้นตามแนวตั้ง
object:applyLinearImpulse(0, -0.4, object.x, object.y)
ปัญหาที่ฉันเผชิญคือเมื่อตัวละครเพิ่งเริ่มต้น (ความเร็วแนวตั้งต่ำ) เขากระโดดสูงมากและเมื่อเขาตกลงมาพักหนึ่ง (ความเร็วแนวตั้งสูง) การกระโดดนั้นเล็กน้อย ฉันเดาว่าทางออกที่ดีที่สุดคือใช้สมการบางอย่างกับความเร็วเป็นอินพุตเพื่อให้กระโดดเหมือนกันโดยไม่คำนึงถึงความเร็ว แต่ฉันไม่สามารถหาได้ว่าสมการนั้นจะเป็นอะไร
โอเคนั่นคือความคิดทั้งหมดของฉัน คำถามสุดท้ายก็คือคุณใช้การกระโดดสองครั้งกับฟิสิกส์ได้อย่างไร มีสมการที่เหมาะสมสำหรับปัญหาของฉันหรือไม่ ฉันควรใช้แนวทางอื่นหรือไม่? มันเคยทำมาก่อนในเกมเช่น Smash Bros ดังนั้นจึงมีวิธีแก้ปัญหาที่ทำซ้ำได้ใช่ไหม?