เกมเคยเขียนด้วยภาษาเครื่องเพราะมีฮาร์ดแวร์แปลกใหม่ที่ไม่มีคอมไพเลอร์ ฮาร์ดแวร์ยังขาดคุณสมบัติที่โปรแกรมเมอร์ C รับเช่นเลขจำนวนเต็ม 16 บิตที่มีประสิทธิภาพ
เมื่อเกมตัดสินบนฮาร์ดแวร์ที่คุ้นเคยคอมไพเลอร์ C ก็พร้อมใช้งานและในเวลาอันสั้นเกมทั้งหมดถูกเขียนเป็น C
C ++ ดูเหมือนจะเป็นความคิดที่ดีในครั้งเดียวและเกมส่วนใหญ่เป็น C ++ ในวันนี้ แต่ตอนนี้วิศวกรกำลังพึมพำกับการกลับไปที่ C และนั่นอาจเกิดขึ้น ฉันชอบที่จะทำงานในเกมใน C และเพื่อนร่วมงานจำนวนมากก็จะชอบ ไม่มีคุณสมบัติใหม่สำหรับ C ++ ที่ฉันคิดว่าปรับปรุงเกม
ดูเหมือนว่าตอนนี้คอมพิวเตอร์จะเร็วกว่า 1,000 เท่าเมื่อไม่กี่ปีที่แล้วภาษาระดับสูงจะช่วยลดเวลาในการพัฒนา ($) ทำให้ C ล้าสมัย
สิ่งนี้ไม่ได้เกิดขึ้นเพราะผู้ซื้อเกมรู้ว่าฮาร์ดแวร์ดีกว่า 1,000 เท่าและต้องการแลกเปลี่ยนดอลลาร์เพื่อเกมที่มีลักษณะและเสียงดีกว่า 1000x สิ่งนี้จะช่วยลดความหย่อนจากระบบที่ภาษาระดับสูงใช้
ข้อกำหนดด้านประสิทธิภาพในเกมนั้นโหดร้าย เฟรมของกราฟิกใหม่จะต้องแสดงผลในภายใต้ 33ms (หรือ 16ms!) โดยไม่ล้มเหลว ทุกสิ่งที่ฮาร์ดแวร์จะต้องนำมาพิจารณาเพื่อให้สามารถบรรลุงบประมาณนี้ ภาษาใดก็ตามที่ออกไปและทำอะไรบางอย่างกับฮาร์ดแวร์ที่โปรแกรมเมอร์ไม่เข้าใจหรือคาดหวังว่าจะทำให้ยากที่จะทำตามงบประมาณนี้ นี่คืออัตโนมัติลบกับทุกสิ่งที่ระดับสูง
โปรแกรมเมอร์เกมไม่เพียงทำงานในภาษาระดับต่ำเท่านั้น แต่ยังหลีกเลี่ยงโครงสร้างข้อมูลและอัลกอริธึมระดับสูงด้วย เกมมักจะไม่มีรายการที่เชื่อมโยงและไม่ค่อยมีต้นไม้ มีการเคลื่อนไหวต่อการหลีกเลี่ยงพอยน์เตอร์เมื่อเป็นไปได้ * อัลกอริทึมที่มีเวลามากกว่า O (N) หรือพื้นที่ O (1) มีแนวโน้มที่จะไม่พบการใช้งานที่กว้างขวาง
* ถ้าพอยน์เตอร์ไม่ทำให้แคชหายไปทำไมใช้ 32 บิตเพื่อเก็บมัน? หากตัวชี้ทำให้แคชหายควรกำจัดแคชนั้นเสีย