切換
舊版
前往
大廳
主題

【RMXP】macOS、Linux、Mobile 跨平台可行性

靈魂 | 2020-05-10 20:08:51 | 巴幣 12 | 人氣 747

上次於【RMXP】關於XPA與RGD  中介紹了
XP使用Ace核心(XPA)與RGD(directX)的方法,藉此提高效率、降低畫面撕裂與延遲
而這次的"跨平台可行性",與那篇有些微的關係,就當作是延續主題吧
順便補充 原XP、XPA、RGD、MKXP的優缺點



眾所皆知,RM系列除了MV外,其他的版本預設是不能跨平台的,在遊戲開發出來後,只能藉由其他軟體的輔助來達成多平台的"運行",而非原生支援該系統

像是要在macOS、Linux中運行遊戲的話,可以使用Wine軟體,
又或者直接運行虛擬機器 VirtualboxVMware,建立一個虛擬的Windows平來來運行,
而行動裝置平台的話,也有JoiPlay App插件

但這些做法都是藉由外部的軟體,輔助你運行該遊戲,而且前提是你得知道這些軟體的存在
(大多數的玩家,只要看到無法運行,就會直接放棄遊玩了吧……
這也是為什麼《魔女之家》重製的其中一個原因了



而RMXP、RMVX、RMVA若要達成原生支援的話,可以使用MKXP
MKXP允許上面這個三個版本,能夠在不改動遊戲內容的情況下,進行跨平台的運行
"不需要額外的軟體輔助,點擊遊戲即可運行"
"MKXP並不是隨插即用的,他是幫助你完成跨平台目的的建構方案"
這也意味著,開發者必須瞭解並精通 Ruby / RGSS
MKXP-Gitbook ←說明與解釋


如果對《To the Moon》有些瞭解的話,會知道它有出過多平台的版本
而macOS與Linux的版本正是由MKXP達成的
雖然《To the Moon》在行動裝置平台是使用Unity,且重製後發布的
但MKXP依特性來說,應該是能達成行動裝置運行
在GitHub上也有相關的程式文件,雖然年代有些久遠(5年),名為android-mkxp



MKXP也有另一分支:MKXP-z
XP易於開發且容易編輯,所以在早期有許多人用它來製作Pokemon
MKXP-z原先的目標是完成多平台的Pokemon Essentials遊戲運行
而該遊戲有使用到Windows API,而MKXP-z完成了跨平台的Windows API使用
這表示可以將封裝好的dll檔案,跨平台的使用了



那MKXP與其他版本的差異在哪裡呢?
MKXP可以支援到Ruby2.7,且使用OpenGL作為渲染,無疑在效能上可能會是其他版本的好幾倍不只。然而在下並沒有對MKXP實作,所以還不能下定論,就它的說明來看,可能會比XPA硬轉的RGD還來的強許多(畢竟內部程式並沒有針對XP做優化)

這裡做個表格方便瞭解各版本差異

各版本優缺點:

目前還不知道使用了XPA後在MKXP的情況如何
XPA的原帖是有人在留言討論的




未來若有需要跨平台的情況,也許會考慮使用MKXP吧
送禮物贊助創作者 !
0
留言

創作回應

好文必推 我照著大大文中介紹的MKXP-z在我的Macbook上把RMVX的遊戲打包輸出之後
沒想到比之前我用wine時速度還要順暢許多 大部分腳本的兼容也都能執行
除了像是MOG的XAS之ARPG系統這類高級腳本會打開時報錯之外[e8]
總之 謝謝大大寫了詳細的介紹及研究筆記
2020-05-23 12:25:15
靈魂
如果是有用到gdi32、user32、kernel32都有很高機率會彈出跟報錯
雖然Linux、macOS上是有 但這些dll主要是針對Windows
很高興能幫助到你

雖然我個人在Win10上用MSYS2編譯一直出現問題[e3]
2020-05-23 12:38:58
oVo巴爾坦星人
mkxp 沒找到你有真正比較具體的介紹... 然後好像沒有WINDOWS的版本或者說WINDOWS下好像不怎麼大眾化像RM那樣容易上手
2021-01-29 14:41:16
靈魂
請參考另外一篇:https://home.gamer.com.tw/creationDetail.php?sn=4835952
2021-01-29 14:43:57
靈魂
此外mkxp-z的專案已經由github轉至gitlab了,到時候會將連結更新
2021-01-29 14:45:20

更多創作