Valve ผู้อยู่เบื้องหลังการออกแบบงานพาเกม Windows มาสู่ Arm
(theverge.com)Steam Machine today, Steam Phones tomorrow
- Valve ถูกยืนยันว่าเป็น ผู้มีบทบาทหลักที่ทำให้เกม Windows PC สามารถรันบนอุปกรณ์ Arm ได้ด้วยการใช้เทคโนโลยีโอเพนซอร์ส
- ผสาน Proton กับ Fex emulator เพื่อให้เกม Windows สำหรับ x86 สามารถทำงานบน อุปกรณ์ Arm ที่ใช้ Linux ได้
- Valve จ้างและสนับสนุนเงินทุนให้นักพัฒนา Fex โดยตรง มาตั้งแต่ปี 2016 โดยผลักดันเรื่องความเข้ากันได้กับ Arm เป็นเป้าหมายระยะยาว
- SteamOS เวอร์ชัน Arm ยังคงโครงสร้างเดิมไว้เหมือนเดิม และรองรับการรันเกมผ่าน Proton และ Fex
- เทคโนโลยีนี้ถูกมองว่าเป็น รากฐานที่ทำให้สามารถรันเกมพีซีบนอุปกรณ์ Arm หลากหลายแบบ เช่น สมาร์ตโฟน โน้ตบุ๊ก และเดสก์ท็อป ได้
กลยุทธ์ Arm Gaming ของ Valve
- Valve พัฒนาและสนับสนุนเทคโนโลยีโอเพนซอร์สเพื่อให้ เกม Windows รันบนสถาปัตยกรรม Arm ได้โดยไม่ต้องพอร์ต
- องค์ประกอบหลักคือ Proton (ชั้นความเข้ากันได้ Windows-Linux) และ Fex (อีมูเลเตอร์แปลง x86-Arm)
- Proton พัฒนาบนพื้นฐาน Wine โดยแปลงการเรียกใช้ Windows API ให้เหมาะกับสภาพแวดล้อม Linux
- Fex ทำการแปลงโค้ด x86 เป็นโค้ด Arm แบบเรียลไทม์ด้วย JIT (Just-In-Time)
- Valve คือ ผู้ก่อตั้งตัวจริงและผู้สนับสนุนเงินทุนหลักของโปรเจ็กต์ Fex โดยจ้างบุคลากรหลักตั้งแต่ช่วงเริ่มพัฒนา
- เริ่มพัฒนาระยะยาวเพื่อรองรับ Arm ตั้งแต่ปี 2016~2017 ร่วมกับนักพัฒนาโอเพนซอร์ส
- Ryan Houdek หัวหน้านักพัฒนา Fex กำลังทำงานพัฒนาเต็มเวลาโดยได้รับการสนับสนุนจาก Valve
Steam Frame และการขยายระบบนิเวศ Arm
- Steam Frame headset ไม่ใช่แค่อุปกรณ์ VR แต่เป็น แพลตฟอร์มเทคโนโลยีสำหรับรันเกม Steam บนอุปกรณ์ Arm
- เทคโนโลยีเดียวกันนี้สามารถใช้กับ Samsung Galaxy, Google Pixel และโน้ตบุ๊กเกมมิ่ง Arm ได้
- ผู้สื่อข่าวได้ ทดลองรัน Hollow Knight: Silksong บนสมาร์ตโฟน Galaxy ด้วยเทคโนโลยีนี้โดยตรง
- Valve รองรับฟอร์มแฟกเตอร์หลากหลายผ่าน SteamOS เวอร์ชัน Arm ทั้งแบบพกพา โน้ตบุ๊ก และเดสก์ท็อป
- ยังคงใช้ฐาน Arch Linux เดิม พร้อมองค์ประกอบชุดเดิมที่รวม Proton และ Fex
- Proton สำหรับ Arm ถูกคอมไพล์เป็นโค้ด Arm เพื่อทำงานร่วมกับ Fex
โครงสร้างเทคโนโลยีและวิธีการทำงาน
- Proton เป็นส่วนขยายของ Wine ที่นำ API ซึ่งจำเป็นต่อการรันเกม Windows มาทำงานในสภาพแวดล้อม Linux
- แปลงการเรียกใช้ Windows API เช่น DirectX, DirectSound และอินพุตผ่าน USB ไปเป็น Linux API
- รวมชั้นแปลงกราฟิกอย่าง DXVK (D3D11→Vulkan) และ VKD3D (D3D12→Vulkan)
- กระบวนการทำงานบนสภาพแวดล้อม Arm
- Proton วิเคราะห์เซกเมนต์ของโค้ด และหากเป็นโค้ด x86 จะส่งต่อให้ Fex
- Fex แปลงโค้ด x86 เป็นโค้ด Arm แล้วจึงรัน
- เมื่อมีการเรียกใช้ API จะสลับไปเป็นโค้ดเนทีฟของ Arm เพื่อลดการสูญเสียประสิทธิภาพให้น้อยที่สุด
ปรัชญาการพัฒนาและเป้าหมายของ Valve
- Valve ตั้งเป้า ไม่ให้นักพัฒนาเกมเสียเวลากับการพอร์ตตามสถาปัตยกรรม
- มองว่า “งานพอร์ตคือความพยายามที่สูญเปล่าในแง่มูลค่าของไลบรารี”
- เพื่อให้นักพัฒนา โฟกัสกับการยกระดับคุณภาพเกมและการสร้างเกมใหม่ ได้มากขึ้น
- Valve นำ ประสบการณ์ความสำเร็จของ Linux gaming บน Steam Deck มาปรับใช้กับการเปลี่ยนผ่านสู่ Arm
- เน้นย้ำถึงความขยายตัวของเกมมิ่งบน Linux และการเติบโตอย่างต่อเนื่องของระบบนิเวศโอเพนซอร์ส
แนวโน้มในอนาคตและความเป็นไปได้ในการขยายสู่อุปกรณ์ต่าง ๆ
- Valve คาดหวังความหลากหลายที่มากขึ้นของ อุปกรณ์ SteamOS บน Arm
- กล่าวถึงความเป็นไปได้ของอุปกรณ์หลายรูปแบบ เช่น โน้ตบุ๊กน้ำหนักเบามาก แล็ปท็อปประสิทธิภาพสูง เครื่องพกพา และเดสก์ท็อป
- รวมถึงความเป็นไปได้ของ การออกแบบเดสก์ท็อปบน SoC ขนาดใหญ่ แบบเดียวกับชิปตระกูล M ของ Apple
- SteamOS for Arm ไม่ใช่ระบบปฏิบัติการแยก แต่คงไว้บน codebase เดียวกัน
- ในอนาคตมีแผนขยายความร่วมมือกับ OEM เพื่อรองรับ SteamOS บนอุปกรณ์ Arm มากขึ้น
- ขณะนี้ยังไม่มีแผนเชิงพาณิชย์ที่ชัดเจน และยังคง มุ่งเน้นการพัฒนา Steam Machine และ Steam Deck ที่มีอยู่เดิม
องค์ประกอบทางเทคนิคอื่น ๆ
- ความสามารถในการรันแอป Android ของ Steam Frame ไม่ได้ใช้ Android เต็มระบบ แต่ทำผ่าน ชั้นความเข้ากันได้คล้าย Proton
- ให้เฉพาะไลบรารีที่จำเป็นต่อการรันเกม จึงสามารถรันโค้ด Arm เดิมได้โดยตรง
- เกี่ยวกับ ความเป็นไปได้ของการออก SteamOS phone ทาง Valve ระบุว่า “ไม่ได้ตัดความเป็นไปได้นั้นทิ้ง แต่ตอนนี้ยังไม่ใช่จุดโฟกัสหลัก”
- ตอนนี้ยังเน้นที่ การปรับปรุงประสบการณ์เล่นเกมในห้องนั่งเล่น แบบพกพา และบนเดสก์ท็อป
ตำแหน่งของ Arm ในโลกเกมมิ่ง
- Valve ประเมินว่า Arm มี ศักยภาพในการแข่งขันในช่วงพลังงานต่ำถึงประสิทธิภาพระดับกลาง
- ได้เปรียบเป็นพิเศษในช่วงประสิทธิภาพที่ต่ำกว่า Steam Deck
- เป้าหมายไม่ใช่การชี้นำทิศทางตลาด แต่คือ การสร้างแพลตฟอร์มที่รองรับทุกทางเลือก
4 ความคิดเห็น
ผมเป็นผู้ใช้ Steam Deck อยู่ครับ และรู้สึกว่าสิ่งที่ Valve กำลังทำอยู่ช่วงนี้เป็นเรื่องที่ทำให้ลูกค้า-บริษัท-อุตสาหกรรม ได้ประโยชน์กันทั้งหมดแบบ win-win-win
เพราะเป็นบริษัทส่วนตัวของ Gabe Newell เลยคิดว่าน่าจะสามารถเดินหน้าทางเลือกแบบนี้ต่อเนื่องได้ในกรอบเวลาที่ยาวมากครับ
ผมก็เฮอยู่เหมือนกัน อย่างแรกเลย ก่อนหน้านี้เลิกใช้ Windows ได้ยากเพราะเกม ขอบคุณมากจริง ๆ
(อย่างน้อยก็ในวงการเกม) ผมเองก็เฝ้ารอวันนั้นอยู่เช่นกัน วันที่เราจะหลุดพ้นจากเงาของ Windows ได้อย่างสมบูรณ์
ความเห็นจาก Hacker News
ทุกอย่างที่ Valve ทำเพื่อ ระบบนิเวศ Linux กำลังสร้างผลกระทบอย่างมาก
ตอนนี้ถึงขั้นรู้สึกผิดที่จะเอามุก HL3 มาเล่นแล้ว เพราะพวกเขาทำเพื่อชุมชนอย่างจริงใจมาก
วิดีโอที่เกี่ยวข้อง
Valve กำลังทำได้ดีมากกับกลยุทธ์ ทำเงินจากสินค้าส่วนเติมเต็ม (พูดอีกอย่างคือกลยุทธ์เปิดเลเยอร์บนและล่าง)
เกมมัลติเพลเยอร์สมัยใหม่ส่วนใหญ่ใช้งานบน translation layer ไม่ได้เพราะปัญหา anti-cheat แต่ก็มีบางเกมที่เป็นข้อยกเว้น
areweanticheatyet.com
อยากให้ Valve โละ Wayland/X11/Xwayland ทิ้งไปให้หมด Wayland ยังรองรับแอปไม่พอและเข้ากับ NVIDIA GPU ไม่ได้ ส่วน X11 ก็เก่าเกินไปแล้ว และ Xwayland ก็เหมือนเอาข้อเสียของทั้งสองโลกมารวมกัน
อยากเห็น SteamOS บน MacOS ด้วย Steam บน Mac Mini ของฉันทำงานได้ดีอยู่แล้ว แต่ถ้ารองรับทุกเกมได้ก็คงยอดเยี่ยมมาก
สงสัยว่า Steam Deck รุ่นถัดไป จะออกเมื่อไร คาดหวังปี 2025 แต่คิดว่ามีโอกาสเป็นปี 2026 มากกว่า หลังจากลองเล่น GTA: San Andreas บน Switch ก็รู้สึกว่าถึงเวลาต้องมีเครื่องที่แรงกว่านี้แล้ว
บทความที่เกี่ยวข้อง
ที่มา
Microsoft พยายามทำ Windows on ARM มาหลายครั้งแต่ล้มเหลว ตรงกันข้าม Valve ดูมีโอกาสสำเร็จสูงกว่า
สงสัยว่า ประสิทธิภาพต่อพลังงาน ของ ARM ต่างจริงแค่ไหน โดยเฉพาะตอนเล่นเกมภายใต้โหลดหนัก
ถ้า Valve ทำให้ SteamOS เข้ากันได้กับทุกโปรแกรมบน Windows มันจะมาแทน Windows ได้ไหม?
ถ้าไลเซนส์ ARM ไม่เป็นมิตร ควรไปสำรวจ สถาปัตยกรรม RISC-V แทนไหม?