基於 Rust 的新覆蓋層庫承諾為遊戲應用提供 GPU 加速效能

BigGo Editorial Team
基於 Rust 的新覆蓋層庫承諾為遊戲應用提供 GPU 加速效能

一個名為 Asdf Overlay 的新 Windows 覆蓋層庫已經問世,為開發者提供了一種為遊戲和應用程式建立高效能覆蓋層的方法。該庫使用 Rust 構建,旨在解決多年來困擾覆蓋層開發的常見效能問題。

當前應用:

  • Alspotron:遊戲內歌詞疊加層
  • Tosu:遊戲內疊加層系統

GPU 加速架構消除效能瓶頸

該庫的突出特點是使用 GPU 共享紋理,而不是傳統的基於 CPU 的幀緩衝區複製。這種方法允許任何大小的覆蓋層都能在不損失效能的情況下渲染,解決了開發者面臨的一個主要痛點。該系統透過鉤入各種渲染後端來工作,支援從較老的 DirectX 9 到現代 Vulkan 和 DirectX 12 API 的所有內容。

社群中的一位開發者對這種方法表示了熱情,指出他們之前曾多次在覆蓋層實現上遇到困難。全面的 API 支援意味著該庫可以與傳統遊戲和尖端遊戲相容。

支援的渲染 API:

  • OpenGL
  • DirectX 9、10、11、12
  • Vulkan

遊戲社群表現出強烈興趣

遊戲和模擬賽車社群對這項技術表現出了特別的興趣。關於與流行反作弊系統如 Easy Anti-Cheat 和 Vanguard 的相容性問題已經出現,這些系統通常會阻止覆蓋層應用程式。來自 iRacing 和模擬賽車世界的社群成員看到了潛在的應用,特別是用於嵌入類似 OpenKneeboard 的外部應用程式。

人們也對透過 OpenXR 和 OpenVR 提供未來 VR 支援感到好奇,這可能會將該庫的實用性擴充套件到傳統桌面遊戲之外。

名稱選擇引發社群討論

asdf 這個命名引起了一些困惑,社群成員最初認為它與現有工具如 asdf 版本管理器或 Common Lisp 構建系統有關。該名稱似乎引用了 QWERTY 鍵盤左手主行位置,儘管對其與遊戲傳統 WASD 移動鍵的連線存在一些爭議。

該庫已經在實際應用中使用,包括一個名為 Alspotron 的遊戲內歌詞覆蓋層和一個名為 Tosu 的遊戲覆蓋層。對於有興趣嘗試的開發者,該專案提供了 Node.js 和 Rust 的示例,具有輸入捕獲控制和多後端支援等功能。

參考:Asdf Overlay