OpenXLive beta版發布已經有一個半月的時間了,得到了開發人員和玩家的好 評,目前已經有五款OpenXLive遊戲進入Windows Phone Marketplace,其中的 7bomb和Super Hoops都取得了非常驕人的成績。
當OpenXLive在XNA遊戲中大展身手的同時,我們也聽到了一些來自 Silverlight程式員的抱怨。在Windows Phone 7中雖然提供了XNA的遊戲開發平 台,但相當一部分的遊戲是採用Silverlight開發的。畢竟對於顯示效能不高的 遊戲來說,Silverlight是一個頗具魅力的快速開發工具。
幸好,我們在最初的架構設計上考慮了未來支援Silverlight的可能性,所以 將商務邏輯部分封裝到了OpenXLive.dll中,而將XNA上的XLiveForm表單和控制項 庫封裝到了OpenXLive.Forms.dll中。我們只需要在Silverlight中調用 OpenXLive中的功能即可。
在提供了一個OpenXLive on Silverlight的簡單範例程式碼後,我們發現對 Silverlight遊戲的支援仍舊不夠。首先,我們只提供了Leaderboard部分的樣本 代碼,在缺乏文檔的情況下,開發其他功能的UI是很困難的;其次,開發人員並不 希望自己動手寫一個Silverlight UI,而只是想簡單地在遊戲中加入OpenXLive 的支援,就像在XNA遊戲中那樣。
所以,我們重新定義了OpenXLive Silverlight的功能,實現了OpenXLive中 的所有功能,並將其封裝到了OpenXLive.Silverlight.dll中。在開發過程中, 我們儘力保持XNA和Silverlight架構的一致性,如果您使用過OpenXLive XNA版 本,在Silverlight版本中,您會有一種似曾相識的感覺,這正是我們所希望的 。
需要提示的一點是,OpenXLive的Silverlight和XNA版本共同使用了一個邏輯 程式集——OpenXLive.dll,所以他們在功能上是一致的。
未來,我們會將OpenXLive Silverlight加入到OpenXLive SDK中,並提供 Visual Studio模板。在某一個時間點上,我們會考慮對OpenXLive Silverlight 進行開源,讓開發人員能夠方便的將OpenXLive Silverlight修改成自己想要的樣 子。
OpenXLive簡介
微軟為Windows Phone 7上的XNA和Silverlight遊戲開發提供了非常好的開發 工具和應用程式架構,使得開發人員可以更加容易地開發出生動有趣的遊戲來。但 是隨著開發的深入,我們發現,雖然我們開發的遊戲品質可以和大公司的產品相 媲美,但比起大公司遊戲的使用者體驗還是相差很多。因為,我們必須將很多時間 用於周邊功能的開發,比如:啟動介面(Splash Screen), 積分榜(Leaderboard) 和遊戲成就(Achievement)等,更不要奢談為遊戲加入SNS功能,比如:查看線上 使用者(Online Player)、雲端儲存(Cloud Storage)等線上功能了。這些周邊功能的 開發時間,可能要超過遊戲本身的開發時間,那我們該怎麼辦呢?
OpenXLive正在想辦法協助個人開發人員和小團隊開發人員,使他們在最短的時間 內擁有以上這些只有大公司才可能擁有的遊戲功能。
OpenXLive是一種為Windows Phone 7智能手機遊戲開發人員提供的雲端線上服 務。支援開發人員為單機遊戲增加雲端和SNS功能,協助開發人員以最小的工作量將 雲端服務整合到自己的遊戲中。這些雲端服務包括:積分榜、遊戲成就、線上對 戰、Social Network和雲端儲存等功能。與Open XLive類似的服務,還有iOS上 的OpenFeint。
OpenXLive目前支援Windows Phone的XNA與Silverlight開發架構,不需要開 發者編寫UI代碼,即可在遊戲中方便地調用OpenXLive的介面及功能。由於XNA和 Silverlight是兩個不同的應用程式架構,所以,OpenXLive提供了不同的引用方 式來支援XNA和Silverlight遊戲。
本文討論的是如何將OpenXLive加入到Silverlight遊戲中,如果您的遊戲采 用XNA編寫,請查看《OpenXLive開發入門》,連結如下:
http://wiki.openxlive.net/Getting-Started-with-Open-XLive.ashx