Silverlight 5集成了XNA,Windows Phone 7.1同样也拥有SL.XNA模式,基于Mono的开源产品Moonlight更能实现多平台部署;可见,Silverlight离跨平台的终极目标已越来越近。

为了向伟大的梦想迈进,我们不妨先从Silverlight与Windows Phone 2D的双向迁移开始深入探索。

本系列前5节我曾为大家讲解了一款基于Silverlight浏览器插件的SLG游戏Demo,该游戏作为向Windows Phone平台无缝迁移案例再好不过,只需简单几个步骤而已:

1、按照第六节的方法创建一个SL.XNA模式的Windows Phone游戏项目。

2、打开第五节的那款SLG Demo游戏源码,将其中的所有类和代码拷贝到第1步的项目中。

3、运行游戏项目(WP版本源码下载)。

无语了…这不是开玩笑吧?有这么简单?

没错,若将两个项目的代码整合成一个,就成了真正意义上的完美跨平台了。为了进一步证明该观点的正确性,我通过以上方法如法炮制了另外一款教程中的Silverlight ARPG游戏Demo源码,整个过程不过几分钟而已(WP版本源码下载):

苍天呀!大地呀!坑爹呀?

先莫感叹,这样的跨平台移植效率很夸张,对于性能要求不高的2D游戏来说性价比非常不错,尤其是优化过Storyboard和DispatcherTimer的Silverlight 2D游戏,其实际效果尤其出色;

不过,凡事还得两面看。

若游戏运算量大,同屏呈现的图形数量多、尺寸大,甚至大量3D模型,那么对于配置依旧还不算太高的Windows Phone手机来说,该方案绝对不可取。于是我们便得从Silverlight 5和Windows Phone中的SL.XNA模式着手进一步探寻完美解决之道。

是动真格的时候了,从下一节开始,我将肩负起构建跨平台3D游戏之重任,更加深入的为大家讲解如何搭建基于Silverlight与Windows Phone之间的高性能3D游戏框架,Silverlight 3D之门明天即将全面开启~敬请关注。

推荐参考:Nowpaper和Williams关于Windows Phone的游戏开发博客。

转载于:https://www.cnblogs.com/alamiye010/archive/2012/05/02/2478709.html

Silverlight.XNA(C#)跨平台3D游戏研发手记:(八)向Windows Phone移植之2D跨平台迁移相关推荐

  1. Silverlight.XNA(C#)跨平台3D游戏研发手记:(十)3D 场景与控制设计①

    模型和骨骼动画仅仅是开启3D游戏的敲门砖,置入基于摄像机的场景设计方能呈现最完美的3D游戏.本节,我们依旧从简单着手,一步步创建基于模型的3D游戏场景. <XNA4.0学习指南(中文)>是 ...

  2. Silverlight.XNA(C#)跨平台3D游戏研发手记:(七)向Windows Phone移植之双向交互

    继完成游戏主体框架搭建后,接下来我将通过SL.XNA模式中Silverlight控件与XNA对象之间双向交互操作的例子,向大家进一步讲解框架的拓展使用及简单的承载演示.在此之前大家需要理解Window ...

  3. Silverlight.XNA(C#)跨平台3D游戏研发手记:(十一)3D SLG(策略战棋游戏)设计案例

    某天,当你一不小心发现已经够随心所欲的驾驭3D摄像机之时,任何类型的3D游戏都将成为囊中玩物,过往如烟. 回忆逝去的童年让我极度惦记的SLG策略战棋游戏,或许对于大多数玩家来说,它费时费力不被讨好:然 ...

  4. Silverlight.XNA(C#)跨平台3D游戏研发手记:(五)SLG动感增效之《幻影粒子》

    随着电子技术发展与普及,人们使用电脑时间越来越长,由于人类自身身体比如眩晕症.眼球衰老等客观因素存在,未来玩家会更加倾向于低视疲劳度/低神经刺激的绿色健康休闲2D游戏而非3D.<希魔复活> ...

  5. Silverlight.XNA(C#)跨平台3D游戏研发手记:(一)差集运算在SLG战斗范围设定中的应用...

    战棋游戏通常指以回合制为基础,角色在地图上按格移动作战的游戏,好比下棋一样,该类型游戏更侧重于策略,节奏较缓慢,注重精美.绚丽的画面,考验的是玩家运筹全局的智慧.耳熟能详的比如<梦幻模拟战> ...

  6. Silverlight.XNA(C#)跨平台3D游戏研发手记:(一)差集运算在SLG战斗范围设定中的应用

    战棋游戏通常指以回合制为基础,角色在地图上按格移动作战的游戏,好比下棋一样,该类型游戏更侧重于策略,节奏较缓慢,注重精美.绚丽的画面,考验的是玩家运筹全局的智慧.耳熟能详的比如<梦幻模拟战> ...

  7. Unity3D ——强大的跨平台3D游戏开发工具教程

    http://unity3d.9ria.com/?p=22 众所周知,Unity3D是一个能够实现轻松创作的多平台的游戏开发工具,是一个全面整合的专业游戏引擎.在现有的版本中,其强大的游戏制作功能已经 ...

  8. Silverlight游戏研发手记:(三)蜂窝拓扑结构在SLG地图布局中的应用

    上一节给大家讲解了如何在四边形单元格基础上构建SLG地图场景,并实现移动.战斗的基础框架:热爱SLG的朋友一定非常清楚,绝大多数的SLG游戏地形单元格都可归为四类:四边四向.四边八向和四边六向.六边六 ...

  9. Silverlight游戏研发手记:(五)SLG动感增效之《幻影粒子》

    随着电子技术发展与普及,人们使用电脑时间越来越长,由于人类自身身体比如眩晕症.眼球衰老等客观因素存在,未来玩家会更加倾向于低视疲劳度/低神经刺激的绿色健康休闲2D游戏而非3D.<希魔复活> ...

最新文章

  1. MySQL读写分离一主多从实现
  2. [BZOJ1260][CQOI2007]涂色paint 区间dp
  3. Matlab计算机视觉/图像处理工具箱(待续)
  4. 赠书 | IoT 的真正目标是什么
  5. 华为云GaussDB(for MySQL)2.0全新升级,三大技术大揭秘
  6. php框架 mysql拼接操作_PHP对数据库MySQL的连接操作
  7. Web服务器程序解释请求消息并作出响应
  8. 【bpmn.js 使用总结】九、 Viewer 添加缩放、改色、拖动
  9. 小猪短租网多个价格的查找,requests库,o( ̄ヘ ̄o#)bs4库的简单使用
  10. 分享到豆瓣android代码,开源android豆瓣电影阅读器
  11. 12.15 村长项目借口
  12. 前端如何判断用户是否打开了控制台
  13. 关于csgo的观看录像fps低_《CSGO》FPS低解决办法
  14. FileUploadException: the request was rejected because no multipart boundary was found
  15. 500 - 内部服务器错误. 您要查找的资源有问题,无法显示.,HTTP 500 - 内部服务器错误 Internet Explorer【转】...
  16. 个体值0和31差多少攻击_口袋妖怪:攻略篇!个体值有多重要?6V宝可梦才是完美的精灵!...
  17. VMware虚拟机安装Ubuntu22.04并配置网络
  18. ubuntu环境下U盘的分区
  19. Google浏览器、firefox浏览器、IE浏览器每次访问自动最新网页
  20. 快被垃圾分类逼疯的上海人民,有望被区块链解救吗?

热门文章

  1. 女生可以学计算机应用吗,我是女生 学计算机应用技术还是软体技术
  2. python3程序运行中会跳过注释行_[python] 去除代码源文件中单行注释
  3. html盒子模型子元素怎么水平占满父元素_立下flag)每日10道前端面试题18 关于【盒模型】十问...
  4. 不同php文件,不同文件构建PHP程序的正确方式
  5. C语言学习笔记---fgets()函数和fputs()函数
  6. STM32F103单片机J-TAG引脚功能关闭方法
  7. Pytorch中nn.Conv2d的用法
  8. Python3 输入和输出
  9. Python风格总结:数据结构
  10. 【初体验】valgrind分析程序性能