Win8 Metro App里玩XNA:ContentPipeline内容管线问题
2012-09-04 22:19
239 查看
开了个头 |
输入和输出都对应了一个处理器,也就是说,有一个进还有一个是出,这些内容输入和输出所对应也比较简单,例如Texture的纹理,Model的模型等,这些可以在官方文档中查到比较明确的例子,但是有的时候,我们所需的并不只是这些标准的资源,而是更加自定义的资源,例如在cocos2d-xna中.plist文件,这些文件你指定的标准类型是没有用的,就算在编译xnb的时候不出错,也会在Load的时候崩溃,那么如何解决这个问题呢?
在前面的篇幅中,有朋友建议使用FromStream的方法解决,我很兴奋的去做了尝试,但是这种方法并不通用,要知道xna里最出名的就是自定义资源,这些自定义出来的xnb,通过流方式解析那将会是一件大工程,而且即便是能输出正确的资源,但转换的代码等于你的资源总量。
自定义内容管线 |
然后写出你想处理的输入和输出的处理类:
具体代码其实也很简单,推荐参看cocos2d-xna中这段处理,上图来自该工程。
然后选定你的资源更改即可,那么在我的一个游戏《阿翔跨栏》中,就有一个自定义的数据文件,这个数据文件主要是用来描述角色动画帧的位置信息,很显然我需要自行转换,取得其数据流即可:
在取得的数据流之后在做特殊处理,在cocos2d-xna中如果你遇到了.plist文件就得需要同样的办法才能让你的demo运转正常,这方面可以参看coco2d-xna官方test就可以了解。
In MonoGame XNA |
本来觉得可能会写好多,写到现在发现没什么好写的,只要知道了一种方法,自然其他的问题也就迎刃而解,为了让咱这篇丰满一点,附上《阿翔跨栏》WP和Win8同版视频:
该项目里就用到的自定义内容管线,按惯例都会附上源代码,可惜这次不行,还请谅解啦。
相关文章推荐
- Win8 Metro App里玩XNA:框架问题解决方案
- Win8 Metro App里玩XNA:移植XNA游戏到Win8
- XNA 没有经过Content Pipeline对内容做Alpha预处理解决办法
- Win8 metro app 播放来自网络语音文件常见问题
- Win8 Metro App里玩XNA:如何使用和移植cocos2d-xna游戏
- 解决MultipartEntity无法获取内容数据问题:Multipart form entity does not implement #getContent()
- win8:metro app UI 设计
- iPhone6/6Plus下app状态栏内容放大问题处理
- win8 Metro App访问 桌面应用层 初探~
- The content of element type "web-app" must match……等 问题之解决办法
- 关于Uiautomator或者uiautomatorviewer获取不到手机APP界面内容问题
- 《Android Studio开发实战 从零基础到App上线》本书内容问题答疑
- 3月31日下午3:30免费课程 | App推广内容政策及商店排名常见问题
- Win8 Metro应用开发:如何使用Push notification来更新你的Metro style app
- 解决Win8 metro应用出现挂起状态无法再次安装问题
- win8 & metro style app 开发之使用模拟器
- 如何根据字节流内容确定汉字编码,从而解决相同App在部分省份显示乱码的问题
- iPhone6/6Plus下app状态栏内容放大问题处理,
- 关于iPhone6/6Plus下app状态栏内容放大问题
- Win8 Metro和Windows Phone的Style相关的一些问题