cocos2dx项目从xcode移植到vs2012遇到的问题

最近做一个游戏项目,从ios移植到wp8。以下为碰到的问题记录:

从xcode平台拿过来的项目,点击proj.wp8的sln文件

进入工程,点击项目的class文件,会看到只是初始的一些文件,自己编写的源代码并没有被加载。


这时,右键文件,将AppDelegate和HelloWorldScene的cpp和h文件移除,右键classes->添加->现有项,将class中的源文件加入。

加载成功!

调试:

1.一大串类似于“未声明标识符” 之类的错误

文件编码问题。

打开源文件点击另存为,将编码改为 unicode

2.error C2440: “类型转换”: 无法从“void (__thiscall SelectListLayer::* )(void)”转换为“cocos2d::SEL_MenuHandler”

类型错误,转到函数声明处,此例中调用的函数默认参数类型为SEL_MenuHandler。

为函数添加相应的参数,此例中为函数ToCardScene的声明和定义加上CCObject* pSender参数。

3.运行出现内存溢出,图片精灵指针无法读取内存

经测试,每到一些加载大图片的场景就会出这样的错。

跟踪指针,都是无法读取内存。

将图片换成小图片就可以了,换掉某些图片(不必须用png的地方尽量用jpg)。

4.整个布局混乱不堪,图片和精灵都是横着显示

这是因为wp8默认是横屏显示的。

到项目同名cpp中找到SetWindow函数,

DisplayProperties::AutoRotationPreferences = DisplayOrientations::Landscape;

Landscape表是横屏显示,改为Portrait即可。

5.标签文字显示成方框

VS下中文貌似不是UFT8编码的,由于前面的原因改了编码,所以中文乱码了

改为英文,不解释。



6.背景图片显示不全(整个屏幕可视窗口比在xcode模拟器里小)

分辨率问题。iphone默认640*1136,而wp8默认480*800。

改图片分辨率,调整精灵位置(不要做基于像素的操作,对移植性不好)。


运行成功:

相关文章

    本文实践自 RayWenderlich、Ali Hafizji 的文章《...
Cocos-code-ide使用入门学习地点:杭州滨江邮箱:appdevzw@1...
第一次開始用手游引擎挺激动!!!进入正题。下载资源1:从C...
    Cocos2d-x是一款强大的基于OpenGLES的跨平台游戏开发...
1.  来源 QuickV3sample项目中的2048样例游戏,以及最近《...
   Cocos2d-x3.x已经支持使用CMake来进行构建了,这里尝试...