cocos2d 从v1.x升级到v2.x需要注意的几个地方

首先v1.x一些CCNode定位函数实现的有问题,导致返回的CCPoint的x坐标不正确(超出320后无变化),怀疑是其对屏幕旋转判断的不正确;而且这种现象在iOS 7.1之前的模拟器中运行都正常,在iOS8.x(我是8.4)上才会出现如上异常现象.
解决办法:
1.只在iOS 7.x之前的系统上运行(显然不靠谱)
2.升级cocos2d v1.x到 v2.x

其次在升级到v2.x后,对于高清屏的显示可能不是我们需要的,比如用tiledmap制作地图v1.x中显示正常,而在v2.x的高清屏中显示范围会大一倍,如下图所示,v1.x的显示(iphone4s之前):

上图明显没有应用高清屏的分辨率,同样代码在v2.x的高清屏中的显示:

这会导致原来的坐标定位(比如从触碰坐标到地图坐标的转换)会出现问题,如果不想动代码或修改地图,可以在层的init方法里将地图放大到2倍即可:

tileMap.scale = 2.0f;

再次,因为v1.x后台是openGL ES 1.0,二v2.x后台是openGL ES 2.0 所以一些GLES1.0的函数需要修改或删除

未完待续…

时间: 2024-08-02 00:49:31

cocos2d 从v1.x升级到v2.x需要注意的几个地方的相关文章

慧算账全面升级,V2.2版本带来极致体验

本文讲的是慧算账全面升级,V2.2版本带来极致体验,日前,互联网财税服务领导者--慧算账正式宣布推出全新升级的重磅新版本.相较于前一版本,V2.2版整体性能进行了全面提升,内部优化幅度也十分惊人,高效便捷程度均令人产生眼前一亮的感觉. 在财税服务行业保持领先的慧算账一直深耕技术道路,此次升级也是力求完美.V2.2版本不仅支持科目.凭证.账簿的外币核算业务处理,新增了往来单位.存货.资产卡片.费用类型等基础信息按默认规则自动编码,而且新版本还能够支持财税状况表导出Excel,相较于其他竞品,便捷高

Cocos2D将v1.0的tileMap游戏转换到v3.4中一例(一)

大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请告诉我,如果觉得不错请多多支持点赞.谢谢! hopy ;) 首先说一下为什么要转换,这是为了后面的A*寻路算法做准备.由于在v1.0中,可能是Cocos2D本身有问题,以下 touchLocation = [_tileMap convertTouchToNodeSpace:touch]; 方法在执行到地图左边缘附近时,返回的CGPoint的x轴值不会再减小了.导致游戏主角不能再往地图左边靠近了.示意图如下(注意日志里输出

Cocos2D将v1.0的tileMap游戏转换到v3.4中一例(四)

大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请告诉我,如果觉得不错请多多支持点赞.谢谢! hopy ;) 现在打开MainScene.m文件,首先设置实例变量: @implementation MainScene{ CGSize _viewSize; CatSprite *_cat; CCTiledMap *_tileMap; CCTiledMapLayer *_bgLayer; CCTiledMapLayer *_objectLayer; //在cocos2Dv3

从雷军提案看涂鸦硬件智能化升级方案v2.0

OFweek智能家居网讯 以"互联网+,你的家"为主题的AWE2016(中国家电及消费电子博览会)已于日前正式落下帷幕.今年的AWE首次独立设置了智能家居展馆,整体展览面积成为有史以来面积最大的一届.传统家电家居用品巨头对于旗下智能产品.平台系统等展示面积比例普遍达到了60%以上.京东.小米等互联网巨头更是强势设馆,以全线抢滩智能家居的架势大曝光展示,全产业链合纵连横,平台,终端,方案眼花缭乱. 而原本在产业链各独立领域垂直发展的各种芯片模组商.系统集成商,云平台服务商也在垂直领域继续

Cocos2D将v1.0的tileMap游戏转换到v3.4中一例(八)

大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请告诉我,如果觉得不错请多多支持点赞.谢谢! hopy ;) 回到Xcode中,新建一个EndLayer类,继承于CCNode.因为我们得在其类方法中创建实例变量,所以我们得建立几个实例变量的属性.打开EndLayer.h文件,修改内容如下: #import "CCNode.h" @class MainScene; @interface EndLayer : CCNode @property (nonatomic

TL-WAR1200L V1.0升级软件20170609

         TL-WAR1200L_V1.0升级软件20170609.part1.rar  TL-WAR1200L_V1.0升级软件20170609.part2.rar     TP-LINK WVR&WAR系列路由器升级说明 注意事项: 1.       建议使用主流浏览器如IE11.chrome 或者firefox 对路由器进行升级操作. 2.       如果出现页面提示升级失败,请等待5 分钟左右再对路由器进行断电重启. 3.       升级过程不能断电,否则可能会导致路由器损坏

Cocos2D将v1.0的tileMap游戏转换到v3.4中一例(五)

大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请告诉我,如果觉得不错请多多支持点赞.谢谢! hopy ;) 为了暂时不影响原来的cat移动方法,我们在CatSprite.m中新建一个移动方法,内容如下,其中考虑了与地图的碰撞情况: -(void)moveTowardOneTile:(CGPoint)location{ CGPoint diff = ccpSub(location, self.position); CGPoint desiredTileCoord = [

Cocos2D将v1.0的tileMap游戏转换到v3.4中一例(三)

大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请告诉我,如果觉得不错请多多支持点赞.谢谢! hopy ;) 下面看一下CatSprite中最复杂的moveToward方法,我们一开始只是想要确保cat在屏幕上正确显示出来,动画正确播放出来,所以可以先不管与地图碰撞检测的问题.于是简化到如下代码: -(void)moveToward:(CGPoint)targetLocation{ CGPoint diff = ccpSub(targetLocation, self.p

Cocos2D将v1.0的tileMap游戏转换到v3.4中一例(二)

大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请告诉我,如果觉得不错请多多支持点赞.谢谢! hopy ;) 首先在CatMazeV3中新建CatSprite类,继承于Sprite.其中CatSprite.h文件如下所示: #import "CCSprite.h" @class MainScene; @interface CatSprite : CCSprite @property (nonatomic,assign,readonly) NSInteger n