Ruffle
開發者 | Mike Welsh、kmeisthax、Dinnerbone、 Callum Thomson |
---|---|
源代码库 | |
编程语言 | Rust |
类型 | 多媒體 |
许可协议 | MIT許可證、Apache许可证 |
网站 | ruffle |
Ruffle是一個免費的開源Flash模擬器,用於播放Adobe Flash(SWF)動畫檔案。
2021年1月,Adobe Flash Player被棄用和停用後,一些網站採用了Ruffle,以允許用戶持續查看舊版Flash內容。
歷史
2016年,迈克·威尔士(Mike Welsh)開啟一个名为 Fluster 的项目。[1]后来改名为Ruffle。[2]
由於Adobe Flash Player 在2019年至2020年之间逐步關閉,一些网站宣布将啟用Ruffle。例如Newgrounds就宣布,所有的 Flash 嵌入代码将被替换成 Ruffle。[3]
特色
Ruffle 採用 Rust 程式語言編寫,具有桌面和 Web 用戶端軟體,可以用來執行 Flash 程式。網站可以使用 JavaScript 載入 Ruffle 來執行 Flash 應用程式,或者透過瀏覽器安裝 Ruffle 擴充套件來使用。
Web 用戶端將 Rust 程式碼編譯為 WebAssembly 來執行,運作於沙箱內,與存在各種記憶體安全問題而臭名昭著的 Flash Player 相比,這是一個顯著的改進。 Rust 語言本身可以防止困擾 Flash Player 的常見記憶體安全問題,像是緩衝區溢位。
桌面用戶端軟體使用圖形使用者介面來開啟 SWF 檔案,可在 Windows、macOS 和 Linux 上運作。
截至 2024 年 8 月,Ruffle 對舊版 Flash 內容已經達到了 95% 的語言功能和 78% 的 API 功能[4],這些內容使用 ActionScript 1.0 和 2.0 兩種版本。而對 ActionScript 3.0 的支援則達到了達到了 95% 的語言功能和 76% 的 API 功能。Bleeping Computer 在一篇文章中報告稱,他們在 2021 年 2 月嘗試的所有 Flash 遊戲「運行完美」。
參考資料
- ^ Initial commit · ruffle-rs/ruffle@b979ac2. GitHub. [2020-07-24]. (原始内容存档于2021-11-10) (英语).
- ^ Update README · ruffle-rs/ruffle@0d9d5fe. GitHub. [2020-07-24]. (原始内容存档于2021-11-10) (英语).
- ^ Flash Emulation & Brave BAT. Newgrounds.com. [2021-02-07]. (原始内容存档于2021-04-27) (英语).
- ^ Ruffle § Compatibility. Ruffle. [2024-08-19]. (原始内容存档于2021-01-26) (英语).