หากไม่มีคนดังแล้วทำไมล่ะ
เพราะไม่มีอะไรคล้ายกับฉันทามติเกี่ยวกับวิธีการทำงานของกรอบดังกล่าว
ในหัวข้อบน Gamedev.net ฉันพบว่าเมื่อผู้คนพูดคุยเกี่ยวกับระบบเกมที่ใช้องค์ประกอบมีอย่างน้อย 8 วิธีเรียงสับเปลี่ยนที่เป็นไปได้ของวิธีที่พวกเขาคาดหวังว่าพวกเขาจะทำงานโดยใช้ 3 ปัจจัยที่แตกต่างกัน:
Inboard vs. outboard - ควรมีการรวมส่วนประกอบเข้ากับเอนทิตีหรือควรเป็นส่วนหนึ่งของระบบย่อยและเชื่อมโยงโดย ID เอนทิตี้เท่านั้น
องค์ประกอบแบบคงที่เทียบกับแบบไดนามิก - เอนทิตีควรประกอบด้วยชุดของส่วนประกอบที่รู้จัก (เช่น 1 ฟิสิกส์, 1 แอนิเมชั่น, 1 AI, ฯลฯ ) ที่สามารถสื่อสารในรหัสผ่านอินเทอร์เฟซที่รู้จักกันดีหรือนิติบุคคลสามารถเพิ่มองค์ประกอบ พวกเขา (พร้อมกลยุทธ์ที่เกี่ยวข้องสำหรับการค้นหาส่วนประกอบอื่น ๆ ที่น่าสนใจ)
ข้อมูลเกี่ยวกับองค์ประกอบเทียบกับข้อมูลในเอนทิตี - ข้อมูลควรถูกจัดเก็บโดยองค์ประกอบที่ดำเนินงานเป็นหลักหรือไม่? หรือข้อมูลควรถูกเก็บไว้ในเอนทิตีในพื้นที่ที่ใช้ร่วมกันเข้าถึงได้โดยส่วนประกอบทั้งหมดหรือไม่
นอกเหนือจากนั้นยังมีคำถามเพิ่มเติมเกี่ยวกับองค์ประกอบที่ควรสื่อสาร (ผ่านข้อมูลที่แชร์หรือไม่ผ่านตัวชี้ฟังก์ชั่นผ่านสัญญาณ / ช่องเสียบหรือไม่เลย?) พวกเขาควรจะปรับปรุงอย่างไร - ลำดับความสำคัญที่กำหนดในเวลาการสร้าง - ขึ้นอยู่กับการเรียงลำดับทอพอโลยีของการพึ่งพาซึ่งกันและกันของส่วนประกอบ?) ฯลฯ
ตัวเลือกเหล่านี้แต่ละตัวเป็นไปโดยพลการและคุณสามารถทำอะไรกับระบบใดระบบหนึ่งได้ แต่วิธีที่คุณต้องใช้รหัสมันค่อนข้างแตกต่างกันในแต่ละกรณี และคนดูเหมือนจะมีความคิดเห็นที่ดีซึ่งวิธีที่ดีที่สุดสำหรับพวกเขา
ตอนนี้ผู้คนยังคงตกอยู่ในความคิดที่ว่าส่วนประกอบต่าง ๆ เป็นสิ่งทดแทนการวางแนววัตถุ (ซึ่งพวกมันไม่ได้) และจินตนาการว่าพวกเขามีการเปลี่ยนแปลงครั้งใหญ่จากวิธีการทำเกมแบบดั้งเดิม - ผู้คนได้แยกเอาระบบย่อยต่าง ๆ ในเอนทิตีของพวกเขามานาน) ดังนั้นจึงมีอติพจน์มากและไม่เห็นด้วยมากนัก บางทีในอีกไม่กี่ปีข้างหน้าสิ่งต่างๆจะสงบลงและผู้คนจะตั้งหลักแหล่งมาตรฐานหนึ่งหรือสองวิธี