
ที่มาภาพ: PC Gamer
Steve McCrea ทำ Doom ให้รันบน Commodore 64 ด้วยเทคนิค ray casting.
⚡ สรุป 30 วิ
Steve McCrea นักโปรแกรมเมอร์สร้าง Doom บน Commodore 64 โดยใช้ ray casting บนตารางไทล์ แม้มี RAM เพียง 64 KB ระบบยังแสดงระดับ E1M1‑E1M8 พร้อม skybox…
การพัฒนา Doom ให้ทำงานบนเครื่องคอมพิวเตอร์เก่าอย่าง Commodore 64 ของสตีฟ แม็คครีอา (Steve McCrea) แสดงให้เห็นถึงขอบเขตของเทคนิคการโปรแกรมที่สามารถดัดแปลงเกม 3‑มิติระดับไอคอนได้แม้ในยุค 8‑บิต การทำงานนี้นอกจากจะเป็นความสำเร็จทางเทคนิคแล้ว ยังเปิดโอกาสให้ชุมชนรีทโร (retro) ได้เห็นศักยภาพใหม่ของฮาร์ดแวร์คลาสสิกที่หลายคนอาจมองว่าไม่มีความสามารถพอ
Overview
สตีฟ แม็คครีอาเป็นวิศวกรและโปรแกรมเมอร์ที่เคยทำงานกับเกมซีรีส์ Metroid และพอร์ต VR ของ Resident Evil 4 ก่อนจะตัดสินใจทุ่มเทให้กับโครงการ “Doom บน Commodore 64” โครงการนี้ไม่ได้เป็นการพอร์ตแบบตรงไปตรงมา เนื่องจาก C‑64 มีสถาปัตยกรรม 8‑บิตและหน่วยประมวลผล MOS6502 ที่จำกัดมากกว่าคอมพิวเตอร์สมัยใหม่หลายรุ่น
แม็คครีอาได้อ้างอิงโค้ดของเกมแรก ๆ บนระบบนี้ชื่อ The Keep ซึ่งเป็นเกมสำรวจดันเจี้ยนแบบมุมมองบุคคลที่หนึ่ง (first‑person) ที่เขาพัฒนาให้ทำงานบนเครื่อง VIC‑20 รุ่นบรรพบุรุษของ C‑64 การนำโค้ดจาก VIC‑20 มาปรับใช้จึงเป็นพื้นฐานสำคัญในการสร้างระบบเรย์แคสติ้งบนตารางไทล์ (tile grid) ที่จะจำลองมุมมอง 3‑มิติ
Technical Approach
แม็คครีอาอธิบายว่า Doom บน C‑64 ใช้เทคนิค ray casting ซึ่งเป็นการส่งรังสีจากจุดกล้องไปยังแผนที่ไทล์เพื่อคำนวณระยะห่างและสร้างภาพในเชิงลึก แม้ว่าจะไม่ใช่ 3‑มิติจริง ๆ แต่ก็ทำให้ได้ผลลัพธ์ที่คล้ายกับเกมต้นฉบับ การใช้ ray casting บนระบบที่มี RAM เพียง 64 KB ทำให้ต้องประหยัดการใช้หน่วยความจำอย่างเข้มงวด
แตกต่างจาก The Keep ที่เป็นเพียงเขาวงกตแบนราบ โครงการ Doom นี้เพิ่มคุณสมบัติหลายอย่าง เช่น
- ความสูงของพื้นและเพดานที่เปลี่ยนได้
- ลิฟท์ (elevators) เพื่อย้ายระหว่างชั้นต่าง ๆ
- ประตูที่เปิด‑ปิดแบบเรียลไทม์
- อาวุธที่สามารถมองเห็นบนหน้าจอ
สิ่งเหล่านี้ต้องอาศัยการจัดการกราฟิกและข้อมูลระดับอย่างละเอียด แม็คครีอายังได้ทำให้มี skybox และระบบแสงที่เปลี่ยนแปลงตามสภาพแวดล้อม ซึ่งเป็นความท้าทายใหญ่บนฮาร์ดแวร์ของ C‑64
Development Progress
จนถึงวันที่ 29 กรกฎาคม 2026 แม็คครีอาได้เผยคลิปวิดีโอเวอร์ชันทำงาน (work‑in‑progress) ที่แสดงระดับ E1M1 ถึง E1M8 ของ Doom พร้อมกับการส่องแสงที่เปลี่ยนแปลงและพื้นฟ้ากลางท้องฟ้า (skybox) แม้ว่ายังไม่มีดนตรีประกอบ แต่เขาได้เรียกร้องความช่วยเหลือจากคอมโพสเซอร์ชื่อ Chris Hülsbeck เพื่อทำซาวด์แทร็กให้เกม
ในกระทู้บน X (Twitter) ของแม็คครีอา เขายังระบุว่ากำลังมุ่งเน้นปรับแต่งอาวุธ เช่น ช็อตแกน และพัฒนาการจัดการแสงให้ดีขึ้น การทำงานนี้ต้องใช้เวลาและทรัพยากรอย่างมาก เนื่องจากระบบเสียงของ C‑64 มีข้อจำกัดอยู่แล้ว
Community Reaction
การที่ Scott Miller ผู้ก่อตั้งบริษัท Apogee Software (ผู้เผยแพร่ Wolfenstein 3D) แสดงความประทับใจต่อโครงการนี้ ถือเป็นสัญญาณยืนยันถึงคุณค่าของผลงาน แม้เขาจะเคยร้องขอให้ Id Software ทำเวอร์ชัน C‑64 ของ Wolfenstein 3D แต่ถูกปฏิเสธว่า “ทำไม่ได้” ตอนนั้น
มุมมองของผู้สนใจเทคโนโลยีเรตโบร (retro) ส่วนใหญ่เป็นการชมเชยว่า แม็คครีอาได้พิสูจน์ให้เห็นว่าข้อจำกัดทางฮาร์ดแวร์ไม่ใช่อุปสรรคที่ไม่มีทางแก้ไข การทำ Doom ให้วิ่งบน C‑64 ยังเปิดแนวคิดใหม่ในการสำรวจศักยภาพของเครื่องคอมพิวเตอร์เก่า ๆ ที่อาจถูกมองข้ามไป
Impact
การสร้าง Doom บน Commodore 64 ไม่ได้มีเป้าหมายเชิงพาณิชย์ แต่เป็นโครงการที่ส่งผลต่อวงการศึกษาการเขียนโปรแกรมบนระบบจำกัด หากนักศึกษาและผู้พัฒนาสามารถเข้าใจวิธีจัดการทรัพยากรอย่างมีประสิทธิภาพจากกรณีนี้ จะช่วยเพิ่มความรู้ด้าน low‑level programming และเทคนิคการเรย์แคสติ้งแบบประหยัด
ในระยะยาว การทำให้เกมคลาสสิกกลับมามีชีวิตบนฮาร์ดแวร์โบราณอาจกระตุ้นตลาดของอุปกรณ์และซอฟต์แวร์รีทโรให้เติบโตมากขึ้น ทั้งการขายอุปกรณ์จำลอง (emulators) และการพัฒนาซอฟต์แวร์ใหม่ ๆ ที่รองรับระบบเก่า
Summary
สตีฟ แม็คครีอาได้สร้าง Doom ให้ทำงานบน Commodore 64 ด้วยเทคนิค ray casting บนตารางไทล์ พร้อมคุณสมบัติเช่นระดับที่เปลี่ยนแปลง ความสูงของพื้นและเพดาน และระบบแสงที่ปรับได้ การพัฒนานี้ได้รับการชื่นชมจากผู้ทรงอิทธิพลในวงการเกมเก่าและเปิดโอกาสใหม่ให้กับชุมชนรีทโรในการสำรวจศักยภาพของฮาร์ดแวร์คลาสสิก.
แชร์บทความนี้:
ชอบบทความแบบนี้?
สมัคร AI Automate Weekly Newsletter — รับเคล็ดลับ AI + how-to ใหม่
ทุกสัปดาห์ตรงถึง inbox ฟรี ไม่มีสแปม
แหล่งข่าวต้นฉบับ
- ชื่อต้นฉบับ
- Proving Doom can actually run on anything, one programmer has made a working build for Commodore 64
- ผู้เขียน
- Shaun Prescott
- แหล่ง
- PC Gamer
- วันที่เผยแพร่
- 30 กรกฎาคม 2569 เวลา 07:09



