Around The Game l การพอร์ตเกมสิ่งที่แฟนเกมรัก แต่นักพัฒนาเกลียด

แชร์เรื่องนี้:
Around The Game l การพอร์ตเกมสิ่งที่แฟนเกมรัก แต่นักพัฒนาเกลียด

Ports คือการดัดแปลงซอฟต์แวร์จากแพลตฟอร์มหนึ่งไปยังอีกแพลตฟอร์มหนึ่ง โดยไม่ต้องเขียนใหม่ทั้งหมด จากคำนิยามจะเห็นได้ว่าการ Ports นั้นไม่ได้เกิดขึ้นแค่กับวงการเกมเพราะมีการใช้คำว่า “ซอฟต์แวร์” และเกมเองก็ถือว่าเป็นซอฟต์แวร์หนึ่งประเภท และอีกคำที่น่าสนใจคือ “แพลตฟอร์ม” หากจะพูดให้เข้าใจง่ายๆ คืออุปกรณ์ ดังนั้นหากจะสรุปคำนิยามให้เข้าใจง่ายมากขึ้นการ Ports คือการทำให้ซอฟต์แวร์ที่ทำงานได้บนอุปกรณ์หนึ่ง สามารถทำงานได้บนอีกอุปกรณ์อื่นเช่นกัน

เกี่ยวกับวางการเกมยังไง

แน่นอนว่าอุปกรณ์ในวงการเกมนั้นก็หมายถึงเครื่องเล่นเกม ซึ่งแต่ละเครื่องก็มี Hardware และ OS ที่แตกต่างกันไป โดยเรามาดูกันหน่อยว่าในวงการเกมตอนนี้มีระบบปฏิบัติการหรือ OS อะไรบ้าง

  • Play Station บน Prospero OS จาก Sony
  • Nintendo Switch บน Horizon OS จาก Nintedo
  • Xbox บนพื้นฐาน Windows จาก Microsoft
  • และ PC บน Windows Windows จาก Microsoft เช่นกัน

    ซึ่งยังรวมถึง OS กลุ่มผู้ใช้เฉพาะทางอย่าง Steam OS , Mac OS หรือ Linux จะเห็นได้ว่าการที่ทีมพัฒนาจะลงขายเกมของตนเองทุกแพลตฟอร์ม จะต้องเขียนให้เกมรองรับ OS ถึง 4 ตัว
    ที่แต่ละตัวก็มีกระบวนการทำงานไม่เหมือนกัน และแต่ละแพลตฟอร์มก็ใช้ Hardware ที่ต่างกันอีกด้วย

    Resident Evil 4 ที่ลงเกือบทุกแพลตฟอร์ม

แล้วมันยากยังไง

เพื่อให้เห็นภาพผมจะขอยกตัวอย่างสมมุติ เช่น เกมถูกพัฒนาเพื่อวางขายสำหรับ Nintendo Switch ที่ใช้ Horizon OS ซึ่งใช้ NVN เป็น Graphics API และประมวณผลผ่าน CPU เฉพาะของ Nintendo Switch แน่นอนว่าตัวเกมก็ต้องถูกออกแบบเพื่อรองรับการเล่นด้วยจอย ประมวณผลผ่าน CPU เฉพาะของ Nintendo Switch แต่ต่อมา Nintendo เลือกจะนำเกมไปขายบน PC สิ่งที่นักพัฒาต้องเจอ คือ การเปลี่ยน OS มาเป็น Windows ที่ใช้ Graphics API เป็น DirectX เป็นหลัก แถม CPU ก็มีโอกาสเป็นได้หลากหลายเจ้าซึ่งแต่ละเจ้าก็มีลำดับการคำนวณที่แตกต่างกัน ทำให้ทีมพัฒนาต้องศึกษารูปแบบการคำนวณของ CPU ในท้องตลาด นี่ยังไม่นับเรื่องการเปลี่ยนรูปแบบการรับข้อมูลจากจอยคอนโทรลเลอร์ให้เป็นเมาส์และคีย์บอร์ด ที่ทีมพัฒนาส่วนใหญ่ทำออกมาได้แย่เนื่องจากรูปแบบการขยับก้าน Analog กับเมาส์นั้นแต่ต่างกันมาก จะเห็นได้ว่าแค่การยกตัวอย่างแบบไม่ลงรายละเอียดก็ฟังดูยุ่งยากแล้วใช่ไหม?

แนวทางการ Ports ในปัจจุบัน

ในปัจจุบันทีมพัฒนาส่วนใหญ่มักจะใช้การจำลองเครื่อง หรือ Emulator ในการทำให้ซอฟต์แวร์ที่นั้นสามารถทำงานได้บนอุปกรณ์อื่น ซึ่งการจำลองเป็นเครื่องที่ทีมพัฒนากำหนดไว้จะเป็นการตัดปัญหาด้าน OS และความแตกต่างของ Hardware เพราะไม่ว่าเกมตัวนี้จะถูกเปิดด้วยเครื่องอะไรก็ตาม สิ่งที่เกมเห็นจะเห็นเป็นเครื่องที่จำลองเสมอ ฟังแล้วอาจจะดูงงเอาเป็นแสดงลำดับการทำงานอาจจะเข้าใจง่ายขึ้น โดยปกติแล้วการทำงานของเกมจะเป็นแบบ รับข้อมูลจากเม้าส์และคีย์บอร์ด > เกมรับรู้และจะตอบกลับการกระทำ > บอก OS > CPU คำนวณแล้วส่งผลกลับตามลำดับก่อนหน้า

แต่หากเป็นการจำลองจะเป็นแบบ รับข้อมูลจากเม้าส์และคีย์บอร์ด > เกมรับรู้และจะตอบกลับการกระทำ > บอกเครื่องจำลอง > OS หลักเป็นแค่ทางผ่านส่งคำสั่งให้ CPU > CPU คำนวณแล้วส่งกลับตามลำดับ แล้วที่เหลือทีมพัฒนาค่อยแก้ไขตามประสิธิภาพของเครื่องต่างๆ ที่จะนำไปจำหน่าย โดยเทคนิคนี้ไม่ได้ถูกใช้แค่วงการเกม อย่างโปรแกรมตะกลู Adobe เองก็ใช้เทคนิคนี้เช่นกัน

ใจเขาใจเรา เพื่อให้วงการเกมพัฒนาต่อ

ดังนั้นหากเกมไหนมีการ Ports ที่ห่วยโปรอย่าโกรธทีมพัฒนา เพราะทุกคนล้วนรักในผลงานของตนเอง และการ Ports เกมเองก็เป็นสิ่งที่ทีมพัฒนาไม่อยากทำเพราะความยุ่งยากและซับซ้อน แต่มักจะโดนบังคับจากผู้บริหารหรือกลุ่มนายทุนซะส่วนใหญ่ แต่หากเกมที่คุณเล่นนั้น Ports ออกมาแย่จริงแนะนำให้รวบรวมปัญหาที่เจอและแจ้งกับทีมพัฒนาเพื่อชี้จุดที่ควรแก้ไขให้กับเขา หรือถ้ารับไม่ได้จริงๆ ก็สามารถขอคืนเงินได้ โดยไม่จำเป็นต้องไปด่าทีมพัฒนาเพราะนั่นไม่ได้เป็นการส่งเสริมสังคมเกมเลยครับ

แชร์เรื่องนี้:
Karaboon
Karaboon

Content Writer

เรื่องที่เกี่ยวข้อง