แพลตฟอร์มวิดีโอเกมเก่าที่พัฒนาบนแพลตฟอร์มใด [ปิด]


13

ฉันกระตือรือร้นที่จะรู้ว่าวิดีโอเกมทางทีวี (ที่เราเคยเล่นในวัยเด็กของเรา) ได้รับการพัฒนาและบนแพลตฟอร์มใด

ฉันรู้ว่าเกมได้รับการพัฒนาสำหรับอุปกรณ์มือถือ Windows PC และ Mac แต่ฉันไม่เข้าใจว่า Contra, Duck Hunt และเกมเหล่านั้นได้รับการพัฒนาอย่างไร (ในสมัยนั้น) เนื่องจากพวกมันมีกราฟิคสูงและสเตจจำนวนมาก ดังนั้นพวกเขาจึงจัดการพัฒนาเกมในสภาพแวดล้อมขนาดเล็กเช่นนี้และด้วยแพลตฟอร์มการกำหนดค่าที่ต่ำลงได้อย่างไร


3
Jordan Mechner ปล่อยแหล่งที่มาของ Prince of Persia สำหรับ Apple II เมื่อไม่กี่เดือนที่ผ่านมา: ดูที่นี่หากคุณสนใจ
Laurent Couvidou

คำตอบ:


17

เกมเก่า ๆ ที่เขียนขึ้นสำหรับ NES, Game Boy, SNES และแม้แต่ระบบเก่า ๆ เช่นตระกูลอาตาริมักจะเขียนด้วยภาษาแอสเซมบลี สิ่งนี้มีความจำเป็นเนื่องจากคอมไพเลอร์ C ของเวลานั้นไม่มีอยู่จริงหรือไม่ขึ้นอยู่กับภารกิจในการสร้างรหัสที่มีประสิทธิภาพเพียงพอ

พวกเขาสามารถบีบสิ่งเหล่านั้นทั้งหมดลงในคาร์ทริดจ์ขนาดเล็ก - สำหรับ NES แม้แต่ 256KB ก็เป็นข้อมูลจำนวนมาก (แม้ว่าจะมีเกมขนาดใหญ่กว่า) - เพราะพวกเขาใช้เทคนิคที่ชาญฉลาดเช่นกราฟิกแบบเรียงต่อกันและกราฟิกสีต่ำ ของข้อมูลที่จะจัดเก็บในพื้นที่น้อยมาก นอกจากนี้ชิปพิเศษสำหรับวิดีโอและเสียงทำให้สามารถจัดการสิ่งเหล่านี้ได้อย่างมีประสิทธิภาพมากขึ้นโดยไม่ต้องทำทุกอย่างในซอฟต์แวร์

เมื่อเวลาผ่านไปคอมไพเลอร์ C มีประสิทธิภาพมากขึ้นและอุปกรณ์มีประสิทธิภาพมากขึ้น - N64, GBA และอุปกรณ์ต่อมาทั้งหมดใช้ C หรือแม้กระทั่ง C ++ โดยค่าเริ่มต้น - และแอสเซมบลีถูกสงวนไว้สำหรับรหัสชิ้นเล็ก ๆ เป้าหมาย (หรืออะไรก็ตามที่ทำให้เกมวิ่งไปมา)


4
@Mihir เกมเก่า ๆ ไม่มีที่ติไม่ว่าด้วยวิธีใดก็ตาม แต่ส่วนหนึ่งของเหตุผลที่พวกเขาดูเหมือนจะทำงานได้ดีขึ้นกว่าเกมที่ผ่านมาบางส่วนเป็นเพราะพวกเขายังห่างไกลไกลซับซ้อนน้อยกว่าคู่ที่ทันสมัยของพวกเขา
chaosTechnician

1
@AndroidCoader สิ่งที่คุณกำลังมองหาเรียกว่าโปรแกรมจำลอง พวกเขามีอยู่ในหลายแพลตฟอร์มเลียนแบบฟังก์ชั่นของระบบเก่าบนเครื่องจักรที่ทันสมัย ​​แต่มักจะมีปัญหาทางกฎหมาย / พื้นที่สีเทาจำนวนมากที่เกี่ยวข้องกับการใช้พวกเขาในการเล่นเกม
chaosTechnician

ฉันเชื่อว่า "Gran Turismo" เมื่อมันออกมาเป็นครั้งแรกบน PS นั้นมีรหัสจำนวนมากที่เขียนไว้ในชุดประกอบเนื่องจากมีส่วนเกี่ยวข้องกับฟิสิกส์
casperOne

3

ฉันจำได้ว่าเขียนเกมง่ายๆสำหรับ Commodore 64 / Vic20 ย้อนกลับไปในช่วงต้นยุค 80 พื้นฐานบางอย่าง (เชื่อหรือไม่ - บางเกมมีการเข้ารหัสพื้นฐานอย่างสมบูรณ์ - พื้นฐานอยู่ใน ROM ของเครื่องดังนั้นจึงเป็น freebie) - แต่ส่วนใหญ่เป็นแอสเซมเบลอร์ แอสเซมเบลอร์ไม่สอดคล้องกัน - เครื่องจักรส่วนใหญ่มีแอสเซมเบลอร์เชิงพาณิชย์หลายอย่างให้ใช้งาน กราฟิกบน C64 นั้นก้าวหน้าไปมากในขณะที่ Sprite Hardware Sprite (อนุญาตเพียง 8 ครั้งบนหน้าจอในแต่ละครั้ง - แต่สิ่งเหล่านี้สามารถทำซ้ำได้ในซอฟต์แวร์ที่มีเทคนิคบางอย่างให้ร้อย แต่เพียง 8 ชนิดบนหน้าจอในแต่ละครั้ง) พวกเขามี 16 สี (จานสี - ซึ่งสามารถเปลี่ยนแปลงได้ในเวลาทำงานเช่นเดียวกับสไปรต์) แน่นอนว่าสไปรต์ 2 มิติ

"คอมพิวเตอร์ที่บ้าน" ตัวแรกที่ฉันเล่นด้วย (ไม่สนใจเครื่องวิทยาศาสตร์และธุรกิจก่อนหน้านี้) คือ ZX81 (โรงเรียนของฉันมี ZX80 - แต่มันถูกล็อคไว้ในกล่องแก้วเหมือนการจัดแสดงพิพิธภัณฑ์ - ไม่มีใครรู้วิธีใช้มัน!) ลองนึกภาพการเขียนเกมใน 1/4 ของ K (นั่นคือ 256 ไบต์!) - ตอนนี้เป็นทักษะ!


3

ระบบวิดีโอเกมหรือเกมคอนโซลรุ่นแรก (ก่อนที่พวกเขาเรียกว่าคอนโซล) จากช่วงปลายปี 1970 และวันนี้ยังคงมีการพัฒนามากเช่นใดระบบคอมพิวเตอร์ฝังตัว

คอมพิวเตอร์ฝังตัวคอมพิวเตอร์ (เช่นไมโครคอนโทรลเลอร์หรือไมโครโปรเซสเซอร์) ในระบบอิเล็กทรอนิกส์ที่ไม่ได้มีลักษณะคล้ายกับเครื่องคอมพิวเตอร์ส่วนบุคคลหรือระบบคอมพิวเตอร์ที่ผู้ใช้หลายขนาดใหญ่ (เช่นระบบเวลาร่วมกัน, คอมพิวเตอร์ขนาดเล็กและเมนเฟรมคอมพิวเตอร์); ข้อแตกต่างที่สำคัญอย่างหนึ่งคือโดยทั่วไปแล้วพวกเขาจะไม่มีอินพุต / เอาต์พุตมาตรฐานในขณะนี้ผ่านเทอร์มินัลวิดีโอและคีย์บอร์ด

การพัฒนาจะทำในคอมพิวเตอร์เครื่องอื่นซึ่งโดยทั่วไปมักจะเป็นพีซีหรือเวิร์คสเตชั่นโดยใช้สภาพแวดล้อมการพัฒนาข้ามแพลตฟอร์มที่สร้างไฟล์ปฏิบัติการสำหรับระบบเป้าหมาย - ระบบวิดีโอเกมในบริบทนี้ซึ่งมักจะเป็นสถาปัตยกรรมไมโครโปรเซสเซอร์ที่แตกต่างCPU (หรือโฮสต์ ) ของระบบเอง

สองตัวอย่างของระบบวิดีโอเกมในปัจจุบันมีสำหรับโซนี่ Playstation 3 ซึ่งจะขึ้นอยู่กับโซนี่, โตชิบาและIBM 's โปรเซสเซอร์มือถือและอุปกรณ์มือถือ (โทรศัพท์มือถือสมาร์ทแท็บเล็ต) ซึ่งมักจะ ARM ไมโครโปรเซสเซอร์ตาม

ตามที่Michael Madsen ระบุส่วนใหญ่ของการเขียนโปรแกรมได้ทำในการชุมนุมมากกว่าภาษาที่รวบรวมในระดับสูงเช่น C หรือ Pascal นี่เป็นสิ่งจำเป็นเพื่อให้พอดีกับเนื้อหาทั้งหมดของเกมภายในขอบเขตของระบบที่มีข้อ จำกัด สูง (RAM น้อยมากและความจุ ROM ของคาร์ทริดจ์ จำกัด ) รวมถึงการเข้าถึงตัวประมวลผลร่วมเช่น TIA ของ Atari 2600

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.