ฉันไม่มีคำตอบสำหรับคำถามตามที่เขียน แต่ฉันเชื่อว่าคุณอาจลองถามว่า "ทำไมจึงไม่มีเอ็นจิ้นเกมทำงานมากกว่า" แทนที่จะมองหาคำถามเฉพาะที่จะใช้ หากถูกต้องคุณควรใช้ถ้อยคำใหม่อีกครั้ง ถ้าไม่ ... ไม่สนใจฉัน :)
วิธีการใช้งานอย่างแท้จริงนั้นไม่เหมาะสำหรับเกม เกม (และกราฟิกและฟิสิกส์และ AI) และโดยทั่วไปเกี่ยวกับการเปลี่ยนแปลงสถานะ วิธีการทำงานที่ถูกต้องของปัญหาเหล่านี้คือการคำนวณสถานะใหม่ทั้งหมดหนึ่งครั้งต่อลูปซึ่งจะมีโทษประสิทธิภาพที่รุนแรงมากเมื่อเทียบกับการเข้ารหัสโดยตรงกับการทำงานของฮาร์ดแวร์จริง
ด้วยเหตุนี้คุณจึงไม่เห็นเอ็นจิ้นเกมสไตล์การทำงานใด ๆ ในการผลิต เป็นเพียงกระบวนทัศน์การเขียนโปรแกรมที่ผิดสำหรับปัญหาส่วนใหญ่ที่เอ็นจิ้นเกมมีไว้เพื่อแก้ไข มันเป็นกระบวนทัศน์การเขียนโปรแกรมที่ผิดสำหรับปัญหาส่วนใหญ่ที่ต้องได้รับการแก้ไขในระดับสูงกว่าการเขียนสคริปต์และรหัสเกมตรรกะ ในขณะที่เกือบจะเป็นไปได้ที่จะสร้างเอ็นจิ้นเกมที่ใช้งานได้มันจะช้าใช้งานยากและยุ่งยากและจะไม่มีจุดประสงค์ที่แท้จริงนอกเหนือไปจากการสาธิต / เล่นของเล่นให้เรียบร้อย
ไม่ได้หมายความว่าการเขียนโปรแกรมการทำงานไม่มีที่ใดที่หนึ่งในเกม ฉันใช้รูปแบบการเขียนโค้ดที่ใช้งานได้ดี (ในกรณีที่เหมาะสม) ใน C #, Unity JavaScript และแม้แต่ C ++ 11 ปัญหาบางอย่างที่เฉพาะเจาะจงนั้นดีที่สุดหรืออย่างน้อยก็แก้ไขได้อย่างง่ายดายที่สุดด้วยสไตล์การใช้งานและภาษายอดนิยมส่วนใหญ่ในปัจจุบันสนับสนุนรูปแบบของการเขียนโปรแกรมแม้ว่าจะมีความยุ่งยากมากกว่าภาษาที่ใช้งานได้จริง โดยทั่วไปปัญหาเหล่านี้แก้ไขได้ด้วยวิธีการใช้งานที่ไม่ได้อยู่ในรหัสเครื่องยนต์หลักหรือรหัสที่ทำงานในเกม ฟังก์ชั่นการเข้ารหัสสามารถเป็นประโยชน์สำหรับเครื่องมือและการประมวลผลข้อมูลออฟไลน์ (ตัวอย่างรุ่นการทำเบเกอรี่และสินทรัพย์อื่น ๆ ) นอกจากนี้ยังเป็นที่ถกเถียงกันอยู่ว่าการเขียนโปรแกรม GPU ทำงานได้ไม่ดีในการเขียนอัลกอริธึม
แน่นอนว่ายังคงเป็นการดีที่สุดที่จะหลีกเลี่ยงวิธีการใช้งานนอกสถานการณ์ที่เฉพาะเจาะจงเนื่องจากคุณต้องการให้เครื่องมือออฟไลน์เหล่านี้ทำงานได้เร็วที่สุด ภาษาที่ใช้งานได้ดีในแบบขนานซึ่งดีสำหรับปัญหาบางอย่าง แต่นามธรรมจากฮาร์ดแวร์มีแนวโน้มที่จะนำไปสู่ประสิทธิภาพของเธรดเดี่ยวที่ไม่มีประสิทธิภาพ (ภาษาอย่าง LISP ทำได้ดีที่นี่เพราะพวกมันไม่ได้ใช้งานได้จริงและในความเป็นจริง LISP ทั่วไปนั้นมีหลายกระบวนทัศน์) สิ่งที่เลวร้ายที่สุดอย่างแน่นอนสำหรับเกมเอ็นจิ้นหรือชุดเครื่องมือที่เกี่ยวข้องคือคอขวดสำหรับเนื้อหาซ้ำ เอนจิ้นแฟนซีที่มีคุณสมบัติมากมายที่ใช้เวลาศิลปินหรือนักออกแบบระดับในการทำสิ่งที่สามารถทำได้ภายใน 5 นาที (หรือใกล้เคียงทันที) จะนำไปสู่เกมที่มีคุณภาพต่ำหรือยกเลิกเนื่องจากการเพิ่มงบประมาณ