- รองรับและจำลองการทำงานของคอนโทรลเลอร์ Xbox, PlayStation และ Nintendo ผ่านทางเลเยอร์ Steam Input โดยตรง
- ความสำคัญของกฎ udev ในการเปิดใช้งานการตรวจจับความร้อนและการอัปเดตเฟิร์มแวร์
- เครื่องมือวินิจฉัยและปรับแต่งขั้นสูงเพื่อเพิ่มประสิทธิภาพประสบการณ์การเล่นเกม
หากคุณเปลี่ยนมาใช้ Linux หรือกำลังสนุกกับการใช้งาน Steam Deck บน SteamOS คุณอาจสังเกตเห็นว่าการรองรับคอนโทรลเลอร์นั้นอาจเป็นทั้งเรื่องสนุกหรือเรื่องปวดหัว โชคดีที่Steam Inputเข้ามาช่วยแก้ปัญหา โดยเป็นโปรแกรมอเนกประสงค์ที่แปลงอินพุตจากคอนโทรลเลอร์ของคุณให้เป็นสิ่งที่เกมเข้าใจ ไม่ว่าจะเป็นการจำลองคอนโทรลเลอร์ Xbox, คีย์บอร์ด หรือแม้แต่เมาส์
ความมหัศจรรย์ของระบบนี้อยู่ที่ความสามารถในการเล่นเกมได้เกือบทุกเกม โดยไม่คำนึงถึงว่าคุณใช้คอนโทรลเลอร์แบบใด ไม่ว่าจะเป็นคอนโทรลเลอร์อย่างเป็นทางการของ Valve คอนโทรลเลอร์ PlayStation หรือคอนโทรลเลอร์ Switch แนวคิดคือความเข้ากันได้แบบสากลดังนั้นคุณจึงไม่ต้องยุ่งยากกับการติดตั้งไดรเวอร์ระบบทุกครั้งที่ต้องการเล่นเกม
การจำลอง Steam Input ทำงานอย่างไรกันแน่?
ในสภาพแวดล้อมของ Windows นั้น Steam จะดักจับ API แบบดั้งเดิม เช่น XInput เพื่อสร้างตัวควบคุม Xbox เสมือนขึ้นมา อย่างไรก็ตาม ใน Linux และ macOS กระบวนการนี้จะถูกจัดการผ่านไดรเวอร์เฉพาะที่หลอกให้เกมคิดว่าคุณได้เชื่อมต่อตัวควบคุม Xbox ไว้ ทำให้มั่นใจได้ว่ามันจะทำงานได้ในกรณีส่วนใหญ่
โปรดจำไว้ว่าเมื่อจำลองการทำงานของคอนโทรลเลอร์ Xbox ปุ่มเพิ่มเติมบางปุ่มบนคอนโทรลเลอร์เช่นคอนโทรลเลอร์ PS4 อาจซ้ำกันหรือถูกกำหนดให้ทำหน้าที่มาตรฐาน เช่น ปุ่ม START ข้อดีที่สำคัญคือคุณสามารถกำหนดให้เซ็นเซอร์ไจโรสโคปของคอนโทรลเลอร์ Switch หรือ PlayStationควบคุมกล้องเหมือนเมาส์ได้ แม้ว่าโดยทั่วไปแล้วจะใช้งานได้ดีที่สุดในเกมเล่นคนเดียวก็ตาม
การแก้ไขปัญหาการตรวจจับและสิทธิ์การเข้าถึง (กฎ udev)
ปัญหาที่พบได้บ่อยมาก โดยเฉพาะในระบบปฏิบัติการอื่นที่ไม่ใช่ Ubuntu หรือ Debian คือ ตัวควบคุมไม่ได้รับการจดจำเมื่อเชื่อมต่อ หรือไม่สามารถอัปเดตเฟิร์มแวร์ได้ สาเหตุเกิดจากขาดกฎ udevซึ่งเป็นคำสั่งที่บอกระบบว่าอุปกรณ์นั้นคืออะไรและมีสิทธิ์อะไรบ้าง
เพื่อแก้ไขปัญหานี้ที่ต้นเหตุ จำเป็นต้องสร้างไฟล์ใน /lib/udev/rules.d/99-steam-controller-perms.rules ด้วยสิทธิ์ระดับรูท ภายในไฟล์นี้ คุณต้องกำหนดกฎสำหรับอุปกรณ์ USB และ uinput จุดสำคัญคือในบรรทัดของ KERNEL==\"uinput\", คุณต้อง เปลี่ยนกลุ่มนั้นเป็นกลุ่มที่ผู้ใช้ของคุณเป็นสมาชิกอยู่ (เช่น กลุ่ม "วิดีโอ" หรือการสร้างกลุ่มเฉพาะชื่อ "steamcontroller")
หากคุณต้องการความปลอดภัย คุณสามารถเพิ่มผู้ใช้ของคุณลงในกลุ่มใหม่โดยใช้คำสั่ง usermod -a -G steamcontroller tuusuario จากนั้นกำหนดกลุ่มนั้นในไฟล์กฎ เมื่อทำขั้นตอนนี้เสร็จแล้วและหลังจากนั้น รีสตาร์ทระบบเมื่อเปิดเครื่องพีซี ระบบควรตรวจจับตัวควบคุมได้ทันทีโดยไม่มีปัญหาใดๆ
รองรับตามประเภทของตัวควบคุม
- จอยควบคุม Xbox: เครื่อง Xbox One และ Series X|S มักจะเป็นรุ่นต่างๆ Plug-and-play ขอบคุณไดรเวอร์ xpad ของเคอร์เนล หากคุณใช้บลูทูธ คุณเพียงแค่ต้องจับคู่ตามปกติจากระบบ
- จอยควบคุม PlayStation: จอย DualShock 4 และ DualSense ใช้งานได้อย่างสมบูรณ์แบบ Steam ตรวจจับจอยได้ทันทีและอนุญาตให้คุณใช้งานได้ ทัชแพดทำหน้าที่เป็นเมาส์นอกเหนือจากการรองรับการตอบสนองแบบสัมผัสแล้ว
- จอยเกมของนินเทนโด: Joy-Con และ Pro Controller สามารถใช้งานร่วมกันได้ แต่เพื่อให้ได้ประโยชน์สูงสุดจากการควบคุมการเคลื่อนไหว ขอแนะนำอย่างยิ่งให้ติดตั้งโปรแกรมเพิ่มเติม จอยคอน.
การปรับแต่งขั้นสูงและเครื่องมือที่มีประโยชน์
สำหรับผู้ที่ต้องการศึกษาเพิ่มเติม โหมด Big Picture คือตัวเลือกที่เหมาะสมที่สุด ปุ่มบนแผนที่และสร้างโปรไฟล์ ปรับแต่งได้ หากคุณสังเกตเห็นว่าตัวควบคุมไม่ตอบสนองอย่างที่ควรจะเป็น คุณสามารถใช้ jstest-gtkเป็นเครื่องมือที่ยอดเยี่ยมสำหรับการแสดงภาพแบบเรียลไทม์ว่าปุ่มใดถูกกด และปรับเทียบแกนหากจอยสติ๊กมีการเบี่ยงเบน
หากคุณพบเกมที่ไม่มีใน Steam หรือโปรแกรมจำลองรุ่นเก่า วิธีแก้ปัญหาที่มีประสิทธิภาพมากคือAntiMicroXซึ่งช่วยให้คุณสามารถกำหนดปุ่มใดก็ได้บนแป้นพิมพ์ให้กับปุ่มบนจอยเกมได้ ซึ่งจะช่วยหลีกเลี่ยงข้อจำกัดด้านความเข้ากันได้ของเกมเหล่านั้น
ข้อควรพิจารณาสำหรับนักพัฒนาและผู้ใช้ขั้นสูง
สำหรับผู้สร้างคอนเทนต์ Steam เปิดโอกาสให้สามารถผสานรวมคอนเทนต์เข้ากับแพลตฟอร์มได้ Steam Input API เพื่อแสดงสัญลักษณ์แบบไดนามิก (ไอคอนปุ่ม) ซึ่งหมายความว่าหากผู้เล่นใช้คอนโทรลเลอร์ PS5 พวกเขาจะเห็นเครื่องหมายกากบาทและวงกลมแทนปุ่ม A และ B ของ Xbox สิ่งนี้ทำได้โดยการเริ่มต้นอินเทอร์เฟซด้วย SteamInput()->Init() และตรวจสอบประเภทของคอนโทรลเลอร์ที่เชื่อมต่ออยู่
ในบางกรณีเฉพาะของระบบปฏิบัติการรุ่นใหม่หรือ Proton fork ที่ใช้ Wayland ผู้ใช้บางรายได้ลองเรียกใช้ Steam โดยใช้พารามิเตอร์ดังกล่าว -steamos3 และเปิดใช้งาน Steam beta เพื่อบังคับให้ใช้งาน Steam Linux Runtime 3อย่างไรก็ตาม ความเสถียรของเทคนิคเหล่านี้อาจแตกต่างกันไปขึ้นอยู่กับเวอร์ชันของซอฟต์แวร์
การตั้งค่าคอนโทรลเลอร์บน Linux เปลี่ยนจากเรื่องยุ่งยากในเทอร์มินัลมาเป็นการใช้งานที่ราบรื่นอย่างน่าทึ่งด้วยระบบแปลภาษาของ Valve ไม่ว่าจะเป็นการปรับสิทธิ์ udev เพื่อให้ระบบรู้จักฮาร์ดแวร์ การติดตั้งยูทิลิตี้อย่าง JoyCond สำหรับ Nintendo หรือการใช้โหมด Big Picture เพื่อปรับแต่งการกดปุ่มแต่ละครั้ง ตอนนี้คุณสามารถควบคุมอุปกรณ์ต่อพ่วงใดๆ ได้อย่างสมบูรณ์และสนุกกับเกมได้โดยที่คอนโทรลเลอร์ไม่เป็นอุปสรรคอีก ต่อไป




