- Steam Deck và SteamOS là ví dụ cho thấy khoản đầu tư của Valve vào Linux không chỉ dừng lại ở một thiết bị chơi game mà còn lan tỏa ra toàn bộ hệ sinh thái mã nguồn mở
- SteamOS được xây dựng trên Arch Linux, không gian người dùng GNU, systemd và KDE Plasma, đồng thời Valve cũng tài trợ cho việc cải thiện KDE Plasma
- Steam Play / Proton đã mở rộng khả năng tương thích game trên Linux dựa trên Wine, đồng thời các dự án như DXVK và VKD3D-Proton cũng cùng tạo ra giá trị
- Phạm vi đóng góp trải rộng từ trình điều khiển Mesa OpenGL/Vulkan, trình điều khiển đồ họa trong kernel, quản lý màu sắc/HDR của AMD, Zink, Gamescope đến Flatpak
- Theo Igalia, chính sách của Valve là upstream mọi thứ họ đang làm, và hiệu quả đó còn lan tới cả hệ sinh thái desktop Linux
Hiệu ứng upstream bắt đầu từ Steam Deck
- Công việc của Valve với Steam Deck và SteamOS được xem là một ví dụ về việc nâng tầm toàn bộ hệ sinh thái mã nguồn mở
- Tại Open-Source Summit của Linux Foundation Europe, Alberto Garcia của Igalia đã tổng hợp cách SteamOS đang đóng góp cho hệ sinh thái Linux
- Igalia hiện vẫn tiếp tục hợp tác với Valve trong một phần công việc cải thiện hệ sinh thái Linux
Nền tảng của SteamOS và cấu hình desktop
- SteamOS được xây dựng trên Arch Linux và sử dụng không gian người dùng GNU cùng systemd
- Chế độ desktop cung cấp KDE Plasma, và Valve tài trợ cho một phần công việc cải thiện KDE Plasma
- Steam Play / Proton tận dụng Wine để mang lại giá trị lớn cho game thủ Linux và những người yêu thích Linux
- Các dự án mã nguồn mở liên quan được nhắc đến cùng gồm DXVK và VKD3D-Proton
Đóng góp cho graphics stack và kernel
- Các kỹ sư của Valve đã mang lại nhiều cải tiến cho trình điều khiển Mesa OpenGL/Vulkan và các thành phần trình điều khiển đồ họa trong kernel
- Mục tiêu đóng góp không chỉ giới hạn ở các trình điều khiển đồ họa AMD có lợi cho phần cứng Steam Deck
-
Zink OpenGL-on-Vulkan
- Công việc về Zink OpenGL-on-Vulkan gắn liền với việc cải thiện hạ tầng đồ họa dùng chung
- Trong lĩnh vực hỗ trợ trình điều khiển đồ họa Linux, các đóng góp của Valve và đối tác không chỉ có ích cho game mà còn có lợi cho cả hệ sinh thái desktop Linux ngoài gaming
Từ quản lý màu sắc AMD đến Flatpak
- Các kỹ sư Igalia đã cùng Valve tham gia vào công việc về quản lý màu sắc của AMD và HDR
- Igalia cũng tham gia vào các mảng như kích hoạt các tính năng kernel Linux mới để cải thiện hỗ trợ Steam Play
- Những công việc khác mà Valve tham gia cũng trải ra nhiều nhánh
- Mở rộng hỗ trợ hệ thống tệp không phân biệt chữ hoa chữ thường trên Linux
- Nhiều tính năng kernel khác nhau
- Trình tổng hợp Wayland Gamescope
- Cập nhật phần mềm bất biến
- Flatpak
Chính sách “Upstream everything”
- Theo Igalia, một phần trong chính sách của Valve là upstream mọi thứ họ đang làm
- Để có cái nhìn toàn diện hơn về các đóng góp của Valve cho Linux và phần mềm mã nguồn mở, có thể tham khảo bài trình bày tại OSS EU 2023 của Alberto Garcia
1 bình luận
Ý kiến trên Hacker News
Valve được yêu mến không chỉ đơn giản vì Steam, mà vì từ thời Half-Life 1 họ đã cố gắng làm ra game hay, cung cấp một nền tảng tốt cho game thủ, và vì game thủ mà xử lý cả những vấn đề ngoài phạm vi của mình như Linux, VR
Dù có những điểm đáng bị chỉ trích như chính sách cửa hàng Steam, tôi vẫn cho rằng Valve luôn quan tâm đến game thủ. Tôi trở thành fan không phải vì một game cụ thể nào, mà vì sự hỗ trợ bền bỉ của họ để mọi người đều có thể thưởng thức “game”
Gabe lo ngại việc Microsoft ngày càng quan tâm đến game, và nếu việc chuyển sang phân phối số là không thể tránh khỏi, có vẻ ông muốn tạo ra một nền tảng thân thiện với game thủ trước Microsoft. Nhìn vào các lựa chọn thay thế như Microsoft, Epic, GOG, cũng không có nơi nào dẫn dắt quá trình chuyển sang phân phối trực tuyến tốt hơn Valve, và việc họ đưa ra chính sách gần như “hoàn tiền không cần hỏi” cho game số cũng rất ấn tượng. Ngay cả trong những trường hợp chính sách không khớp, như một game bị hỏng ngoài thời hạn hoàn tiền, họ vẫn tạo ngoại lệ và xử lý theo hướng đúng đắn
Bộ phận hỗ trợ khách hàng ban đầu không giúp được gì, nên tôi gửi phàn nàn cho Gabe; sau đó một trong các lập trình viên Steam trả lời và thừa nhận rằng phản hồi ban đầu không phải trải nghiệm mà họ mong muốn. Họ gửi lại các bản game đã bị hoàn tiền, và còn gửi mã cho “tất cả các tựa game Valve hiện tại và tương lai” để tôi và con trai có thể chơi cùng nhau. Kết quả là thiện cảm của tôi với công ty và nền tảng chỉ tăng thêm
Epic nhấn mạnh rằng một cửa hàng số vẫn có thể có lãi chỉ với mức phí 12%, nhưng không thấy họ tái đầu tư số tiền đó để làm nền tảng tốt hơn cho tất cả mọi người như Steam Input, Proton, Workshop nhiều bằng Valve
Dùng Steam bằng trình đọc màn hình vẫn luôn khó khăn đến mức người ta phải viết cả hướng dẫn sử dụng, và dù gần đây trên Windows đã đỡ hơn một chút, trên Mac vẫn rất tệ. Có khá nhiều game trên Steam mà người khiếm thị có thể chơi, dù là hỗ trợ mặc định hay chế độ hỗ trợ tiếp cận, nhưng Steam Deck thì hoàn toàn không có hỗ trợ khả năng tiếp cận, trong khi trình đọc màn hình trên Linux có tồn tại và PS5 lẫn Xbox cũng có tính năng riêng. Khó có thể nói Valve thật sự quan tâm
[1] (đã lỗi thời) https://www.mail-archive.com/audiogames-reflector@sabahattin...
[2] https://blind.shadows1428.com/
[3] https://mortalkombatgamessupport.wbgames.com/hc/en-us/articl...
[4] https://github.com/bradjrenshaw/say-the-spire
[5] https://www.nexusmods.com/stardewvalley/mods/16205
[6] https://www.youtube.com/watch?v=yQC6TJkBElY
[7] https://www.a11yproject.com/posts/getting-started-with-orca/
[8] https://support.xbox.com/en-US/help/account-profile/accessib...
[9] https://www.playstation.com/en-us/support/hardware/ps5-acces...
Tôi chưa từng có Steam Deck và cũng chưa từng dùng SteamOS, nhưng trong vài năm qua, việc hỗ trợ game cũ lẫn game mới trên Linux đã cải thiện đáng kinh ngạc; giờ đây có vẻ khả năng chạy được trong hầu hết trường hợp còn cao hơn
Việc Valve không giữ riêng các cải tiến cho mình mà đưa chúng upstream cũng rất tuyệt, và hy vọng họ sẽ tiếp tục như vậy
Vì họ và các nhà thầu gửi gần như toàn bộ công việc lên upstream, họ không cần duy trì các khác biệt riêng, và phần lớn phần mềm họ phân phối cũng không cần tự build. Khác với nhiều công ty độc quyền cố giữ mọi thứ càng nhiều càng tốt trong nội bộ, Valve hiểu rằng nếu hợp tác thân thiện với các dự án upstream thì dù ban đầu tốn thêm công điều phối, về tổng thể họ sẽ có được phần mềm tốt hơn với ít nỗ lực hơn nhiều. Với tư cách là người tạo ra và lead developer của Proton trong 5 năm đầu (2016~2021), tôi thấy Valve đã mặc nhiên chấp nhận ngay từ ngày đầu rằng phần lớn công việc sẽ đi lên upstream, và điều đó thể hiện qua kết quả tốt cũng như quan hệ cộng đồng tốt trong các dự án mã nguồn mở khác
[1] Ví dụ: https://www.codeweavers.com/blog/aeikum/2019/3/27/how-proton...
Sau đó tôi mới nhận ra bản thân việc mình mặc định rằng game sẽ chạy được trên Linux đã là một thay đổi đáng kinh ngạc đến mức nào
Nó không hoàn hảo và không phải mọi thứ đều chạy tốt, nhưng gần như mọi game tôi muốn chạy đều chạy được, và gần như mọi game tôi chơi đều chạy khá ổn. Tôi cũng đang chơi BG3 trên Steam Deck. Sau này khi ổn định chỗ ở và lắp một PC chơi game mới, tôi định cài Linux
Tôi nghĩ lý do lớn khiến Valve tốt là vì họ là công ty tư nhân nên có thể vận hành theo cách không truyền thống
Khác với trường hợp các công ty đại chúng đưa về những lãnh đạo đưa ra các quyết định tệ đến vô lý. Tôi nghĩ đến những ví dụ như Unity
Đồng thời Valve cũng có một tầm nhìn có thể nuôi dưỡng lâu dài. Một công ty khác có thể chỉ làm sản phẩm khả dụng tối thiểu rồi bỏ đi nếu không kiếm đủ tiền, nhưng Valve có vẻ có cả dư địa lẫn định hướng để đều đặn đầu tư nguồn lực vào nghiên cứu, phát triển và lập kế hoạch dài hạn. Giữa những công ty đại chúng ngày càng tham lam, Valve đang làm cho thế giới mã nguồn mở, và có lẽ cả thế giới rộng hơn, trở nên tốt đẹp hơn
Ngược lại, một công ty tư nhân có thể giống như vườn nho 500 năm tuổi ở Tuscany: làm việc của mình, có lãi hoặc đôi khi lãi ít hơn, và chỉ cần kiếm đủ để thuê người lâu dài cũng như tối đa hóa tính thủ công là có thể hài lòng. Sản phẩm tuyệt vời là kết quả tự nhiên của sự chăm bẵm đó, và doanh thu thường sẽ đi theo sản phẩm tốt
Proton là một dự án thật sự tuyệt vời, và là ví dụ cho thấy vì sao Steam là nền tảng được cộng đồng yêu mến. Không có động cơ lợi nhuận trực tiếp trong việc mở rộng lựa chọn và tăng khả năng tương thích
Giờ chỉ cần các công ty anti-cheat hỗ trợ Linux, điểm protonDB sẽ bùng nổ chỉ sau một đêm
Chưa từng có kernel nào có độ nhận diện và khả năng thích ứng khổng lồ như Linux. Cũng hiếm có tác vụ nào đòi hỏi mạnh đồng thời nhiều lĩnh vực của hệ điều hành như game
Nếu các nhà phát triển game, đặc biệt là những người tối ưu sâu engine, bắt đầu đóng góp cho Linux và tinh chỉnh để kéo hiệu năng, thông lượng và độ trễ thấp lên tối đa, game sẽ tiến hóa theo những cách mà các lựa chọn hiện tại không thể theo kịp hoặc cung cấp tương đương. Nếu các vendor AAA lớn đang theo dõi, hãy cân nhắc rằng có một cộng đồng rất lớn nhưng bị bỏ quên, sẵn sàng hợp tác, giúp đỡ và cải thiện mọi thứ cần thiết để sản phẩm của các bạn chạy tốt hơn. Hãy để chúng tôi làm trong game những gì chúng tôi đã làm được ở server, mobile và điện toán hiệu năng cao
Sẽ rất hay nếu Valve tạo ra một thứ như Giải thưởng game Linux native
Chẳng hạn trao giải và tăng hiển thị trên cửa hàng, giảm 50% phí hoa hồng cho game native Linux hay nhất; còn với game độc quyền nền tảng native Linux hay nhất thì trao giải, tăng hiển thị trên cửa hàng và giảm 100% phí hoa hồng. Proton, giống như WINE, là một công cụ hỗ trợ có ích nhưng cần rất nhiều công sức, cũng tạo gánh nặng lớn cho Valve và cản trở các bản port native chất lượng cao. Chúng ta cần nhiều game native hơn như HL2 và CSGO, và Valve không nên làm thay công việc của nhà phát triển ứng dụng. Về dài hạn, nguồn lực của Valve cần được dành cho các tiện ích như Linux, Mesa, SDL, v.v. Tôi nghĩ mục tiêu của Proton lẽ ra phải là khiến chính nó trở nên không còn cần thiết. Phía bên kia cũng dùng các API không tương thích như Mantel và Direct3D, tất cả console đều buộc người dùng chuyển nền tảng, còn Apple, Microsoft, Sony, Nintendo đã dùng các game độc quyền nền tảng suốt hàng chục năm, nên cũng khó coi đây là không công bằng. Các game native tốt có HL1, HL2, CS1, CSGO, Civilization, Tomb Raider, OpenRA, và đặc biệt quan trọng là có bản port ngay ngày phát hành
Nhưng cũng thú vị là khi nói Valve nên đưa ra phần thưởng, lại lấy 4 game của Valve làm ví dụ. Thực tế chắc họ sẽ không làm vậy, nhưng tưởng tượng thì buồn cười. Tôi nghĩ đây không phải là đề xuất quá tệ, vì hầu như chẳng có nhà phát triển nào làm game chỉ để tiết kiệm 15% chia sẻ doanh thu, và cũng không ai nhìn thấy cơ hội tiết kiệm 30% rồi đặt cược vào độc quyền Linux. Tuy nhiên, việc các studio AAA — những nơi ít cần tiền nhất — có thể lấy phần thưởng là một vấn đề. Dù vậy, rốt cuộc thứ chúng ta muốn khuyến khích lại chính là những bản port như thế, nên khá khó xử. Có thể chia thành hạng mục chung và hạng mục “đội nhỏ”, nhưng định nghĩa đội nhỏ chắc sẽ khá rắc rối
Với Proton, ngay cả những game cũ nhiều vấn đề như Dark Messiah of Might and Magic, vốn giờ thậm chí không còn chạy trên Windows, cũng có thể chạy được. Cố chấp với port native Linux giống như vì theo đuổi sự hoàn hảo mà bỏ lỡ một giải pháp tốt, và port native cũng không nhất thiết bảo đảm điều gì. Tất nhiên tôi rất biết ơn các nhà phát triển cung cấp bản port native, nhưng rốt cuộc tôi chỉ muốn nghỉ ngơi bằng cách bắn vào mặt bọn phát xít không gian ngoài hành tinh, chứ không muốn phải suy nghĩ xem làm thế nào để bọn phát xít không gian ngoài hành tinh đó chạy được trên máy tính của mình
Nếu mỗi lần phiên bản thay đổi đều có thể biên dịch lại mã thì ổn, nhưng nếu phải phân phối một binary bất biến thì không tốt. Bên Windows, thường chỉ cần liên kết tĩnh mọi thứ và lấy các DLL hệ thống là phần lớn sẽ ổn, còn trên Linux thì dù muốn cũng không làm được như vậy
Xin quảng bá Steam Remote Play một cách hơi ngượng ngùng: https://partner.steamgames.com/doc/features/remoteplay
Đây là trường hợp trên Linux không có lựa chọn thay thế tốt để chơi từ xa không độ trễ, và giờ có người còn thích dùng cách này hơn VNC cho mục đích remote desktop
Thật ra tôi mua Steam Deck vì muốn ủng hộ tinh thần của Steam Deck. Tôi nghĩ nó có thể trở thành một chiếc máy tính thật sự thú vị và hấp dẫn, và cũng thấy hài lòng khi Valve lại đóng góp trở lại
Tôi nghĩ doanh số bán ra rõ ràng củng cố thái độ đó. Trước đây không phải họ không làm, nhưng một sản phẩm thành công giúp thúc đẩy công việc. Từ khi nhận máy, tôi đã mua khoảng 24 game và lại mê game trở lại. Khi đi du lịch thì nó như cứu tinh, còn ở nhà tôi cắm vào dock và dùng một tay cầm Stadia cũ làm thiết bị nhập chính. Steam Deck là một thiết bị đặc biệt
Tôi đặt cọc ngay sau khi Steam Deck được công bố nhưng ở cuối hàng chờ; đến lượt thì lại đang đi nghỉ nên bỏ lỡ thông báo, chỉ biết sau 3 ngày khi thấy tiền đặt cọc được hoàn lại. Bực mình nên tôi đặt cọc lại và lại xếp cuối hàng, nhưng sản lượng tăng nên cũng không phải chờ lâu. Yếu tố thành công là sự tiện lợi áp đảo. Có thể đơn giản tạm dừng rồi tiếp tục, và chơi chớp nhoáng ngay cả trong lúc quảng cáo trên TV. Nó cũng rất tốt để khám phá các game cũ chưa chơi trong thư viện Steam. Giờ chỉ cần tìm mã cheat để vượt qua đoạn ở điểm lưu Ravenholm của Half-Life 2, nơi tôi không đủ máu hoặc kỹ năng để sống sót
Tôi không phải game thủ hardcore, có thử chơi vài game một chút, nhưng khi có thời gian thì chủ yếu chơi trên Switch hoặc laptop gaming có card NVIDIA cao cấp. Nó chạy rất tốt trên Pop_OS!. Tuy vậy, phần desktop thì tôi mong được trau chuốt hơn nữa. Thành thật mà nói, tôi nghĩ nhiều người có thể dùng Deck không chỉ như máy chơi game mà còn như thiết bị điện toán chính
Ngoài ra vẫn còn vài chỗ thô, nhưng tôi hài lòng
Những cải tiến đáng kể mà các kỹ sư Valve đã thực hiện cho driver Mesa OpenGL/Vulkan và các thành phần driver đồ họa trong kernel là điểm cốt lõi
Họ không chỉ đóng góp cho driver đồ họa AMD có lợi cho phần cứng Steam Deck, mà còn cho Zink OpenGL-on-Vulkan và hạ tầng chung; các đóng góp trong lĩnh vực này cũng rất hữu ích cho hệ sinh thái desktop Linux bên ngoài mảng game. Nhìn vào Vulkan trong đồ họa, Proton cho tương thích Windows cấp thấp, hỗ trợ driver, tùy biến và tùy chọn controller, cũng như cách họ đưa tất cả lên upstream, có thể nói nhiều về năng lực thực thi tầm nhìn dài hạn của một công ty chưa niêm yết. Từ Canonical cho tới Nintendo, Activision/Blizzard, họ nên lo rằng về lâu dài Valve sẽ mang lại trải nghiệm khách hàng tốt hơn và lấy mất miếng bánh của mình
Chừng nào họ chưa kết luận rằng vận hành cửa hàng riêng tốt hơn mức chia sẻ doanh thu 30%, đây vẫn là quan hệ cộng sinh. Valve cũng đưa ra mức chia sẻ thấp hơn khi doanh thu vượt một ngưỡng nhất định, và họ đã nhượng bộ ở điểm đó rồi
Khi Valve lần đầu nói sẽ đưa game lên Linux, thật lòng tôi đã rất hoài nghi
Nó trông giống một động thái tạo dáng nhằm ngăn các chính sách săn mồi của Microsoft, và dù có thiện chí thì cũng giống một lời hứa rỗng rồi cuối cùng sẽ không được giữ. Việc chạy game Windows trên Linux một cách tử tế, chứ không phải kiểu “nếu bỏ qua lỗi thì đôi khi cũng chạy tạm” bằng hack, mẹo vặt hay phép thuật, nghe như hoàn toàn điên rồ. Vậy mà họ đã làm được. Những người điên đó đã làm được chỉ trong vài năm, và điều đó thật sự tuyệt vời. Xin chúc mừng Gabe, các nhà phát triển Steam và các nhà phát triển Proton
Tất cả những điều này sẽ không thể có nếu thiếu Wine, vốn đã giúp rất nhiều game không có bản port native chạy được trên Linux. Proton và SteamOS đang nối nốt chặng cuối, đặc biệt về mức độ hoàn thiện và tính dễ dùng; do nguyên lý Pareto nên điều đó đúng là quan trọng, nhưng không thể quy toàn bộ công lao cho Valve
Chỉ là nó được trau chuốt và đóng gói quá tốt nên không còn cảm giác như hack nữa. Mỗi lần thấy nó chạy mượt một cách tự nhiên như vậy, tôi vẫn tiếp tục ngạc nhiên