把现有Unity3d游戏向Windows Phone 8.1移植(基础)
最近在将一款现有的游戏向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上,可以说是一个耻辱。
移植过程:
- 用Unity打开现有游戏工程,然后File -> Building&Settings -> Switch Platform,选择Windows Store下的 Phone 8.1。这个步骤后Unity会将条件编译符号改成Unity_WP_8_1
- 设置 Player Settings,主要是设置Manifest文件,值得注意的是编译选项。
- 选中 Unity C# Projects 和 Development Build,点击Build,新建一个文件夹(比如WP81),以生成VS2013可以打开的项目。
- 如果生成成功,那么用VS2013打开新生成的sln,继续用VS2013 Build。
- 如果编译成功,那么可以将生成的游戏部署到手机上进行测试。
- 如果能够和其他平台一样正常运行,那么就可以将游戏上传到Windows商店了。
把现有Unity3d游戏向Windows Phone 8.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 ...
- unity3d游戏无法部署到windows phone8手机上的解决方法
今天搞了个unity3d游戏,准备部署到自己的lumia 920上,数据线连接正常,操作正常,但是“build”以后,始终无法部署到手机上,也没有在选择的目录下生产任何相关文件.(你的系统必须是win ...
- Unity3D游戏开发初探—1.跨平台的游戏引擎让.NET程序员新生
一.Unity3D平台简介 Unity是由Unity Technologies开发的一个让轻松创建诸如三维视频游戏.建筑可视化.实时三维动画等类型互动内容的多平台的综合型游戏开发工具,是一个全面整合的 ...
- 从一点儿不会开始——Unity3D游戏开发学习(一)
一些废话 我是一个windows phone.windows 8的忠实粉丝,也是一个开发者,开发数个windows phone应用和两个windows 8应用.对开发游戏一直抱有强烈兴趣和愿望,但奈何 ...
- [整理]Unity3D游戏开发之Lua
原文1:[Unity3D]Unity3D游戏开发之Lua与游戏的不解之缘(上) 各位朋友,大家好,我是秦元培,欢迎大家关注我的博客,我地博客地址是blog.csdn.net/qinyuanpei.如果 ...
- Unity3D游戏-愤怒的小鸟游戏源码和教程(二)
Unity愤怒的小鸟游戏教程(二) 本文提供全流程,中文翻译.Chinar坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 -- 高分辨率用户请根据需求调整网页缩放比例) AngryEva游戏效果 ...
- Unity3D游戏-愤怒的小鸟游戏源码和教程(一)
Unity愤怒的小鸟游戏教程 本文提供全流程,中文翻译.Chinar坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 -- 高分辨率用户请根据需求调整网页缩放比例) AngryEva游戏效果: 1 ...
- Unity3D游戏开发之SQLite让数据库开发更简单
各位朋友大家好.欢迎大家关注我的博客,我是秦元培,我是博客地址是http://blog.csdn.net/qinyuanpei.在经历了一段时间的忙碌后,博主最终有时间来研究新的东西啦,今天博客向和大 ...
- [Unity3D]Unity3D游戏开发之Lua与游戏的不解之缘终结篇:UniLua热更新全然解读
---------------------------------------------------------------------------------------------------- ...
随机推荐
- 立体最短路径,广搜(POJ2251)
题目链接:http://poj.org/problem?id=2251 参考了一下大神们的解法.也有用深搜的.然而,之前不久看到一句话,最短路径——BFS. 参考:http://blog.csdn.n ...
- Family Gathering at Christmas(思维题)
Family Gathering at Christmas 时间限制: 1 Sec 内存限制: 128 MB提交: 13 解决: 4[提交] [状态] [讨论版] [命题人:admin] 题目描述 ...
- aop 和castle 的一些 学习文章
https://www.cnblogs.com/zhaogaojian/p/8360363.html
- (转载)git常用命令
创建和使用git ssh key 首先设置git的user name和email: git config --global user.name "xxx" git config - ...
- 多线程, Thread类,Runnable接口
多线程 线程:线程是进程中的一个执行单元,负责当前进程中程序的执行,一个进程中至少有一个线程.一个进程中是可以有多个线程的,这个应用程序也可以称之为多线程程序. 单线程程序:即,若有多个任务只能依次执 ...
- JavaScript你必须掌握的8大知识点
一:JavaScript思维导图之<基本dom操作> 二.JavaScript思维导图之<变量>的学习 三. JavaScript思维导图之<函数基础> 四.J ...
- virtual base classes
virtual base classes用来实现菱形继承解决多个重复subobject的问题 //: C09:VirtualBase.cpp // Shows a shared subobject v ...
- LinkedHashMap使用心得
基本概念:https://www.cnblogs.com/xiaoxi/p/6170590.html 遇到问题: 1.构造方法 public static LinkedHashMap<Strin ...
- java异常处理 throw RuntimeException时不需要同时方法中声明抛出throws 异常等待调用者catch进行捕获 子父类异常问题
package com.swift.exception1; public class Demo_Exception { public static void main(String[] args) { ...
- iOS开发网络缓存原理
一.关于同一个URL的多次请求 有时候,对同一个URL请求多次,返回的数据可能都是一样的,比如服务器上的某张图片,无论下载多少次,返回的数据都是一样的. 上面的情况会造成以下问题 (1)用户流量的浪费 ...