ฉันจะทำการจำลองทางฟิสิกส์ที่กำหนดขึ้นได้อย่างไร
ฉันกำลังสร้างเกมฟิสิกส์ที่เกี่ยวข้องกับวัตถุแข็งเกร็งซึ่งผู้เล่นเคลื่อนย้ายชิ้นส่วนและชิ้นส่วนเพื่อไขปริศนา / แผนที่ สิ่งสำคัญอย่างยิ่งของเกมคือเมื่อผู้เล่นเริ่มทำการจำลองสถานการณ์มันจะทำงานแบบเดียวกันทุกที่โดยไม่คำนึงถึงระบบปฏิบัติการตัวประมวลผลและอื่น ๆ ... มีห้องสำหรับความซับซ้อนจำนวนมากและการจำลองอาจทำงานเป็นเวลานานดังนั้นจึงเป็นเรื่องสำคัญที่เอนจิ้นฟิสิกส์จะกำหนดอย่างสมบูรณ์เกี่ยวกับการทำงานของจุดลอยตัวมิฉะนั้นวิธีแก้ปัญหาอาจปรากฏขึ้นเพื่อ "แก้ปัญหา" บนเครื่องของผู้เล่นคนหนึ่งและ "ล้มเหลว" กับอีกรายการหนึ่ง ฉันจะบรรลุระดับนี้ในเกมของฉันได้อย่างไร ฉันยินดีที่จะใช้กรอบและภาษาที่หลากหลายรวมถึง Javascript, C ++, Java, Python และ C # ฉันถูกล่อลวงโดย Box2D (C ++) เช่นเดียวกับภาษาอื่นที่เทียบเท่าเนื่องจากดูเหมือนว่าจะตอบสนองความต้องการของฉัน แต่มันขาดการกำหนดจุดลอยตัวโดยเฉพาะอย่างยิ่งกับฟังก์ชันตรีโกณมิติ ตัวเลือกที่ดีที่สุดที่ฉันเคยเห็นมาแล้วนั้นเทียบเท่ากับ Java ของ Box2D (JBox2D) ดูเหมือนจะใช้ความพยายามในการกำหนดระดับจุดลอยตัวโดยใช้StrictMathมากกว่าMathสำหรับการใช้งานหลายอย่าง แต่ก็ไม่มีความชัดเจนว่าเอ็นจิ้นนี้จะรับประกันทุกสิ่งที่ฉันต้องการเพราะฉันยังไม่ได้สร้างเกม เป็นไปได้ที่จะใช้หรือดัดแปลงเอ็นจิ้นที่มีอยู่เพื่อให้เหมาะกับความต้องการของฉันหรือไม่? หรือฉันจะต้องสร้างเครื่องยนต์ด้วยตัวเอง? แก้ไข: ข้ามส่วนที่เหลือของโพสต์นี้ถ้าคุณไม่สนใจว่าทำไมใครบางคนถึงต้องการความแม่นยำเช่นนี้ บุคคลในความคิดเห็นและคำตอบดูเหมือนจะเชื่อว่าฉันกำลังมองหาบางสิ่งที่ฉันไม่ควรทำเช่นนี้ฉันจะอธิบายเพิ่มเติมเกี่ยวกับวิธีการทำงานของเกม ผู้เล่นจะได้รับจิ๊กซอว์หรือระดับซึ่งมีอุปสรรคและเป้าหมาย เริ่มแรกการจำลองไม่ทำงาน จากนั้นพวกเขาสามารถใช้ชิ้นส่วนหรือเครื่องมือที่ให้ไว้เพื่อสร้างเครื่องจักร เมื่อพวกเขากดเริ่มการจำลองจะเริ่มขึ้นและพวกเขาจะไม่สามารถแก้ไขเครื่องได้อีกต่อไป หากเครื่องแก้แผนที่ผู้เล่นได้เอาชนะระดับ ไม่เช่นนั้นพวกเขาจะต้องกดหยุดปรับเปลี่ยนเครื่องแล้วลองอีกครั้ง เหตุผลที่ทุกอย่างจำเป็นต้องกำหนดขึ้นเพราะฉันวางแผนที่จะสร้างรหัสที่จะแมปเครื่องทุกเครื่อง (ชุดของชิ้นส่วนและเครื่องมือที่พยายามแก้ปัญหาระดับ) ไปยังไฟล์ xml หรือ …