代码改变世界

随笔分类 -  coco2d-x

扩展cocos2d-x中的CCSprite增加点击事件处理

2013-07-23 23:07 by 科悦, 2311 阅读, 收藏,
摘要: #ifndef __CCSPRITEEX_H__#define __CCSPRITEEX_H__// CCSpriteEx 是对 CCSprite类的扩展,主要是能得到触摸事件的反馈#include #include NS_CC_BEGINclass CCSpriteEx : public CCSprite, public CCTargetedTouchDelegate{public:CCB_STATIC_NEW_AUTORELEASE_OBJECT_WITH_INIT_METHOD(CCSpriteEx, create); // 用于CocosBuilder// 设置点击精灵的事件处理器vo 阅读全文

Cocos2d-x面试题

2013-07-23 16:16 by 科悦, 2565 阅读, 收藏,
摘要: 1,阐述cocos2d-x 中CCScene CCLayer CCSprite CCNodeCCScene:CCScene是app工作流程上独立块,一个app可能拥有多个scene,但是在任何时候只能有一个是激活状态的。一个CCScene对象由一个或多个CCLayer组成,layer之间是前后相连的。Layer提供了scene的外观和行为。通常的用法是直接用一个或多个layer实例化一个sceneCCScene的子类CCTrasitionScene实现移动transitions,提供两个scene之间的转移效果,由于scene是CCNode的子类,所以scene可以手工或者用aciton来转变 阅读全文

cocos2d-x判断sprite点击

2013-07-23 16:13 by 科悦, 652 阅读, 收藏,
摘要: #基于cocos2d-x 1.0.1我们常常需要判断用户的点击操作是否落于某个sprite之上,进而让这个sprite做出响应。但是如果我们通过继承CCSprite类来实现自己的Sprite类的时候,产生的视图尺寸会充满屏幕。多个Sprite在同一层的时候会发生重叠,导致我们通过回调函数传递进的touch点是相对于最上层Sprite来说的。好在我们可以通过CCDirector::sharedDirector()->convertToGL(CCTouch* touch->locationInView());的方法来获得touch point的绝对坐标。然后通过遍历屏幕上所有的spri 阅读全文

coco2d-x精灵类总结

2013-07-23 16:10 by 科悦, 461 阅读, 收藏,
摘要: 游戏项目中,个人感觉精灵类用的非常多,还是自我总结下把。本文以cocos2d-x 2.1.2版本为例。简单分类:一、单个或数个精灵1,一句话,学会用CCSprite就行了。CCSprite *sprite = CCSprite::create("cardbk.png");2, 想提高效率的用下面这个: CCTexture2D* cache = CCTextureCache::sharedTextureCache()->addImage("cardbk.png"); CCSprite* sprite = CCSprite::createWithTex 阅读全文