[新聞] Ryujinx v1.3.3

看板Emulator (模擬器)作者 (???)時間1天前 (2025/10/12 19:40), 1天前編輯推噓1(100)
留言1則, 1人參與, 13小時前最新討論串1/1
Ryujinx v1.3.3 以下是機翻潤飾 重大變化包括: - 《王國之淚》 1.4.x 版和《曠野之息》 1.8.x 版支援 * (以及其他使用新音訊渲染器版本的遊戲,例如 Nintendo Classics 模擬器 的較新更新) - LDN 遊戲檢視器 - 空洞騎士:絲之歌 可玩 - 許多領域的 UI 改進 [使用者介面] - LDN 遊戲檢視器 * 使用與相容性清單相同的大部分 UI 程式碼,現在您可以在應用程式內使用 LDN 遊戲檢視器 * 您可以對顯示的遊戲套用篩選器,包括僅顯示您擁有的遊戲 * 預設情況下,它不會顯示私人/不可加入(正在進行中)的遊戲,但是您可以在 遊戲檢視器螢幕的過濾器部分停用此功能 * 因此,由於它預設不會顯示這些遊戲,它們現在被排除在應用程式清單畫面的計數 之外,以與 LDN 遊戲檢視器預設顯示的遊戲數量保持一致 ** 這樣做是因為,對大多數人來說,私人遊戲可能根本不存在。 你需要知道密碼才能進入 ** 對於無法加入的人也是如此,這些人很可能已經對遊戲中的人數感到滿意, 並決定繼續開始遊戲 - Amiibo Window Overhaul * 主要的改進是,Amiibos 現在顯示在左側停靠欄中的清單中,而所選 Amiibo 的 圖像顯示在右側,而不是下拉式選單中 * 此外,「此遊戲僅提供 Amiibos」已變得更加清晰,如果未選擇任何系列, 它將顯示所有可用的 Amiibos - 一般 UI 改進 * 重新著色的兼容性標籤(圖像) * 多個區域中的文字正確對齊 ** 熱鍵螢幕中的鍵盤鍵(影像) ** 許多區域中的複選框(圖片) * 改進了“設定”中的“使用者介面”選項卡(之前)圖像),之後)圖像)) - 修復 Avalonia 滑鼠驅動程式中的滾動邏輯永遠不會為 0 * 如果 100 毫秒內沒有滾動事件,也會自動重設為傳送 0 - 在啟動時向控制台添加了有趣的“Ryubing” ASCII 藝術 - 將以下遊戲新增至 Discord RPC 資產圖像: * 空洞騎士:絲之歌 * 超級瑪利歐銀河 * 超級瑪利歐銀河 2 * Squeakross:Home Squeak Home - 更新了相容性清單: * 額外: ** AKIBA'S TRIP: Hellbound & Debriefed:可玩 ** AKIBA'S TRIP: Undead & Undressed Director's Cut:可玩 ** 永恆之夜:可玩 ** 雷霆任務 2: Remake:可玩 ** 雷霆任務 3: Remake:可玩 ** High on Life:選單 ** IronFall: Invasion:可玩 ** 超級瑪利歐銀河:運作緩慢,AMD GPU Bug ** 超級瑪利歐銀河 2:運作緩慢,AMD GPU Bug,可能死當 ** Prodeus:可玩 ** Pokémon Friends:選單、由於 HLE 服務問題導致當機。 ** Risk of Rain Returns:可玩 ** Shadows of the Damned: Hella Remastered:可玩 ** 神領編年史:可玩 ** 空戰獵鷹:戰士版:可玩 ** The Legend of Nayuta: Boundless Trails:遊戲中 ** Turbo Overkill:可玩 ** Undead Horde:可玩 ** Undead Horde 2:可玩 - 變更: * 銀河聯軍:阿特拉斯之戰 - 數位版:可玩,刪除所有標籤 ** 之前:不行,當機;需要應用更新;HLE 服務問題。 * 毀滅戰士 3:新增標籤 slow [模擬] CPU和記憶體: - 內部記憶體樹結構節點現在像鍊錶節點一樣連結 * 事實證明,許多系統需要存取相鄰節點,並且每次遍歷樹都很慢 - 為一些類別新增了物件池 * 有些系統會產生並刪除大量對象,導致垃圾收集器運行次數超過必要範圍。 現在,這些物件會被池化並重複使用,從而減少分配和釋放操作 - 重構 RangeList 和 NonOverlappingRangeList * 事實證明,大多數使用的系統 RangeList實 際上應該使用 NonOverlappingRangeList,並且切換它們允許程式碼使用更有效的重疊查找 * 這些類別現在從 RangeListBase 具有一些常見輔助函數的類別繼承 * 更新了 NonOverlappingRangeList FindOverlap/FindOverlaps功 能以提高效率 ** 在舊類別中,查找函數會先進行二分查找,找出第一個符合搜尋範圍的重疊項 ,然後左右遍歷內部列表,找到重疊項的列表。 當只有一兩個項重疊時,這種方法運作良好,但當重疊項較多時,會導致卡頓 ** 新系統使用 BinarySearch 演算法來搜尋函數 FindOverlapFast、FindOverlap 和 FindOverlaps(所有 3 種變體)的第一個匹配、 最左邊的匹配、最右邊的匹配以及最左邊和最右邊的匹配 ** 現在 FindOverlaps 也有 3 種變體:AsSpan、AsArray和AsNodes。 舊函數總是複製重疊項的數組,這對於小型列表來說沒問題, 但對於大型列表來說速度較慢。現在,AsSpan如果您只需要快速讀取重疊項, 可以使用;如果您 AsNodes 需要快速存取重疊項並進行寫入存取(有限制) ,可以使用;如果您需要完全寫入存取權限,可以使用舊函數 AsArray - 更改了一些標誌檢查以使用二進制邏輯而不是內建 HasFlag 函數 * 事實證明,當您每秒呼叫某個函數數百萬次時,幾個位元組的小分配會隨著時間的 推移而累積起來 - 將固定大小的陣列讀取為 Span * 模擬器使用大量固定大小的陣列來模擬 Switch 資料結構,但 C# 沒有 (至少以前沒有)固定大小的陣列。因此,該模擬器需要自己實現,而且效果很好 * 但需要注意的是,索引器呼叫了AsSpan,並且沒有嘗試檢索或儲存任何快取資訊 ** 因此,任何時候您在 Ryujinx 固定數組上使用普通數組索引器訪問, 它都會創建一個新的 Span。 ** 與檢查類似 HasFlag,這通常不是什麼大問題。然而,當你經常存取數組元素 (模擬器也經常這麼做)時,效率就會變得極度低下 * Span 當數組需要存取單一數組中的多個數據時,模擬器現在會快取單一數據, 這稍微提高了效率 * 在播放影片時效果最為明顯,因此如果您在播放影片(剪輯場景、介紹等)時遇到 卡頓,現在您可能會獲得更流暢的體驗 - 較小的程式碼更改/改進。 * 有些程式碼變得更易讀。 * 為了提高效率,對程式碼進行了輕微的修改。 [聲音] - rev15增加了對音頻渲染的支援。 * 增加了對基於浮點的雙二階濾波器的支援 ** 更新後的音訊渲染器使用浮點數,所以我們也必須這樣做 ** 更新舊系統以使用浮點數而不是短整型數據,舊的音訊修訂數據將自動從短 整型數據轉換為浮點數據 - 重命名類別和結構以匹配任天堂自己的名稱(正在進行中) * 要嘛是任天堂更新了名稱,要嘛是我們從一開始就使用了類似的名稱。 * 更改名稱是為了使未來的逆向工程工作更容易,因為當 SDK 和 Ryujinx 中的資料 結構之間的名稱不符時不會造成混淆 [圖形處理器] - Linux 上的 Intel Arc 也存在 Windows 和 NVIDIA Pre-Turing 上存在的推送描述符 錯誤 * 它已被添加到中的 HasPushDescriptorsBug 輔助函數中 ShaderCollection.cs。 * 此外,由於 Linux 上的商標縮寫是小寫的,因此檢查 IsIntelArc 已更改為不區分 大小寫的檢查 [高階語言學習] - IApplicationFunctionsCMIF ID 210 的基本事件處理實作 ** 我們還不知道這個函數的實際名稱是什麼,所以它 GetUnknownEvent 在程式碼 中被呼叫 ** 這就是《空洞騎士:絲之歌》在 Ryubing 中啟動所需的全部內容 - 修正了 HID 邏輯中的錯誤,該錯誤導致某些遊戲因新 SDK 被錯誤的輸入狀態資料混淆 而啟動循環 [書呆子專區] - Ryujinx GDB Stub 回歸啦,感謝 @coxxs 的貢獻! * 我們有一個指南設置,您可以在這裡找到 - 將 LDN 的預設 URL 變更為 ldn.ryujinx.app。這與之前的伺服器相同,只是使用了更 官方的網域 [CI/CD] - 已完全刪除從 GitHub 下載更新的支援 - 更新程式邏輯已遷移為使用 UpdateServer 專案的一流客戶端庫元件 https://git.ryujinx.app/ryubing/ryujinx/-/releases -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.255.126.69 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Emulator/M.1760269213.A.FF6.html ※ 編輯: playlive (111.255.126.69 臺灣), 10/12/2025 19:41:23

10/13 10:29, 13小時前 , 1F
這是ryujinx的分支ryubuin 大概是現在我覺得的正式分支吧
10/13 10:29, 1F
文章代碼(AID): #1ewvET_s (Emulator)
文章代碼(AID): #1ewvET_s (Emulator)