楊亨冉:用Silverlight實現跨平臺游戲開發
原創相對于iOS和Android的開發,Windows Phone開發還是有它獨特的優勢的。比如,它很好的跟微軟開發工具結合起來,以及與微軟成體系的產品都能很好的銜接。
如果你曾是一名使用微軟Silverlight技術的開發人員,那么有個好消息是,你可以很容易的把你用Silverlight開發的網頁應用移植到Windows Phone手機上。
中游在線就正在做這樣的事。作為微軟的MVP,中游在線的總經理楊亨冉對Silverlight技術非常熟悉,中游在線公司所有的游戲都是利用Silverlight來開發的,包括大型的MMORPG和各種休閑類的小游戲。同時,他們還積***力于Silverlight技術的推廣,包括推出了一些開發工具以及定期舉辦線下討論沙龍等。
Silverlight跨網頁與移動平臺的移植
在回答51CTO記者“將Silverlight開發的網頁游戲移植到Windows Phone手機上有多大難度”的問題時,楊亨冉很輕松的說“幾乎沒有什么難度”。他表示,移植中更多的精力會放在對UI適配的解決上,畢竟大屏幕的網頁游戲與小屏的移動終端在視覺體驗上會很不同。此外,還有一些代碼上的細節問題,比如,網頁版游戲你需要用工程模板來實現類似前進后退這樣的導航功能,但是在Windows Phone 7 上,由于系統本身就帶有翻頁的功能,所以移植的時候要把原代碼中跳轉的部分去掉。
“代碼上的話,除非你用了很多Silverlight網頁上一些新的特性,或者Windows Phone 7上很多特性,改起來就麻煩一點”,楊亨冉說。
在去年的TechEd上,楊亨冉曾現場用Silverlight寫了一個簡單的游戲,然后把它移植到Windows Phone 7上,整個過程不超過15分鐘。而對像《窩窩世界》這樣大型MMORPG游戲的底層移植,只用了不到兩個星期。
當然,這其中有個細節是,《窩窩世界》的移植是在Windows Phone Mango版上進行的。因為最初的Windows Phone 7版本不支持Socket,在7.1即Mango版新增了這一特性。
不久之前,有報道稱,微軟將在Windows 8 上推出基于Silverlight的應用商店,這樣一來,開發者使用Silverlight開發的應用就同樣可以發布在Windows 8系統。“Windows 8針對平板開發的系統,當然你也可以把它用在PC上”,楊亨冉評論道,他認為將Market palce放回Windows 8上將有可能改變中國軟件銷售行業的格局,因為這樣以來一些傳統的靠推薦windows軟件生存的網站可能就沒什么意義了,此外,微軟這一舉動將可能有效杜絕盜版問題的存在。
#p#
對Silverlight初學者的忠告
既然Silverlight有這樣多的好處,而且微軟顯然將其放到了一個比較重要的位置,那么對于一個開發者來說,如果想涉足Silverlight開發,需要哪些儲備呢?
楊亨冉說,如果是一個從來沒有接觸過Visual Studio相關開發的人員,他只需要安裝Visual Studio,Express版本(學習版)和Silverlight Tools for Visual Studio 基本就可以滿足開發需求這樣coding的環境基本就完成了。
設計的部分,用微軟的Expression Blend,Design,Web來完成,他們的功能分別對應我們比較熟悉的Flash,Photoshop和Dreamweaver。
這套工具的特點就是有效提升了開發速度。楊亨冉舉了一個例子:有一次,運營商要在《窩窩世界》中加一個擺攤系統,開發團隊用了不到一天就完成了這個功能,而如果用傳統的方法,通過PS設計、前端制作、代碼配合一整套流程下來,通常最短需要四天左右才能完成。
不過,對于一些沒有接觸過微軟產品的開發者來說,開始可能會遇到一些問題。這主要是由于不同開發語言的思維方式不同。比如,非.NET體系的開發者可能對事件體系不太適應。
小的方面,楊亨冉舉例說,初學開發人員可能經常會遇到一個問題是“跨線程訪問無效”。這是因為Silverlight事件調用的時候會調一個UI線程,如果另外一個事件或線程操作了UI線程中的一部分,就會出現這種情況。解決方法也很簡單,你需要做一個線程隊列梳理清楚,然后在合適的時機調用它。
介紹游戲運營經驗
中國的游戲開發者經常遇到的問題是,在技術和創意方面做的還不錯,但是運營推廣比較薄弱。作為在游戲領域有著多年開發、策劃、運營經驗的專家,楊亨冉有什么樣的建議呢?
楊亨冉認為,一個好的游戲需要具備幾個要素:***用戶感官上、過程中是一種享受。也就是游戲界面要符合用戶體驗,故事邏輯要有劇情的深度,要有一種文化在里面。其次,收費點要合理,大家都很喜歡的,游戲的壽命會很長。最重要的也是最基礎的,游戲要穩定,bug越多用戶流失的越嚴重。
此外,不同平臺的游戲在設置考慮上也要有所區別。移動設備上的游戲主要占用碎片時間,因此目前一些休閑類的小游戲比較受歡迎,大型游戲如果要在移動端發展,需要設置一些特別的點,吸引用戶隨時回頭。楊亨冉認為將來移動端和PC端肯定是融合的趨勢,同一個游戲,用戶可能在不同的場景用不同的終端完成不同的事情。
針對目前國內游戲界“重技術輕策劃”的現象,楊亨冉認為,重技術是因為技術普及的太慢,像Silverlight推廣就很難,技術形成需求瓶頸后,大家于是都追求技術。楊亨冉希望這一現狀能夠在不久的將來得到改觀,畢竟“技術目的是為產品服務,技術的盤子有多大,產品就能做多大”。
談到HTML5和Silverlight誰更有前景的問題,楊亨冉表示“HTML5是現在的趨勢,但不是現在的優勢”。優勢可以變成收益,但趨勢不能。他說,廠商瞄準HTML5是因為它是將來互聯網很重要的領域,誰站穩了誰就有可能成為互聯網新霸主,但是現在HTML5還是不是一個完善的標準,以國內市場來說,IE6仍然占了半壁江山,要等到HTML5普及的那一天,想必還有很長的路要走。楊亨冉預測“三年之內你很難在HTML5這個技術上得到很實惠的收益。
12月17日《Phone Club第八期-快樂技術沙龍“for Windows Phone”》上楊亨冉老師將現場為大家講解《基于Silverlight技術的網絡游戲開發》,點擊這里報名!