杨亨冉:用Silverlight实现跨平台游戏开发

原创
移动开发 企业动态 游戏开发
相对于iOS和Android的开发,Windows Phone开发还是有它独特的优势的。比如,它很好的跟微软开发工具结合起来,以及与微软成体系的产品都能很好的衔接。你可以很容易的把你用Silverlight开发的网页应用移植到Windows Phone手机上。

  相对于iOS和Android的开发,Windows Phone开发还是有它独特的优势的。比如,它很好的跟微软开发工具结合起来,以及与微软成体系的产品都能很好的衔接。

  如果你曾是一名使用微软Silverlight技术的开发人员,那么有个好消息是,你可以很容易的把你用Silverlight开发的网页应用移植到Windows Phone手机上。

  中游在线就正在做这样的事。作为微软的MVP,中游在线的总经理杨亨冉对Silverlight技术非常熟悉,中游在线公司所有的游戏都是利用Silverlight来开发的,包括大型的MMORPG和各种休闲类的小游戏。同时,他们还积***力于Silverlight技术的推广,包括推出了一些开发工具以及定期举办线下讨论沙龙等。

 

[[49694]]

  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技术的网络游戏开发》,点击这里报名!

责任编辑:佚名 来源: 51CTO原创
相关推荐

2011-10-12 20:16:00

Silverlight

2009-12-29 17:34:52

Silverlight

2009-11-17 15:19:48

Samba跨平台打印

2011-02-21 17:15:14

SilverlightNEY

2011-12-12 13:58:11

TinyCoiOSAndroid

2012-05-03 14:29:53

HTML5

2023-08-04 16:25:55

微软开发工具

2011-04-08 09:13:13

游戏跨平台iOS

2012-12-25 10:04:45

诺基亚NEIC团队辅导设计

2013-09-10 10:44:39

移动开发工具游戏引擎

2022-01-04 09:36:24

Samba文件共享工具Linux

2011-11-09 15:41:10

Windows Pho

2010-08-09 10:39:42

SilverlightMenlo

2011-02-24 11:15:45

应用商店

2012-05-08 15:57:30

李剑英Windows Pho手机游戏

2012-03-20 21:13:27

Android

2009-06-11 09:19:38

netbeans实例J2ME游戏

2010-10-09 15:01:27

PhoneGapiPhoneAndroid

2012-03-16 13:43:29

2012-03-12 22:00:04

跨平台
点赞
收藏

51CTO技术栈公众号