XBOX ONE游戏开发常见问题
XBOX ONE游戏开发常见问题
终于弄懂这个在Unity的sdk在Account Picker切换账号的机制了,一个手柄注册一个账号,在游戏里面的时候,只有另外一个手柄选择自己的账号,系统的Active User才改变
如果同一个手柄选择另外一个账号的话,不改变系统active user
最基本的 如何让XBOX开发机 开启开发模式?
勾开发者套件
在系统里面依次按下LBRBLTRT
然后重启,重启后会有 开发者设置,里面可设定沙盒等参数
1.微软提供了一个DelegatedAuthServer的ASP.NET网站例子,作用是做SSO登陆服务器
restService.svc里面有一个方法messageOfTheDay
主要是用于测试XBOX Console 发来的令牌解密,
在XBOX Console里调用DLL IMPORT 函数XboxLiveService_CallWebService
会返回False或True,一般False表明用户没有登陆,当然还有其它的几种情况
生成证书,原文档有一些错误,主要是最后-号有问题,然后是生成文件名没有放在最后
正确的如下:
makecert -sv RP_Private_Key.pvk -n "CN=Contoso Relying Party" -b 01/01/2015 -e 12/31/2199 -sky exchange -ss My -a sha256 -len 2048 -r -pe RP_Cert.cer
服务器的证书还出过一次问题,现象为XBOX Console没有把令牌发过来,
经查看服务器,发现证书的私钥管理的用户里,原来的SERVICE变成了?号,重新添加了一下
然后又重新导入后RelyingPart证书解决
*如何得知上面说的其它的几种情况?
由于这个代码是C++写的,在C#中调试,需要启动2个visual stuido2013,
c++项目 选择附加到进程-》XBOX Console 的IP ,在列表中选择XboxOnePlayer.exe
这样就可以调试从托管环境到非托管环境
2.使用UNITY来编写XBOX游戏,使用UNITY提供的插件,出现闪退
UNITY提供的插件有托管的和非托管的,是配对的
比如Friends.dll(C++),那么就有一个FriendsImport.dll(C#),
通过非托管和托管之间进行数据交互,回调
如果少导入一个,启动时会出现闪退,并且编译器也不会提示出错
3.在UNITY发布时出现错误
Failed to Push deploy, AUMID and PFN could not be found in the output.
args: Push "C:/Users/FUX-hp/Desktop/MP2105/MP2105/Building\MP2105"
那时因为UNITY生成的文件都很大,每一次编译需好几分钟,为提高发布效率
有几种DEPLOY METHOD
PACKAGE为完整发布
PUSH和PULL是快速发布
必须先完整发布一次,直接使用PUSH就会报这个AUMID and PFN could not be found的错
4.在编写多人游戏功能时,调用tryWriteSessionAsync时报错0x810910900,但是参数是对的
需要先注册RTA,否则会出这个错
RTAMultiplayerManager.RegisterBothCallbacks(
5.XBOXLIVE服务器抽风造成的问题
某天周一,下午下班后仍在调多人游戏接口,结果程序报异常
还打出好多EXCEPTION,开始是以为程序没布好,但是自已没改过代码
经查看发现
NETRUM: MatchmakingSession::BeginMatchmaking()
NETRUM: SwitchState CreateLobby -> Lobby
== [XBOX SERVICE CALL] #8
[HttpMethod]: POST
[URI]: https://momatch.xboxlive.com/serviceconfigs/8d950100-0b51-40ad-a13c-b0fb56d74423/hoppers/GoodReputationHopper
[RequestHeaders]: Accept-Language: en-US; Content-Type: application/json; charset=utf-8; x-xbl-api-build-version: xdk,6.2.13004.0; x-xbl-build-version: current; x-xbl-contract-version: 103;
[RequestBody]: {"giveUpDuration":300,"preserveSession":"never","ticketSessionRef":{"scid":"8d950100-0b51-40ad-a13c-b0fb56d74423","templateName":"LobbySession","name":"lobby-bb81e728-412c-4c57-a6b7-9a30cd6244b1"}}
[ErrorCode]: 0x00000000
[HTTP Status]:
[HRESULT]: 0x801901f8 HTTP_E_STATUS_GATEWAY_TIMEOUT
[ResponseHeaders]: Connection: close; ;
原来是XBOXLIVE服务器抽风,上官网一看果然如此
http://support.xbox.com/zh-CN/xbox-live-status?icid=furl_status
XBOX ONE游戏开发常见问题的更多相关文章
- XBOX ONE游戏开发之登陆服务器(一)
XBOX ONE游戏开发之登陆服务器(一) XBOX LIVE是微软自已的认证服务器, 当我们开发游戏时,如果是联网游戏,需要自已架设单点登陆(SSO)服务器 这个需要微软提供Relying Part ...
- 从一点儿不会开始——Unity3D游戏开发学习(一)
一些废话 我是一个windows phone.windows 8的忠实粉丝,也是一个开发者,开发数个windows phone应用和两个windows 8应用.对开发游戏一直抱有强烈兴趣和愿望,但奈何 ...
- 《C++游戏开发》笔记十二 战争迷雾:初步实现
本系列文章由七十一雾央编写,转载请注明出处. http://blog.csdn.net/u011371356/article/details/9475979 作者:七十一雾央 新浪微博:http:/ ...
- (转)想从事游戏开发,1 年内能精通 C++ 吗,还需要学习什么?
本人大约从20多年前开始学习及使用C++,但仍未达到我认为「精通」的阶段,甚至对于C++11的各种新特性也未掌握.然而因为我是在读书时自学C++的,也是游戏程序员(原问题中提到题主想从事游戏开发),觉 ...
- 走进VR游戏开发的世界
http://geek.csdn.net/news/detail/76504 我们组在2014年下半年尝试开发了一款Xbox One平台的体感游戏,2015年上半年进行收尾工作的同时,结合之前积累的体 ...
- 使用 .NET 进行游戏开发
微软是一家综合性的网络公司,相信这点来说不用过多的赘述,没有人不知道微软这个公司,这些年因为游戏市场的回报,微软收购了很多的游戏公司还有独立工作室,MC我的世界就是最成功的的案例,现在市值是排在全世界 ...
- 算法、数据结构、与设计模式等在游戏开发中的运用 (一):单例设计(Singleton Design)
算法.数据结构.与设计模式等在游戏开发中的运用 (一):单例设计(Singleton Design) 作者: Compasslg 李涵威 1. 什么是单例设计(Singleton Design) 在学 ...
- 博主有偿带徒 《编程语言设计和实现》《MUD游戏开发》《软件破解和加密》《游戏辅助外挂》《JAVA开发》
<考研专题>操作系统原理 理论解答:8K 实战 1.5W CPU设计 理论解答:1W 实战 2.5W <编程语言设计和实现>初窥门径<5K>:编译原理.编译设计小试 ...
- Android游戏开发实践(1)之NDK与JNI开发03
Android游戏开发实践(1)之NDK与JNI开发03 前面已经分享了两篇有关Android平台NDK与JNI开发相关的内容.以下列举前面两篇的链接地址,感兴趣的可以再回顾下.那么,这篇继续这个小专 ...
随机推荐
- XSS攻击的解决方法
在我上一篇<前端安全之XSS攻击>文中,并没有把XSS攻击的解决办法说完整,而XSS的攻击又那么五花八门,有没有一招“独孤九剑”能够抗衡,毕竟那么多情况场景,开发人员无法一一照顾过来,而今 ...
- EXCEL经纬度转化
=LEFT(A1,FIND("°",A1)-1)+MID(A1,FIND("°",A1)+1,FIND(CHAR(39),A1)-1-FIND("°& ...
- OC笔记
self的概念:指向了当前对象(方法的调用者) self的用途 可以利用 self -> 成员变量名 访问当前对象内部的成员变量 [self 方法名]; 调用其他对象方法或者类方法 所有继 ...
- iOS 单例模式 浅叙
单例模式作用 可以保证在程序运行过程中,一个类只有一个实例,而且该实例易于供外界使用 从而方便地控制了实例个数,并节约系统资源 单例模式使用场合 在整个引用程序中,共享一份资源(这份资源只需要创建初始 ...
- block 页面传值小结
我以自己项目中的一个模块为例,首先有两个页面,第一个页面为显示城市页面,第二个页面为选择要使用block传的值(城市名). 第一个页面中的显示控件: //自定义左部定位视图 self.locView ...
- ios git 终端提交
git status //检查提交状态 git status On branch master //检查分支 git branch //查看分支 git add * //添加所有本地更 ...
- 转:SVN常见问题与解决方法
今天发现一个SVN很奇葩的问题.原来SVN提交的时候也是识别提交路径的大小写的... 发现网上有篇博客总结的挺好的.转载下来,转载出路:http://blog.csdn.net/shinn613/ar ...
- php中的cookie用法
cookie和session都可以暂时保存在多个页面中使用的变量,但是它们有本质的差别. cookie存放在客户端浏览器中,session保存在服务器上.它们之间的联系是session ID一般保存在 ...
- JSON in JavaScript Asp.net
首先官方网站 http://www.json.org/js.html 下载 json2.js 到Github 中下载 https://github.com/douglascrockford/JSON ...
- select接收后台返回值的解决方案
在做页面表单或者条件筛选的时候,如何把select标签的值,在刷新页面后,保持选择的值.下面,将给出两种解决方案: 前提: 前台select标签 name为type : 后台接收type的值,业务完成 ...