Silverlight.XNA(C#)跨平台3D游戏研发手记:(八)向Windows Phone移植之2D跨平台迁移
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跨平台迁移相关推荐
- Silverlight.XNA(C#)跨平台3D游戏研发手记:(十)3D 场景与控制设计①
模型和骨骼动画仅仅是开启3D游戏的敲门砖,置入基于摄像机的场景设计方能呈现最完美的3D游戏.本节,我们依旧从简单着手,一步步创建基于模型的3D游戏场景. <XNA4.0学习指南(中文)>是 ...
- Silverlight.XNA(C#)跨平台3D游戏研发手记:(七)向Windows Phone移植之双向交互
继完成游戏主体框架搭建后,接下来我将通过SL.XNA模式中Silverlight控件与XNA对象之间双向交互操作的例子,向大家进一步讲解框架的拓展使用及简单的承载演示.在此之前大家需要理解Window ...
- Silverlight.XNA(C#)跨平台3D游戏研发手记:(十一)3D SLG(策略战棋游戏)设计案例
某天,当你一不小心发现已经够随心所欲的驾驭3D摄像机之时,任何类型的3D游戏都将成为囊中玩物,过往如烟. 回忆逝去的童年让我极度惦记的SLG策略战棋游戏,或许对于大多数玩家来说,它费时费力不被讨好:然 ...
- Silverlight.XNA(C#)跨平台3D游戏研发手记:(五)SLG动感增效之《幻影粒子》
随着电子技术发展与普及,人们使用电脑时间越来越长,由于人类自身身体比如眩晕症.眼球衰老等客观因素存在,未来玩家会更加倾向于低视疲劳度/低神经刺激的绿色健康休闲2D游戏而非3D.<希魔复活> ...
- Silverlight.XNA(C#)跨平台3D游戏研发手记:(一)差集运算在SLG战斗范围设定中的应用...
战棋游戏通常指以回合制为基础,角色在地图上按格移动作战的游戏,好比下棋一样,该类型游戏更侧重于策略,节奏较缓慢,注重精美.绚丽的画面,考验的是玩家运筹全局的智慧.耳熟能详的比如<梦幻模拟战> ...
- Silverlight.XNA(C#)跨平台3D游戏研发手记:(一)差集运算在SLG战斗范围设定中的应用
战棋游戏通常指以回合制为基础,角色在地图上按格移动作战的游戏,好比下棋一样,该类型游戏更侧重于策略,节奏较缓慢,注重精美.绚丽的画面,考验的是玩家运筹全局的智慧.耳熟能详的比如<梦幻模拟战> ...
- Unity3D ——强大的跨平台3D游戏开发工具教程
http://unity3d.9ria.com/?p=22 众所周知,Unity3D是一个能够实现轻松创作的多平台的游戏开发工具,是一个全面整合的专业游戏引擎.在现有的版本中,其强大的游戏制作功能已经 ...
- Silverlight游戏研发手记:(三)蜂窝拓扑结构在SLG地图布局中的应用
上一节给大家讲解了如何在四边形单元格基础上构建SLG地图场景,并实现移动.战斗的基础框架:热爱SLG的朋友一定非常清楚,绝大多数的SLG游戏地形单元格都可归为四类:四边四向.四边八向和四边六向.六边六 ...
- Silverlight游戏研发手记:(五)SLG动感增效之《幻影粒子》
随着电子技术发展与普及,人们使用电脑时间越来越长,由于人类自身身体比如眩晕症.眼球衰老等客观因素存在,未来玩家会更加倾向于低视疲劳度/低神经刺激的绿色健康休闲2D游戏而非3D.<希魔复活> ...
最新文章
- MySQL读写分离一主多从实现
- [BZOJ1260][CQOI2007]涂色paint 区间dp
- Matlab计算机视觉/图像处理工具箱(待续)
- 赠书 | IoT 的真正目标是什么
- 华为云GaussDB(for MySQL)2.0全新升级,三大技术大揭秘
- php框架 mysql拼接操作_PHP对数据库MySQL的连接操作
- Web服务器程序解释请求消息并作出响应
- 【bpmn.js 使用总结】九、 Viewer 添加缩放、改色、拖动
- 小猪短租网多个价格的查找,requests库,o( ̄ヘ ̄o#)bs4库的简单使用
- 分享到豆瓣android代码,开源android豆瓣电影阅读器
- 12.15 村长项目借口
- 前端如何判断用户是否打开了控制台
- 关于csgo的观看录像fps低_《CSGO》FPS低解决办法
- FileUploadException: the request was rejected because no multipart boundary was found
- 500 - 内部服务器错误. 您要查找的资源有问题,无法显示.,HTTP 500 - 内部服务器错误 Internet Explorer【转】...
- 个体值0和31差多少攻击_口袋妖怪:攻略篇!个体值有多重要?6V宝可梦才是完美的精灵!...
- VMware虚拟机安装Ubuntu22.04并配置网络
- ubuntu环境下U盘的分区
- Google浏览器、firefox浏览器、IE浏览器每次访问自动最新网页
- 快被垃圾分类逼疯的上海人民,有望被区块链解救吗?
热门文章
- 女生可以学计算机应用吗,我是女生 学计算机应用技术还是软体技术
- python3程序运行中会跳过注释行_[python] 去除代码源文件中单行注释
- html盒子模型子元素怎么水平占满父元素_立下flag)每日10道前端面试题18 关于【盒模型】十问...
- 不同php文件,不同文件构建PHP程序的正确方式
- C语言学习笔记---fgets()函数和fputs()函数
- STM32F103单片机J-TAG引脚功能关闭方法
- Pytorch中nn.Conv2d的用法
- Python3 输入和输出
- Python风格总结:数据结构
- 【初体验】valgrind分析程序性能