看板 Emulator 關於我們 聯絡資訊
Citron 2026.02.1 "Pathfinder" 以下是機翻潤飾 存檔管理系統進行全面改革,並引入以下功能: - 全域自訂儲存路徑:使用者現在可以為所有儲存資料指定一個全域目錄, 從而大大簡化備份和遷移過程 - 跨模擬器相容性:存檔檔案可以在不同的模擬器之間共用 - 儲存鏡像:NAND 快閃記憶體和自訂儲存位置之間的自動同步 - 每個遊戲的路徑覆蓋:每個遊戲都可以擁有自己的自訂存檔目錄 - 競態條件修復:解決配置變更期間可能導致保存資料損壞的執行緒問題 - 堆疊耗盡預防:修復可能導致模擬器當機的遞歸鏡像問題 - 路徑優先系統:正確的層級結構,優先考慮鏡像路徑和遊戲內路徑,而非預設路徑 - 初始同步功能:防止在模擬環境之外配置設定時覆蓋 NAND 快閃記憶體 - 動態路徑理解:智慧型偵測全域 NAND 位置與預設 NAND 位置 Citron 內建了全新的模組管理系統: - 模組服務後端:用於處理模組操作的核心服務 - 下載對話框:使用者友善的介面,用於瀏覽和下載模組 - 安裝邏輯:自動將下載的模組安裝到正確的目錄 - 資料夾組織:按遊戲和類型智慧組織模組 - 右鍵選單整合:在遊戲清單中新增右鍵選單選項以管理模組 - Nx-Optimizer 整合:內建支援 MaxLastBreath 的 Nx-Optimizer 工具 - 支援遊戲標題 ID:自動偵測並按遊戲標題 ID 進行整理 Nintendo Switch主選單功能的初步實作: - 系統小程式代理:ISystemAppletProxy,ILibraryAppletProxy,IOverlayAppletProxy , IApplicationProxy - 觀察者服務:狀態控制器的事件處理 - 小程式管理:圖書館小程式和主選單管理介面 - 選單列整合:新增 UI 選項,用於啟動 QLaunch/主選單 - 建置配置:已更新 QLaunch 服務的核心建置配置 分享和導入每個遊戲的配置: - JSON 匯出:將遊戲特定設定匯出為可共享的 JSON 文件 - JSON 匯入:從其他使用者匯入設定配置 - 基本設定支援:用於共享的擴充設定基礎架構 - 系統狀態檢查:確保system.IsPoweredOn()檢查不會在模擬過程中執行 (必須在未執行遊戲時執行) - INI 解析:JSON 和 INI 格式之間的正確轉換 管理遊戲庫的新功能: - 給我驚喜!功能:隨機選擇遊戲(附骰子圖示) - 遊戲隱藏:透過右鍵選單從遊戲清單中隱藏特定遊戲 - 隱藏路徑儲存:在 qt_config 中持久儲存隱藏的遊戲路徑 - 啟動動畫:遊戲初始啟動時的動畫圖示 - 強調色彩主題:可在使用者介面的更多部分自訂強調色彩 ETC2 紋理壓縮支援 - 新增對 ETC2 紋理壓縮格式的支援 - 提高了與使用這種行動裝置壓縮格式的遊戲的相容性 - 正確解碼和渲染 ETC2 壓縮紋理 紋理組件類型的完整基礎架構: - SamplerComponentType 枚舉:用於紋理元件分類的新枚舉 - SPIR-V 後端整合:著色器編譯中的元件類型處理 - 著色器環境更新:支援著色器處理中的紋理元件類型 - 紋理通道最佳化:最佳化通道中的組件類型整合 - 快取與序列化:組件類型資訊的持久存儲 BCN Unswizzle 計算著色器 - 用於 BCN 紋理反旋轉的專用計算著色器 - 改進區塊壓縮紋理處理的性能 - 改進著色器編譯的建置系統 復古 CRT 顯示器模擬: - 可設定掃描線:可調式掃描線強度和間距 - 螢光發光:模擬螢光餘輝效應 - 曲率:可選的螢幕曲率模擬 - 色彩溢出:真實的 CRT 色彩溢出效果 - 效能最佳化:對幀速率的影響最小 全面的記憶體管理以防止顯示記憶體洩漏: - 保守/激進模式:使用者可選的顯示記憶體使用策略 - 垃圾回收:自動清理未使用的顯示記憶體資源 - 快取 GC 改進:使用正確的 static_cast 實作類型安全的垃圾回收 - 設定簡化:精簡的 GC 激進程度選項(僅提供關閉/輕度模式) - 虛擬函數表產生:透過在 settings.cpp 中產生虛擬函數表修復連結器錯誤 Vulkan改進 - VK_KHR_buffer_device_address:緩衝區裝置位址支援的基礎架構 - 線柵格化回退:針對不支援的線柵格化模式的優雅回退 - 影像尺寸限制:將影像尺寸和複製範圍限制在 GPU 限制之內 - 查詢快取協調:與渲染通道邊界進行適當的協調 - 子模組更新:更新了 Vulkan 頭檔和依賴項 - 修復損壞的快取:修復著色器分配問題 渲染修復 - TAA AMD 圖形瑕疵:修正 AMD 硬體上的時間抗鋸齒圖形瑕疵和像素雜訊問題 - NVDEC 記憶體驗證:新增對 H264 解碼器和 VIC 的記憶體驗證 - 紋理快取:優雅地處理未映射的記憶體區域 - 整數紋理:修復 AMD 渲染器中由於著色器編譯問題導致遊戲無法啟動的錯誤 音訊渲染器 REV12 和 REV13 支援 - 擴展音訊渲染器以支援韌體版本 12 和 13 - 提高了與新遊戲的相容性 - 針對最新系統版本進行正確的音訊效果處理 音訊效果版本控制重構 - 改良的雙二階濾波器實作 - 修正了錯誤的修訂版本號(12 → 15) - 改進音訊效果的版本檢測 - 增強型 AM 服務音訊處理 [Steam Deck 和 Gamescope 支援] Gamescope 的 UI 完全重製 為了相容於 Steam Deck,對所有 UI 元素進行全面重構: 對話重構 - 關於對話方塊:重新設計遊戲視野顯示版面 - 配置對話框:重新建構配置選項卡和選項 - 控制器介面:專為僅使用遊戲手把導航而最佳化 - 多人遊戲對話:重新設計以支援觸控/遊戲手把輸入 - 更新對話框:相容 Gamescope 的更新通知 疊加層修復 - 效能疊加層:修復遊戲視野的顯示和尺寸問題 - 多人遊戲疊圖:修正多人遊戲疊圖的位置 - VRAM 監控:在顯示卡上正確顯示 VRAM 使用情況 解析度和顯示 - 修正 Gamescope 特有的 UI 和解析度錯誤 - 為條件邏輯添加了遊戲視窗檢測布林值 - 修正 Gamescope 程式碼路徑的 MSVC 編譯問題 [多人遊戲與網絡] 關鍵網路穩定性改進: - SIGSEGV 修復:解決套接字處理中的段錯誤 - 套接字資料清理:正確初始化和清理套接字數據 - 表互斥鎖:為套接字表添加了互斥鎖保護 - 守衛與互斥鎖:bsd.cpp 中的執行緒安全套接字操作 - 套接字代理程式保護:套接字代理程式的互斥鎖定和刷新操作 - 競態條件修復:修復套接字關閉和資料包接收之間的競態條件 - CPU 資源不足問題修復:解決導致效能下降的忙碌等待問題 - 移除套接字重用:防止因重複使用已關閉的套接字而導致的問題 LDN 服務改進 - 已執行 SetProtocol 命令 - 已執行 SetWirelessAudioPolicy 命令 - 更好的本地無線遊戲協議處理 多人遊戲體驗改進 - 聊天室功能增強:新增功能和使用者介面改進 - 連結過濾:聊天中強大的 URL 連結過濾和清理功能 - 訊息過濾:SanitizeMessage 安全聊天顯示功能 - 競態條件修復:修復資料包發現競態條件 - 節點編號:確保節點從 1 開始,而不是從 0 開始 - 資料包互斥鎖:新增了可變資料包互斥鎖,以提高線程安全性 - 穩定性:sleep_for 為了控制時間,增加了穩定性參數,而不是產量參數 - 疊加層清理:正確清理多人遊戲疊圖資源 - ZA 連接問題:修正按字母順序排列連接的錯誤 [檔案系統和保存管理] 儲存路徑層級 - 正確的優先順序:鏡像 → 單局遊戲 → 全域 → 預設 - 在配置介面中正確顯示路徑 - 初始同步以防止 NAND 快閃記憶體被覆蓋 - 用於重新啟動正確同步的布林標誌 - 對全域與預設 NAND 位置的動態理解 - 基地位置確定邏輯 取得緩衝區歷史記錄的實作 PR:(nvnflinger 修復) - GetBufferHistory 已在 nvnflinger 服務中實作 - 防止因缺少緩衝區歷史資料而導致的遊戲卡死 使用者介面 - 修復 FPS 計數器閃爍問題 - 已修復半幀率報告問題 - 更流暢的幀時間顯示 - 關閉時進行適當的覆蓋層清理 - 防止殭屍疊加進程 - 模擬停止時釋放資源 - 停止模擬時,正確釋放和回收記憶體 - 遊戲停止後減少記憶體佔用 - 針對 MSVC 和 Android 平台上的 core.cpp 編譯器進行了修復 - UI 元素採用一致的強調色 - 搜尋字段樣式改進 - 遊戲列表顏色一致性 - 配置對話框中的按鈕設計進行了現代化改造 - 淺色/深色主題文字修復 - NavigateToGamedbEntry 由於我們已實施內建並維護的 GitHub 相容性列表, 因此刪除了冗餘內容 - 自動相容性報告 - 與 GitHub 進行遠端列表同步 - 修復 QString 處理包含特殊字元的遊戲名稱的問題 - 改進 GitHub 解析邏輯 - 現在遊戲過程中可以使用解鎖幀率快捷鍵(Ctrl+U) - 正確的快捷鍵註冊和處理 服務與 HLE - 家長監護服務 (PCTL) - 為韌體 18.0.0 及更高版本實作了服務存根 - QLaunch 相容性要求 - 為韌體 20.0.0+ 實作了介面存根 - 應用程式枚舉支援 - 已實作,SetVerifyOption 而非存根 - 改進的 SSL 憑證處理 - QLaunch 支援的各種服務實作 - 事件處理改進 錯誤修復 - 圖書館小程式凍結 * 修復庫小程式中的控制器凍結問題 - 快速啟動掛載 * 延遲啟動 EmuThread 以修復快捷方式啟動 - CLI 啟動掛載 * 主遊戲循環的延遲遊戲啟動 - 堆疊耗盡 * 防止遞歸儲存鏡像當機 - 競賽條件 * 保存鏡像中的多線程修復 - 顯示記憶體洩漏 * 綜合顯示記憶體管理系統 圖形修復 - 黑色方塊 * 移除導致偽影的 alpha_to_coverage - TAA AMD 噪訊 * AMD GPU上的修復時間抗鋸齒 - 未映射記憶體 * 優雅地處理未映射區域 平台修復 Linux - Clang 編譯 * 多個 Clang 嚴格規則修復 - PGO 檔案路徑 * 修正 Clang PGO Linux 檔案路徑命名問題 - Linux 命令列介面 * 修復 CLI 更新功能 Windows - MSVC 浮點數 * 新增浮點數要求類型轉換 Android - Android 靜態轉換 * 修正多個針對警告的 static_cast 問題 * 阻止模擬運行時進行 RomFS/ExeFS 轉儲 * 使用作用域儲存處理外部儲存權限 * 雙精度浮點數到靜態型別轉換 macOS - macOS 輸出顯示 * 靜態型別轉換要求 [基礎設施和建造系統] CMake 更改 - 已將模組下載器檔案新增至建置中 - 已將外部二進位檔案切換到 yuzu-mirror - QLaunch 服務的建置配置更新 依賴關係 - 更新 Vulkan 子模組 - 外部依賴組織 代碼品質 - 已移除未使用的標題 ID - 多人遊戲組件中的程式碼清理 - 統一的程式碼格式 已知問題 - QLaunch 支援尚處於實驗階段,可能無法相容於所有系統配置 - 部分遊戲在遷移過程中仍可能遇到與新存檔路徑系統不相容的問題 - 不同 GPU 廠商的 CRT 著色器可能有細微的視覺差異 [升級說明] 保存資料遷移 如果是從 0.12.25 版本升級: - 升級前請備份存檔 - 新的存檔路徑系統將自動偵測現有存檔 - 配置自訂儲存路徑 Emulation → Configure → Filesystem - 如果您希望自動備份到輔助位置,請啟用鏡像功能 設定更改 - VRAM GC 激進程度簡化為僅關閉/輕度 - 現在可以透過 JSON 匯出共享每個遊戲的設定 新增權限(Android) - 新增了對具有作用域儲存支援的外部儲存目錄的讀取/寫入/管理權限 https://git.citron-emu.org/Citron/Emulator/releases -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.255.122.211 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Emulator/M.1769949309.A.ABE.html ※ 編輯: playlive (111.255.122.211 臺灣), 02/01/2026 20:43:56