2008年6月18日 星期三

PS3的in-game-XMB終於確認了

在經過了多次的期待與落空之後, 官方終於親口證實in-game-XMB將在2.40版本的韌體釋出, 對於這個一開始就應該有的功能, 從1.60開始傳說要加入, 還有謠言呼聲最高的2.00, 每一次新韌體的釋出都是一場空...直到前一陣子SCEE的總裁才說會在2.40中實現, 網路上也流傳一份展示傳說的2.40已經實現in-game-XMB的影片, 不過其他地區的SCE甚至是韌體開發者都沒有表示其真實性, 我也沒抱太大的期待...

終於SCEA最近也在官方的blog中說明2.40會有in-game-XMB, 這對於PS3的玩家來說, 真是個好消息... 另外, 因為Home的延期(也真是夠久了), 而導致Home的賣點之一"獎盃展示系統"跟著延期, 這次的更新也會加入2D版的獎盃系統(Home獎盃系統的簡易版), 似乎是因為獎盃系統的SDK今年初才發放, 為了讓廠商可以及早對應這些功能, 所以在2.40中加入...希望到時候Home上線, 2D版與3D版之間的轉換不要有問題才好...

不過之前in-game-XMB傳言沸沸揚揚時, 我有稍微想過SCE如果要實現這個功能, 可能的方法:

1.由於PS3 OS架構的關係, 在執行系統功能時, 必須由遊戲程式主動讓出一部分記憶體來放置系統功能才能執行(參見PS3 OS)...在這種架構下, SCE必須先大量減低系統OS所需求的記憶體, 包括主記憶體以及繪圖記憶體都要節省, 才能夠在不修改現有遊戲的情況下, 用節省出來的記憶體放置in-game-XMB所需顯示的圖形與程式...這看來是最可能的方式, 不過隨著OS功能的增加, 能節省出的記憶體相對也會愈少, 最後可能導致無法騰出in-game-XMB所需空間的問題...

2.在OS沒辦法節省記憶體的前提下, 很多人都會建議採用交換記憶體/虛擬記憶體的方式來實現in-game-XMB...在呼叫in-game-XMB時, OS會先把遊戲暫停(或許不用), 然後把一部分遊戲用的記憶體swap到硬碟, 在空出的記憶體中載入in-game-XMB的程式與圖形來執行, XMB執行完之後, 倒轉原先的程序, 將遊戲的記憶體載回後, 再繼續執行遊戲, 不過這個方法可能會牽涉到遊戲的寫法與相容性, 也就是說, 必須避免遊戲目前使用到的記憶體被換掉, 還得要紀錄I/O目前的狀態以防被OS覆寫, 最後調整OS的執行方式以適應遊戲...就如同某些Windows遊戲在玩家跳回桌面後, 再跳回遊戲時會無法繼續執行一樣, 如果舊有的OS不具備這些紀錄, 利用這個方法則必須分析每個遊戲的運作方式, 實現XMB會相當困難...

3.與第二點相反, 把腦筋動到OS本身, 將OS目前不用的記憶體swap到硬碟上, 藉此騰出記憶體來執行XMB的功能, 不過這也是可能有相容性問題的解決方法...

4.直接擺爛, 放棄舊有遊戲支援in-game-XMB, 依照Toro Station中的實作方法, 由遊戲廠商在遊戲裏支援, 如支援硬碟音樂播放或回覆訊息等...前提是必須將OS功能模組化, 讓遊戲廠商呼叫...不過這個方法可能廠商不愛用, 從程式庫釋出到現在也只有少數的遊戲有更新到支援硬碟音樂播放, 其他的功能更不用說了...依稀記得360發售前, 在某個關於360遊戲開發的文章裏, 也有提到要在遊戲內支援360的系統選單, 必須在遊戲程式的迴圈中定時呼叫某個函式, 這樣OS才能接手系統選單的處理, 並且是硬性規定所有遊戲都要遵守...如果PS3發售之初就能採用這個方法, 相信早已經解決in-game-XMB的問題, 不過依照PS3倉促發售的情況來看, 程式庫相關的東西都沒準備好, OS的設計人員可能也沒時間好好的進行架構規劃...

5.終極大法, 就是將目前的OS架構砍掉重練, 重新規劃OS, 將OS模組化並保留足夠的記憶體, 並將舊版功能透過相容殼層轉譯到新版OS的方式來相容, 雖然比較花時間但卻是務實的作法, 不過就像Vista與XP那樣, 一樣可能會有相容性的問題, 以目前PS3遊戲的數量來看, 願意解決的話, 應該不是問題...

雖然不知道最後SCE採用什麼方法來解決, 但我猜想SCE從2.00開始, 似乎已重寫OS採用新的架構了(只是外觀上仍舊一樣), 也許現在的OS可能進化到不需要遊戲程式讓出記憶體才能執行系統功能, 而模組化更可彈性運用OS的記憶體保留空間, 不過這一切只是猜想, 也許SCE仍舊使用老架構,
並透過上述可能的方法來解決也說不定...不過這都不重要, 最重要的是, SCE終於實現了這個功能, 這才是重點, 不知道能不能一邊打Game, 一邊用內建的瀏覽器看攻略呢??

不過...在這之前, SCE還是要我們再等待, 今天釋出的是2.36版, 主要是修正執行某些PS遊戲的問題, 我想應該是PSN上面即將發行的遊戲吧~~也罷, 反正都等了這麼久了, 只希望等待是值得的囉~~

沒有留言:

張貼留言