最近在将一款现有的游戏向Windows Phone平台移植,暂时完成了一个小阶段,做一个总结。

开发环境:

  • Windows 8.1 系统及以上,愿意的话,用Windows 10 尝鲜也可以。
  • 微软账号,用于在建立Windows Phone项目时获取开发证书,免费。http://signup.live.com/
  • 微软开发账号,用于上传应用到商店, http://dev.windowsphone.com/ ,19刀永久管用。
  • Visual Studio 2013 ,如果用旗舰版,则自带 Windows Phone 8.1 的 SDK,尽量用最新的update吧。
  • Windows Phone SDK,如果用的是Express的VS2013,则需要单独下载Windows Phone 8.1 的 SDK, https://dev.windowsphone.com/en-us/downloadsdk
  • Unity ,http://unity3d.com/unity/download,尽量下载最新的稳定版本吧。
  • Windows Phone 8.1 设备,游戏相对来说更吃内存,尽量买个1G以上内存的机器,比如636,638。

基础理论:

  • Mono是一个开源的跨平台框架,其目标是实现一个开源的.NET框架,称之为Mono Runtime,开发语言主要但不只是C#。
  • Unity的底层是用C++实现的,然而嵌入了Mono Runtime做为其脚本运行引擎。
  • Unity嵌入的Mono是其定制过的,也就是说,它与官方的Mono并不是完全一致的,其当前的Mono版本是2.6,并且不开源。
  • Unity在Windows Phone 8.1上的运行时主要是Windows Runtime,和MS自己的.NET子集,以及可以兼容于这部分.NET子集的Mono。
  • 官方Mono,Unity的Mono,MS的.NET子集。这三者之间有交集,然而移植过程中主要处理的是他们的非交集部分。
  • 不能直接让Unity的Mono不加修改就跑在Windows Phone上,而可以跑在IOS/Android上,可以说是一个耻辱。

移植过程:

  1. 用Unity打开现有游戏工程,然后File -> Building&Settings -> Switch Platform,选择Windows Store下的 Phone 8.1。这个步骤后Unity会将条件编译符号改成Unity_WP_8_1
  2. 设置 Player Settings,主要是设置Manifest文件,值得注意的是编译选项。
  3. 选中 Unity C# Projects 和 Development Build,点击Build,新建一个文件夹(比如WP81),以生成VS2013可以打开的项目。
  4. 如果生成成功,那么用VS2013打开新生成的sln,继续用VS2013 Build。
  5. 如果编译成功,那么可以将生成的游戏部署到手机上进行测试。
  6. 如果能够和其他平台一样正常运行,那么就可以将游戏上传到Windows商店了。
当然了,除了第1步会很顺利(根据游戏中Assets的数量,可能要花很长时间),而取决于不同游戏,第2~6步都会有很多麻烦和困惑。本节暂不深入。
 
接下来会继续总结和深入过程中的具体细节。
 
新建了一个专门讨论Unity->WP移植的Q群:307409538,暂时不接纳围观新手,入群者必须有实际的游戏项目。

把现有Unity3d游戏向Windows Phone 8.1移植(基础)的更多相关文章

  1. 转载:Cocos2D-x 游戏接入 Windows 设备所需做的六件事

    原文地址:http://msopentech.com/zh-hans/blog/2014/05/09/cocos2d-x-%E6%B8%B8%E6%88%8F%E6%8E%A5%E5%85%A5-wi ...

  2. unity3d游戏无法部署到windows phone8手机上的解决方法

    今天搞了个unity3d游戏,准备部署到自己的lumia 920上,数据线连接正常,操作正常,但是“build”以后,始终无法部署到手机上,也没有在选择的目录下生产任何相关文件.(你的系统必须是win ...

  3. Unity3D游戏开发初探—1.跨平台的游戏引擎让.NET程序员新生

    一.Unity3D平台简介 Unity是由Unity Technologies开发的一个让轻松创建诸如三维视频游戏.建筑可视化.实时三维动画等类型互动内容的多平台的综合型游戏开发工具,是一个全面整合的 ...

  4. 从一点儿不会开始——Unity3D游戏开发学习(一)

    一些废话 我是一个windows phone.windows 8的忠实粉丝,也是一个开发者,开发数个windows phone应用和两个windows 8应用.对开发游戏一直抱有强烈兴趣和愿望,但奈何 ...

  5. [整理]Unity3D游戏开发之Lua

    原文1:[Unity3D]Unity3D游戏开发之Lua与游戏的不解之缘(上) 各位朋友,大家好,我是秦元培,欢迎大家关注我的博客,我地博客地址是blog.csdn.net/qinyuanpei.如果 ...

  6. Unity3D游戏-愤怒的小鸟游戏源码和教程(二)

    Unity愤怒的小鸟游戏教程(二) 本文提供全流程,中文翻译.Chinar坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 -- 高分辨率用户请根据需求调整网页缩放比例) AngryEva游戏效果 ...

  7. Unity3D游戏-愤怒的小鸟游戏源码和教程(一)

    Unity愤怒的小鸟游戏教程 本文提供全流程,中文翻译.Chinar坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 -- 高分辨率用户请根据需求调整网页缩放比例) AngryEva游戏效果: 1 ...

  8. Unity3D游戏开发之SQLite让数据库开发更简单

    各位朋友大家好.欢迎大家关注我的博客,我是秦元培,我是博客地址是http://blog.csdn.net/qinyuanpei.在经历了一段时间的忙碌后,博主最终有时间来研究新的东西啦,今天博客向和大 ...

  9. [Unity3D]Unity3D游戏开发之Lua与游戏的不解之缘终结篇:UniLua热更新全然解读

    ---------------------------------------------------------------------------------------------------- ...

随机推荐

  1. 【JavaScript 封装库】BETA 5.0 测试版发布!

    JavaScript 前端框架(封装库) BETA 5.0 已于10月10日正式发布,今天开始提供 BETA 5.0 的 API 参考文献.相较于之前 5 个版本的发布都是草草的提供源代码,并没有很多 ...

  2. Uva 12657 双向链表

    题目链接:https://uva.onlinejudge.org/external/126/12657.pdf 题意: 给你一个从1~n的数,然后给你操作方案 • 1 X Y : move box X ...

  3. 【转】jpg png区别和使用

    为什么想整理这方面的类容,我觉得就像油画家要了解他的颜料和画布.雕塑家要了解他的石材一样,作为网页设计师也应该对图片格式的特性有一定了解,这样才能更好的表达你的创意和想法. 除此之外,我们在平时工作中 ...

  4. Java nio socket与as3 socket(粘包解码)连接的应用实例

    对Java nio socket与as3 socket连接的简单应用 <ignore_js_op>Java nio socket与as3 socket连接的应用实例.rar (9.61 K ...

  5. matlab中padarray函数在numpy、python中的实现

    a = np.arange(6) a = a.reshape((2, 3)) print np.lib.pad(a, 1, 'symmetric') 运行结果: [[ ] [ ] [ ] [ ]]

  6. maven没有servlet(创建servlet后报错)

    maven不能创建servlet 解决方案 方案一 在项目的iml进行指定根目录 <sourceRoots> <root url="file://$MODULE_DIR$/ ...

  7. 批量删除xml文件中的<?xml version="1.0" ?>

    #!/bin/shcd 'home/usrname/'ls cd '/home/usrname/VOC2007/Annotations/' for file in `ls /home/usrname/ ...

  8. image retrieval数据集

    1. Oxford,vgg组,主要是building方面的数据.http://www.robots.ox.ac.uk/~vgg/data/oxbuildings/index.html 2. Calte ...

  9. 6.安装使用vue-quill-editor

    前言: 在vue项目中,因为涉及到使用文本编辑器, 恰恰vue-quill-editor就是一个简单实用的富文本编辑器. 参考文档:vue中使用vue-quill-editor富文本编辑器,自定义to ...

  10. iOS第三方支付(支付宝)

    使用支付宝进行一个完整的支付功能,大致有以下步骤: 与支付宝签约,获得商户ID(partner)和账号ID(seller) 下载相应的公钥私钥文件(加密签名用) 下载支付宝SDK 生成订单信息 调用支 ...