Technology

Apple Slicon เกือบทำ Mac สำหรับเล่นเกมได้ดีแล้วเชียว ! ทำไมละ ?

By Arnon Puitrakul - 16 พฤศจิกายน 2022

Apple Slicon เกือบทำ Mac สำหรับเล่นเกมได้ดีแล้วเชียว ! ทำไมละ ?

เมื่อหลาย ๆ วันก่อน Resident Evil Village สำหรับ Mac ก็ได้เปิดให้ซื้อ และ ดาวน์โหลดมาเล่นผ่าน App Store กันไปแล้ว หลังจากเปิดตัวให้ดูในงาน WWDC'22 ที่ผ่านมา นับว่าเป็นเกม AAA แรก ๆ เลยที่เป็น Native Apple Silicon เลยทำให้เราตั้งคำถามว่า เอ๊ะ ทำไม ถึงไม่มีเกม Port ลงมาใน Apple Silicon มากนัก

ตอนนี้เกมบน Mac มีเยอะขนาดไหน ?

สำหรับคนที่ไม่ได้ใช้งานพวก Mac ทั้งหลาย อาจจะยังไม่เก๊ตฟิลเท่าไหร่ว่า สถานการณ์การ Support เกมบน macOS เป็นอย่างไร ต้องยอมรับเลยว่า เกมที่เราเล่นกันส่วนน้อยมาก ๆ ที่จะรองรับ macOS เต็ม ๆ และ น้อยมาก ๆ ที่รัน Native Apple Silicon

ทำให้ทุกวันนี้เกมส่วนใหญ่มาก ๆ ที่เรารันได้บน macOS จะต้องรันผ่าน Rosetta ซึ่งทำให้ Performance หายไป 10-20% ไปเลย ตัวอย่างนึงคือ Raise of the Tomb Rider เอาจริง ๆ เลยคือ ทำให้เราตกใจกับ Performance ของ M1 ตัวปกติมาก ๆ ขนาดเป็นตัวเริ่มต้นยังทำได้ดีขนาดนี้ เพราะก่อนหน้านี้ Intel Mac ถ้าไม่ใช่รุ่น 15 นิ้ว หรือ 16 นิ้ว จะไม่มีทางได้ Discreate GPU เลย ทำให้พึ่งพา Integrated Graphic จาก Intel ซึ่ง Performance ไม่ได้ดีเท่าไหร่นัก

อีก Level ของการรันคือ ไม่มี Native Binary บน macOS ต้องรันผ่านอีก Compatibility Layer นึง อาจจะเป็น Wine หรือ Crossover อะไรก็ว่ากันไป ก็ทำให้ Performance หายไปอีก และ บางอย่างเช่นพวก Kernel Anticheat ก็จอบอไปอีก ตัวอย่างของเคสแบบนี้ก็คือ GTA V ซึ่ง M1 ก็ทำออกมาได้น่าตกใจมาก ๆ

แต่ตัวที่ Ultimate จริง ๆ คือ Resident Evil Village ที่พึ่งเปิดให้ซื้อ และ โหลดกันไป ซึ่งเป็นทั้ง Native Binary บน macOS โดยเฉพาะ และ ใช้งานพวก Metal 3 ที่ทำให้มันได้ใช้งาน Hardware ได้อย่างเต็มประสิทธิภาพสูงสุดจริง ๆ ซึ่งผลที่ได้ออกมา บอกเลยว่าน่าประทับใจมาก ๆ

เครื่อง Mac ราคาแพงจริงเหรอ ?

หลาย ๆ คนชอบบอกว่า เครื่อง Mac มันราคาแพงมาก ๆ เราว่าเมื่อก่อน มันก็เป็นแบบนั้นจริง ๆ นะ เพราะราคาต่อ Performance ที่ได้สำหรับหลาย ๆ งานถือว่า แพงมาก ๆ แต่ก็แลกมากับความ Premium ของ Software และการทำงานหลาย ๆ อย่างที่ดีมาก ๆ จนทำให้หลาย ๆ คนเลือกที่จะซื้อ Mac มาเป็นเครื่องสำหรับการทำงาน

แต่ด้วยการมาถึงของ Apple Silicon ที่เราเล่าไปแล้วว่า แม้แต่จะเป็นรุ่นเริ่มต้นอย่าง M1 ปกติเลย ก็สามารถรันเกมระดับ AAA อย่าง Resident Evil ได้สบาย ๆ เลย และ ถ้าใช้กับ Macbook Air ได้เรื่องของน้ำหนักที่เบา พกพาไปได้สะดวก ๆ และ ยังรันเกม AAA ระดับนั้นได้ ถึงจะความละเอียดไม่สูงมาก แต่ก็เป็นตัวเริ่มต้นที่ดีมาก ๆ เลยทีเดียว

ดังนั้นจริง ๆ แล้วในยุคของ Apple Silicon ราคาต่อ Performance เรามองว่าเป็นราคาที่ถูกมาก ๆ เผลอ ๆ ถูกกว่า Laptop หลาย ๆ ตัวในท้องตลาดด้วยซ้ำ ยิ่งบวกกับความ Premium, น้ำหนัก และการใช้พลังงาน ทำให้ Mac ใหม่ ๆ ราคาไม่แพงอย่างที่เมื่อก่อนเป็นซะอีก

แต่เราว่าที่ทำให้หลาย ๆ คนมองว่ามันเป็นเครื่องที่ไม่คุ้มค่าเท่าไหร่ เป็นเพราะ Upgradability หรือ ความสามารถในการ Upgrade เครื่องนั่นเอง ซึ่งสำหรับ Mac เอง ต้องยอมรับเลยว่า ในยุคของ Apple Silicon เรียกได้ว่า Non-Upgradable เต็มรูปแบบเลยทีเดียว อาจจะเป็นสาเหตุนึงละกัน

Apple นังทัวร์ดี

โอเค ถ้าเราบอกว่า เรารับราคาเครื่องมันโอเค อีกปัญหาเอง ก็น่าจะหนีไม่รอดอย่าง Apple นังทัวร์ดีย์ !!!! เพราะเรื่อง Graphic API โดยเฉพาะเลย ซึ่งเราในฝั่งของผู้เล่น ไม่ได้รู้สึกอะไรกับเรื่องนี้เลย เป็นเรื่องของผู้พัฒนาเกมล้วน ๆ

โดยทั่ว ๆ ไป เวลาเราพัฒนาเกม เราจะเขียนให้เครื่องคอมพิวเตอร์แสดงผลพวก Graphic ต่าง ๆ จริง ๆ แล้วมันคือ คณิตศาสตร์ ล้วน ๆ มันเป็นการคำนวณทางคณิตศาสตร์ทั้งหมด แต่ถ้าเราจะให้ Programmer มานั่งเขียนสูตรทางคณิตศาสตร์ทุกวัน เราว่า ส่วนอื่น ๆ ของเกมก็คงไม่ได้ทำแล้วละ เลยทำให้มันเกิดพวก Graphic API ขึ้นมาเช่น OpenGL, Cuda, Vulcan, DirectX สำหรับ Windows และ Metal สำหรับ macOS

ตัวของ Cuda ของ Nvidia และ DirectX เป็นของ Windows อันนี้เราข้ามไปเลยละกัน เพราะ Apple ก็ไม่ได้ใช้ GPU ของ Nvidia และ ก็ไม่ได้ใช้ Windows ก็ macOS ความ Apple เขาอะเนอะ แล้วพอ Apple ควบคุมทั้ง Hardware และ Software ทำให้ Apple ควบคุมได้หมดอย่างเบ็ดเสร็จจริง ๆ

ทำให้พวก Cross-Platform Graphic API ทั้งหลาย เช่น Vulcan และอีกหลาย ๆ ตัวไม่ Support บน macOS หรือบางตัวเช่น OpenCL ก็ Depreciated ไม่ Support อีกต่อไปแล้ว เรามองว่า เป็นเพราะการมาถึงของ Metal ที่เป็นของ Apple เอง มันก็ไม่น่าแปลกเท่าไหร่ละกันที่ Apple จะปิดกั้นทุกตัว แล้วเปิดแค่ของตัวเองให้ใช้เท่านั้น

ดังนั้น ถ้าเราจะ Port จริง ๆ บางตัวมันก็จะมีตัว Convert อยู่ อย่าง ถ้าเราใช้ Vulcan มันก็จะมี Tool สำหรับ Convert อย่าง MoltenVK เพื่อมาแปลงให้อยู่ในฝั่ง Metal API

จริง ๆ ถ้า Apple เปิด Support พวก Cross-Platform Graphic API เรามองว่า เกมหลาย ๆ เกม โดยเฉพาะพวก AAA Games ก็น่าจะมาลงเยอะขึ้น แต่ Apple ก็เลือกที่จะปิด ไม่ให้เข้ามา

Market Share ต่ำ มันจะคุ้มมั้ย

พอ Apple ปิด และ ควบคุมทุกคนให้เข้ามาใช้งาน Metal ทั้งหมด ทำให้ถ้านักพัฒนาเกมอยากจะเอาเกมมาลง เขาก็ต้องใช้งาน Metal ซึ่งจะรันได้แค่บน Apple Device เท่านั้น หรือ ถ้าเราจะเอาเกมจาก Platform อื่น ๆ เช่น Windows Port ลงมาใส่ ก็เรียกว่า ต้องไปหา Converter มา หรือแปลงมาแล้ว Performance เ_ย อยากทำดี ๆ ก็ต้องมารื้อเขียนแยกอีก เอาเป็นว่า มันเป็นการลงทุนที่มหาศาลมาก ๆ

แต่ถ้าเราเป็นนักพัฒนาเกม เป็นเจ้าของ Studio เกม การที่เราจะลงทุนมหาศาลเพื่อ Port เกมสักเกมลงไปใน macOS มันเป็นเรื่องที่ควรทำจริง ๆ เหรอ เพราะต้องยอมรับเลยว่า Market Share ของ Mac User นั้นน้อยกว่า Windows User มาก ๆ

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

ดังนั้นการเขียนเกม เพื่อ macOS ก่อน ทั้ง ๆ ที่ Market Share น้อยกว่าอยู่แล้ว ถ้าคิดดี ๆ Maket Share ตรงนั้น ก็ไม่ได้บอกว่า ทุกคนเล่นเกม และ ไม่ได้บอกว่า ทุกคนจะมีเครื่อง Mac ที่ Performance สูงเพียงพอที่จะเล่นได้อีก นั่นแปลว่า จริง ๆ แล้ว Mac User ที่เล่นเกม และ เล่นได้ มันมีน้อยกว่าที่คิดแน่นอน การเขียนลง macOS เลยไม่ได้เป็นตัวเลือกที่ดี การแปลงมาลง ก็น่าจะเป็นตัวเลือกที่ดีกว่าเยอะ

สรุป : Mac เครื่องพร้อม แต่ Apple ไม่พร้อม

เมื่อก่อน การเล่นเกมบนเครื่อง Mac เป็นเรื่องที่ไม่คุ้มค่าเท่าไหร่ จนกระทั่งการมาถึงของ Apple Silicon ที่ให้ความสามารถของ GPU ที่สูงมาก ๆ ตั้งแต่รุ่นเริ่มต้น ขนาดที่ทำให้เราสามารถรัน AAA Game ได้เลยทีเดียว เป็นข้อพิสูจน์เลยนะว่า พลังการประมวลผลมันไม่ธรรมดาเลย แต่คนที่ไม่พร้อมจริง ๆ หรือไม่เอาด้วยละกัน คือ Apple เอง ที่เลือกจะควบคุมทุกอย่าง เปิดให้เล่นแค่ Metal เท่านั้น และคนที่พร้อมจะเล่นเกมจริง ๆ มันน้อยเกินกว่าจะลงทุน Port มาลง Mac ก็ทำให้เราที่เป็น Mac User เองก็ยังคงต้องนั่งมอง Windows User เล่นเกมใหม่ ๆ ตาปริบ ๆ ต่อไป

Read Next...

ลองกันอีกสักตั้ง iPad Pro ใช้แทนคอมพิวเตอร์ได้มั้ย

ลองกันอีกสักตั้ง iPad Pro ใช้แทนคอมพิวเตอร์ได้มั้ย

เมื่อ 3 ปีก่อน เรามีความพยายามที่จะใช้ iPad Pro เครื่องเดิมแทนคอมพิวเตอร์ ไหน ๆ ตอนนี้เราเปลี่ยน iPad Pro ใหม่แล้ว เราจะมาลองกันอีกสักตั้งว่า เมื่อเวลาผ่านไป มันใช้งานจริงได้มากขึ้นหรือไม่...

ทำไม iPad ยังเป็น iPad ไม่เป็น Mac

ทำไม iPad ยังเป็น iPad ไม่เป็น Mac

ตั้งแต่ iPad Pro M4 และ iPad Air M2 เปิดตัวและเริ่มจำหน่ายออกไป Reviewer หลายคนเริ่มมองเห็นแล้วว่า ปัญหาจริง ๆ ของ iPad ในรอบหลายปีที่ผ่านมา ไม่ได้เกิดจาก iPad แต่เกิดจาก iPadOS บางเจ้าบอกว่า อยากให้เอา macOS มาใส่ด้วยซ้ำ มันยังไงกันนะ วันนี้เราจะมาเล่าประเด็นและความเห็นจากเราให้ให้อ่านกัน...

Microinverter ต่างจาก String Inverter อย่างไร เลือกแบบไหนดีกว่ากัน

Microinverter ต่างจาก String Inverter อย่างไร เลือกแบบไหนดีกว่ากัน

หลังจากเราเขียนเรื่อง Solar Cell ไปมีคนถามเข้ามาอยู่ว่า ถ้าจะเลือกติดตั้ง Solar ระหว่างการใช้ระบบ String Inverter กับ Microinverter เราจะเลือกตัวไหนดี วันนี้เราจะมาเล่าเปรียบเทียบให้อ่านกันว่าแบบไหน น่าจะเหมาะกับใคร...

ทำไมภาษา Programming สมัยใหม่ ถึงไม่มี Pointer Concept

ทำไมภาษา Programming สมัยใหม่ ถึงไม่มี Pointer Concept

ทำไมภาษาบางตัวอย่างภาษา C มี Pointer ในขณะที่ภาษาใหม่ ๆ หลายตัว ไม่มี ทำไมการ Implement Concept หรือเครื่องมือเหล่านี้ถึงไม่ได้รับความนิยม วันนี้เราจะมาเล่าข้อดีข้อเสียของ Feature นี้ในภาษา Programming กัน...