Computer >> Hướng Dẫn Máy Tính >  >> Hệ Thống >> Linux

Thành thạo chơi game toàn màn hình trên Linux với hai màn hình

Khi bạn khởi chạy một game trên Linux với hai màn hình được kết nối, game thường cố gắng mở trên màn hình chính. Tuy nhiên, tùy thuộc vào thiết lập và máy chủ hiển thị, chế độ toàn màn hình không luôn hoạt động hoàn hảo. Game có thể bị kéo dãn lạ, mở ở chế độ không viền, hoặc cho phép chuột trôi sang màn hình thứ hai thay vì bị khóa tại màn hình game.

Với các cài đặt đúng và một vài điều chỉnh đơn giản, bạn có thể giữ game chạy toàn màn hình hoàn hảo trên một màn hình trong khi màn hình kia vẫn hoàn toàn khả dụng. Nếu bạn thích trải nghiệm siêu rộng, cũng có thể kéo game trải qua cả hai màn hình cùng lúc, sử dụng các công cụ như Gamescope hoặc tạo màn hình ảo siêu độ phân giải với XRandR hoặc Nvidia TwinView.

Thử thay đổi máy chủ hiển thị sang Wayland

Khác với Windows, Linux hỗ trợ nhiều ngăn xếp hiển thị, chủ yếu là X11 và Wayland. Trên hệ thống X11 kế thừa, các màn hình thường hoạt động như một bức tranh ảo lớn. Kết quả là, một game toàn màn hình có thể bị kéo dãn trên cả hai màn hình, khởi chạy trên màn hình sai, mất focus khi chuột vượt qua màn hình, hoặc giảm xuống tần số làm mới thấp nhất chung giữa các màn hình.

Wayland, bản thay thế hiện đại, xử lý tốt hơn rất nhiều. Nó quản lý đúng các yêu cầu toàn màn hình độc quyền, giới hạn game trên một màn hình mà không ảnh hưởng đến phần còn lại của desktop. Hầu hết các distro lớn như Fedora hay Ubuntu đều dùng Wayland mặc định, và chơi game trên Wayland thường mượt mà hơn. Nếu bạn vẫn dùng X11, chuyển sang Wayland có thể giải quyết ngay nhiều vấn đề.

Đầu tiên, xác định loại phiên bằng cách mở terminal và gõ:

echo $XDG_SESSION_TYPE
Thành thạo chơi game toàn màn hình trên Linux với hai màn hình

Nếu kết quả là x11, bạn đang dùng hệ thống cũ. Nếu là Wayland, bạn đang dùng tiêu chuẩn hiện đại. Trên hầu hết các distro, đăng xuất, nhấn biểu tượng bánh răng trên màn hình đăng nhập, chọn Wayland (hoặc Plasma on Wayland cho KDE), sau đó đăng nhập lại.

Đặt màn hình chính đúng cách

Nhiều vấn đề toàn màn hình xảy ra chỉ vì màn hình sai được đánh dấu là chính. Trên KDE, vào Cài đặt hệ thống rồi Màn hình để đặt màn hình chơi game làm Primary. Trên GNOME, vào Cài đặt rồi Màn hình làm tương tự.

Khởi động lại game sau khi thay đổi. Nếu game vẫn mở trên màn hình sai, hãy thử khởi chạy Steam trực tiếp trên màn hình bạn muốn game xuất hiện, vì nhiều game kế thừa vị trí của Steam.

Chuyển sang chế độ cửa sổ không viền (Borderless Window)

Sự chênh lệch hiệu suất giữa toàn màn hình độc quyền và chế độ không viền trên Linux hiện nay rất nhỏ, đặc biệt dưới Wayland và các compositor hiện đại như KDE Plasma hay GNOME.

Để thiết lập, mở cài đặt game, đổi Chế độ hiển thị sang Cửa sổ không viền, đặt độ phân giải bằng độ phân giải gốc của màn hình, và đảm bảo màn hình chơi game được đánh dấu Primary trong cài đặt hiển thị hệ thống.

Phương pháp này hoạt động vì compositor vẫn nắm quyền điều khiển. Không có chuyển đổi chế độ hiển thị, màn hình thứ hai không bị tắt, và Alt+Tab hoạt động mượt mà. Với hầu hết game, đây là tất cả những gì bạn cần. Nếu game không hỗ trợ chế độ này gốc, đừng lo; có công cụ để ép buộc.

Sử dụng compositor Gamescope

Gamescope là một micro-compositor do Valve xây dựng và dùng trên Steam Deck để tạo môi trường kiểm soát cho game. Nó khóa chuột, ép độ phân giải, quản lý tần số làm mới, sửa lỗi focus đa màn hình, và ngăn chặn các lỗi toàn màn hình.

Gamescope có thể cài đặt theo nhiều cách tùy distro. Trên các distro rolling và cập nhật như Arch Linux và Fedora, nó có sẵn trong kho chính thức. Ví dụ, trên Arch Linux (và các distro dựa trên Arch), cài bằng:

sudo pacman -S gamescope

Trên Fedora, dùng:

sudo dnf install gamescope

Nếu distro của bạn không cung cấp phiên bản mới, bạn luôn có thể build Gamescope trực tiếp từ kho GitHub chính thức.

Sau khi cài, thêm sau vào Steam Launch Options:

gamescope -f -w 2560 -h 1440 -r 144 -- %command%

Điều chỉnh cờ -w và -h cho khớp độ phân giải màn hình, và cờ -r cho khớp tần số làm mới. Cờ -f ép chế độ toàn màn hình. Gamescope chứa game hiệu quả nên nó không thể can thiệp vào màn hình thứ hai.

Ngoài ra, bạn cũng có thể kiểm tra tài liệu gói Gamescope của distro để biết các cờ mới nhất, vì chúng có thể thay đổi theo thời gian.

Các điều chỉnh cho Steam, Lutris và Heroic

Vì hầu hết game thủ Linux dùng Steam với Proton, có một vài điều chỉnh thực tế khác nếu toàn màn hình hoạt động lạ trên thiết lập hai màn hình. Trong Steam, chuột phải game, mở Thuộc tính, tìm trường Launch Options dưới tab General. Thêm:

SDL_VIDEO_FULLSCREEN_DISPLAY=0 %command%
Thành thạo chơi game toàn màn hình trên Linux với hai màn hình

Biến môi trường này báo cho game dựa trên SDL biết dùng màn hình nào cho toàn màn hình. Nếu game vẫn chạy trên màn hình sai, đổi 0 thành 1 (hoặc số khác) tùy thứ tự màn hình.

Cũng đáng thử các phiên bản Proton khác nhau bằng vào tab Compatibility và chọn Proton Experimental hoặc bản stable mới nhất. Một số lỗi toàn màn hình, focus, hay đa màn hình chỉ riêng một số bản Proton, nên đổi phiên bản có thể giải quyết ngay mà không cần thay đổi hệ thống.

Đối với game non-Steam, công cụ như Lutris và Heroic Games Launcher cung cấp điều khiển tương tự. Trong Lutris, chuột phải game, chọn Cấu hình, vào Runner Options, bật Windowed (Virtual Desktop).

Thành thạo chơi game toàn màn hình trên Linux với hai màn hình

Tính năng này tạo một desktop Windows ảo bên trong một cửa sổ đơn tại độ phân giải bạn định nghĩa. Đặt độ phân giải khớp kích thước gốc màn hình, game sẽ bị giới hạn trong không gian ảo đó, ngăn không cho nó trải qua hai màn hình hay mất focus khi Alt+Tab.

Trong Heroic Games Launcher, bạn có thể mở cài đặt Wine hoặc Proton của game và bật Gamescope bằng một nút gật đơn giản. Gamescope đóng vai trò compositor nhẹ bao quanh game, kiểm soát độ phân giải và tần số làm mới. Hơn nữa, nó cũng giữ game khóa trên một màn hình mà không cần đối số dòng lệnh thủ công.

Sử dụng XRandR để kiểm soát màn hình

Nếu bạn muốn ở lại X11, bạn có thể kiểm soát màn hình thủ công bằng công cụ XRandR. Đầu tiên, mở terminal và chạy xrandr để liệt kê màn hình kết nối và xác định tên chính xác (ví dụ HDMI-1 hoặc DP-1).

Để tạm thời tắt màn hình phụ trước khi chạy game, dùng:

xrandr --output HDMI-1 --off

Thay HDMI-1 bằng định danh màn hình phụ thực tế. Sau khi chơi xong, bật lại bằng:

xrandr --output HDMI-1 --auto

Mặc dù phương pháp này mang tính "buộc ép", nó đảm bảo game chạy thực sự toàn màn hình trên màn hình còn lại.

Cả KDE (KWin) và GNOME (Mutter) đều có cài đặt như unredirect fullscreen windows hoặc tùy chọn tắt compositor cho ứng dụng toàn màn hình. Bật các tùy chọn này có thể cải thiện hiệu suất và loại bỏ các giật lag nhỏ.

Tóm lại

Linux hoạt động tốt nhất khi bạn dành chút thời gian hiểu thiết lập của mình. Bạn có thể dễ dàng cấu hình nhiều màn hình và dùng chúng cho game, trong khi màn hình thứ hai vẫn mở cho các tác vụ khác mà không làm gián đoạn game. Bạn cũng nên xem cách cải thiện hiệu suất game trên Linux dùng GameMode.