วีดีโอ: 2d Rocket Landing Sim: 3 ขั้นตอน
2025 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2025-01-13 06:58
คุณจะต้องสร้างฉากหลัง วาดจรวด และตัวบ่งชี้เพื่อเริ่มต้น (แน่นอนว่าคุณต้องมีการเชื่อมต่ออินเทอร์เน็ตเพื่อใช้ Scratch) หากคุณต้องการเล่นการจำลอง/ เกม คลิกที่นี่ หรือไปที่ https:/ /scratch.mit.edu/projects/432509470/
ขั้นตอนที่ 1: Physics Engine
เครื่องจำลองจรวดไม่สามารถอยู่ได้หากไม่มีการจำลองทางฟิสิกส์ ดังนั้น คุณจะต้องใช้ตัวแปรทั้งหมดดังนี้:
- Vh หรือ VelocityHorizontal ตามที่แสดงในตัวอย่าง
- Vv หรือ VelocityVertical ตามที่แสดง
- EnginePower เพื่อระบุแรงผลักดันที่เกิดจากจรวด
- EngineAngle สำหรับการบังคับเลี้ยวด้วยกิมบอลส์
- ความเร็วรวม สำหรับตัวบ่งชี้และสภาวะทัชดาวน์
- ระเบิดด้วยเหตุผลที่เราจะเข้าสู่ขั้นตอนต่อไป
หลังจากสร้างตัวแปรแล้ว ไปที่แท็บ "การเคลื่อนไหว" แล้ววางบล็อค [change x by()] และ [change y by()]
วาง Vv ของคุณใน [change y by()] และ Vh ใน [change x by()] และใส่สิ่งทั้งหมดในลูป
หากต้องการเพิ่มแรงโน้มถ่วง เพียงเพิ่ม [เปลี่ยน Vh โดย (-1)] ไปที่ลูป
หากต้องการเพิ่มความคล้ายคลึงของการลาก ให้เพิ่มบล็อกต่อไปนี้ในลูป:
[ตั้งค่า Vh เป็น (0.99*Vh)]
[ตั้งค่า Vv เป็น (0.999*Vv)]
โอ้ ที่รัก ถึงเวลาของ "เครื่องยนต์" แล้ว
เนื่องจากสิ่งนี้จะถูกควบคุมโดย gimbals และการชี้ทิศทาง เราจึงต้องการบางสิ่งที่จะช่วยให้จรวดเคลื่อนที่ไปในทิศทางที่มันชี้ไป เนื่องจากการหมุนของเครื่องยนต์จะส่งผลต่อทิศทางของแรงขับ มุมของเครื่องยนต์จะส่งผลต่อทิศทางของแรงขับโดยรวมเล็กน้อย ดังนั้นให้เพิ่มนั้น และขอให้คอมพิวเตอร์แสดงตรีโกณมิติและ voila เล็กน้อย เอาต์พุตของเครื่องยนต์เสร็จสิ้น
ขั้นตอนที่ 2: กลศาสตร์เกม
ในฐานะ "เกม" สิ่งนี้ต้องมีการควบคุม เงื่อนไขการชนะ และวิธีที่จะจบเกม
สำหรับการควบคุม สิ่งที่ต้องทำคือเชื่อมต่อคีย์กับตัวแปรบางตัวที่เราตั้งค่าไว้ก่อนหน้านี้
กำหนดกุญแจสองดอกสำหรับทิศทางของเครื่องยนต์และอีกปุ่มหนึ่งสำหรับกำลังเครื่องยนต์ดังที่แสดงด้านบน
สำหรับเงื่อนไขการชนะ ให้ใช้สีเฉพาะหรือระดับ y หนึ่งสีเป็นพื้น และที่นี่ฉันใส่ส่วนใหญ่ของแผนที่เป็นพื้นที่ที่ไม่สามารถลงจอดได้ ดังที่คุณเห็นในที่นี้ มีการใช้ตัวแปร "ระเบิด" ซึ่งจะป้องกันไม่ให้ผู้ตั้งค่าเครื่องแต่งกายเปลี่ยนกลับเป็นชุดที่ยังไม่ระเบิดเมื่อเกิดการระเบิดขึ้น พารามิเตอร์กำลังตั้งตรงไม่มากก็น้อย และมีความเร็วต่ำมาก ตอนนี้หลังจากการลงจอด จรวดจะถูกวางที่ระดับ y เพื่อป้องกันจรวดลอยน้ำ และทุกอย่างถูกตั้งค่าเป็น 0
สำหรับเงื่อนไขการเริ่มต้น ให้ตั้งค่าเป็นมุมที่เหมาะสมในสถานที่ที่เหมาะสม หรือสุ่มเลือกก็ได้
ขั้นตอนที่ 3: ตัวชี้วัด
และสุดท้ายเพียงเพื่อให้เล่นได้สำหรับผู้คนจำนวนมากขึ้น ฉันได้เพิ่มตัวบ่งชี้ และคุณควรเช่นกัน ตัวบ่งชี้ที่มองเห็นได้ง่ายกว่า และโค้ดจะแสดงอยู่ด้านบน