- 浏览: 441510 次
- 性别:
- 来自: 济南
文章分类
- 全部博客 (470)
- 前言 (1)
- 【sys】centos6.2 (51)
- 【sys】shell (8)
- 【sys】yum (1)
- software (6)
- 【tec】ruby (16)
- 【tec】rails (35)
- 【tec】rails路由 (2)
- 【tec】rails部署 (10)
- 【tec】rails优化 (6)
- 【tec】rails测试 (11)
- 【tec】php (45)
- 【tec】android (1)
- 【tec】ios (125)
- 【data】mysql (11)
- web (6)
- 【life】文学与提升 (2)
- life (36)
- 【life】怀念 (1)
- 【web】nginx (5)
- 【web】网络与安全 (4)
- 工作随笔 (1)
- 【software】svn (5)
- 【script】jquery (10)
- powerEdge (2)
- 杂七杂八 (5)
- 【sys】ubuntu (9)
- 【sys】windows (4)
- 【tec】java (1)
- 【tec】html (3)
- 【tec】c++ (38)
- 【tec】汇编 (1)
- 【data】数据库 (1)
- 【exchange 】学术交流 (1)
- 【tec】域名空间 (1)
- 【tec】编程先知 (1)
- 【tec】网站建设 (7)
- 【sys】mac (24)
- 【sys】seo (1)
- 【tec】wp (1)
- 【software】git (4)
最新评论
-
fireDragonpzy:
呵呵 貌似我网站上的有更新 你从那里看看 这个博客维护的不及时 ...
牛人经典语录 -
Peppermintchz:
还真这么2过啊!!好怀念啊
牛人经典语录 -
fireDragonpzy:
chenhong53 写道你好,我想问一下,能不能给一组精灵数 ...
cocos2d-x事件触发的优先级 -
chenhong53:
你好,我想问一下,能不能给一组精灵数组中的精灵添加触屏优先级, ...
cocos2d-x事件触发的优先级 -
fireDragonpzy:
dreamstar1020 写道谢谢庞兄指点,写的很详细,谢谢 ...
致:上海郑兄(虚拟主机-web服务器搭建)
之前已经建立好了一个场景,在建立场景的时候,已经将一个CCLayer加到场景的子节点上,这个节点将作为这个场景的父节点,场景中所有的内容都将以它的孩子身份出现。在移动设备上,最常处理的就是触摸消息的响应了。
(一)单点触控:Targeted Touch Delegate方式
(二)多点触控:Standard Touch Delegate方式(CCLayer默认采纳这种方式)
支持这种方式同样需要三个步骤:
(三)获取触点位置
摘自:http://www.cnblogs.com/w121640121/archive/2011/12/06/2278651.html
(一)单点触控:Targeted Touch Delegate方式
一个层接收触摸消息需要如下步骤: 1,在初始化阶段将此层的属性设置为接收触摸消息。例如在init()函数中添加: m_bIsTouchEnabled = true; 或 setIsTouchEnabled(true); 2,重载函数virtual void registerWithTouchDispatcher(void); 因为默认的方式为Standard Touch Delegate,因此需要重新注册,在函数中添加以下语句 CCTouchDispatcher::sharedDispatcher()->addTargetedDelegate(this, INT_MIN+1, true); 其中第二个参数为优先级,优先级数值越低,越先响应(未测试) 3,重载触摸响应函数 接收触摸消息需要重载以下函数 virtual bool ccTouchBegan(CCTouch *pTouch, CCEvent *pEvent);// 必须实现 virtual void ccTouchMoved(CCTouch *pTouch, CCEvent *pEvent); virtual void ccTouchEnded(CCTouch *pTouch, CCEvent *pEvent); virtual void ccTouchCancelled(CCTouch *pTouch, CCEvent *pEvent); 这里需要注意的事第一个函数是必须实现的,否则点击会抛出异常
(二)多点触控:Standard Touch Delegate方式(CCLayer默认采纳这种方式)
支持这种方式同样需要三个步骤:
1,同Targeted Touch Delegate方式第一步 2,将此节点添加到StandardDelegate(对于CCLayer可以省略此步),以实现一个可以点击的CCSprite为例: 在onEnter函数中添加 cocos2d::CCTouchDispatcher::sharedDispatcher()->addStandardDelegate(this,0); 3,重载响应函数 virtual void ccTouchesBegan(cocos2d::CCSet *pTouches, cocos2d::CCEvent *pEvent); virtual void ccTouchesMoved(cocos2d::CCSet *pTouches, cocos2d::CCEvent *pEvent); virtual void ccTouchesEnded(cocos2d::CCSet *pTouches, cocos2d::CCEvent *pEvent); virtual void ccTouchesCancelled(cocos2d::CCSet*pTouches,cocos2d::CCEvent *pEvent); 其中 pTouches为一个CCTouch的集合,可以通过以下方法来获取单一触点 if(!pTouches||!pTouches->count()) { return; } cocos2d::CCTouch* pTouch = (cocos2d::CCTouch*)(*(pTouches->anyObject())); 获取全部触点需要遍历这个集合 for(CCSetIterator iterTouch = pTouches->begin(); iterTouch != pTouches->end(); iterTouch++) { CCTouch *pCurTouch = (cocos2d::CCTouch*)(*iterTouch); // do something } 4,从StandardDelegate移除: 如果第二步将自定义的CCSprite加入到StandardDelegate,那么在此CCSprite被清除时,移除此CCSprite。在onExit函数中调用 cocos2d::CCTouchDispatcher::sharedDispatcher()->removeDelegate(this);
(三)获取触点位置
从CCTouch中可以获取到触点的位置主要有以下几种方式 1:获取UIView坐标 CCPoint ptTouch = pTouch->locationInView(pTouch->view()); 这里获取的是设备的UIView坐标,原点在左上角,X向右侧递增,Y向下递增。 2:获取节点坐标 CCPoint ptNode = convertTouchToNodeSpace(pTouch); 节点坐标的计算同GL坐标,它以所在节点的左下角为原点,X向右递增,Y向上递增 3,获取锚点坐标 一个节点,所有的变换都是基于锚点,比如平移,旋转,缩放等。可以通过函数setAnchorPoint(CCPoint var);来改变锚点。cocos2d-x里节点默认的锚点是中心点,即等同于setArchorPoint(ccp(0.5, 0.5));其中(0,0)代表左下角,(1,1)代表右上角。 CCPoint ptNodeAR = convertTouchToNodeSpaceAR(pTouch); 这时,坐标系的原点在该节点的锚点位置。X向右递增,向左递减;Y向上递增,向下递减
摘自:http://www.cnblogs.com/w121640121/archive/2011/12/06/2278651.html
发表评论
-
cocos2d-x CCClippingNode遮罩实现手电筒效果
2013-07-09 20:14 2184详情请参考:【Software Myzone】:http:// ... -
Cocos2d: Stencil buffer is not enabled.
2013-07-05 10:47 1576详情请参考:【Software Myzone】:http:// ... -
[2.1.3]修改SearchPaths的三种方式【熊猫版】
2013-06-24 09:44 815详情请参考:【Software Myzone】:http:// ... -
深入理解 Cocos2d-x 内存管理 转
2013-06-24 09:43 736详情请参考:【Software Myzone】:http:// ... -
cocos2d-x场景缩放后的区域碰撞检测
2013-06-24 09:31 1367详情请参考:【Software Myzone】:http:// ... -
编译CSArmature到Android
2013-05-29 09:09 699详情请参考:【Software Myzone】:http:// ... -
TexturePacker 图片加密 转
2013-05-29 09:09 833详情请参考:【Software Myzone】:http:// ... -
Cocos2d-x 屏幕适配新解 转
2013-05-28 13:21 848详情请参考:【Software Myzone】:http:// ... -
cocos2d-x 使用TinyXML2存储数据:FDTinyXML2
2013-05-09 14:31 1031详情请参考:【Software Myzone】:http:// ... -
TinyXML2 学习
2013-05-09 14:31 719详情请参考:【Software Myzone】:http:// ... -
cocos2d-x 精灵的移动遮罩[手电筒效果]
2013-05-02 09:41 1029详情请参考:【Software Myzone】:http:// ... -
Android平台中进程与线程的基本知识
2013-05-02 09:41 673详情请参考:【Software Myzone】:http:// ... -
Jumper类游戏制作【Forest Run】
2013-04-24 16:20 497详情请参考:【Software Myzone】:http:// ... -
Cocos2D 如何做 Android 适配 转
2013-04-22 16:48 581详情请参考:【Software Myzone】:http:// ... -
类似Temple Run 游戏恢复的321倒计时实现
2013-04-22 16:47 961详情请参考:【Software Myzone】:http:// ... -
工具库:UtilTools
2013-04-22 16:47 613详情请参考:【Software Myzone】:http:// ... -
C++的深拷贝与浅拷贝
2013-04-03 10:23 706详情请参考:【Software Myzone】:http:// ... -
Cocos2d-x Win32下的节点缩放原理研究心得【熊猫版】
2013-04-03 10:23 804详情请参考:【Software Myzone】:http:// ... -
Cocos2d-x 节点绘制流程研究心得【熊猫版】
2013-04-03 10:22 765详情请参考:【Software Myzone】:http:// ... -
基于cocos2d-x的游戏客户端优化
2013-04-03 10:22 690详情请参考:【Software Myzone】:http:// ...
相关推荐
资源名称:Cocos2d-x实战:JS卷——Cocos2d-JS开发内容简介:本书是介绍Cocos2d-x游戏编程和开发技术书籍,介绍了使用Cocos2d-JS中核心类、瓦片地图、物理引擎、音乐音效、数据持久化、网络通信、性能优化、多平台...
cocos2d-x-2.1.5
在使用cocos2d-x开发游戏的过程中,为了实现逻辑和显示相分离。 在下通宵了一个晚上,写出了该事件类。 谨记,该事件只能用于cocos2d-x中。 事件发送者需要继承EventDispatcher类 事件接收者需要继承EventHandle类...
书中汇聚了热门手机游戏《捕鱼达人》开发的实战经验,作者从最基础的内容开始,逐步深入地介绍了Cocos2d-x的相关知识点。此外,书中的教学资源获得《捕鱼达人》手机游戏的授权,读者可以从一流游戏开发中高起点地...
资源名称:大富翁手机游戏开发实战基于Cocos2d-x3.2引擎内容简介:李德国编著的《大富翁手机游戏开发实战(基于 Cocos2d-x3.2引擎)》使用Cocos2d-x游戏引擎技术,带领读者一步一步从零开始进行大富翁移动游戏的开发...
cocos2d-x-3.2下载,不多说。或者可以下载另一个资源 cocos引擎老版本集合(cocos2d-x-2.2.1 - 3.5) http://download.csdn.net/download/crazymagicdc/9982656
cocos2d-x实战项目 01.cocos2d-x原理及环境配置.rar 03.cocostudio使用方法及UI控制.rar 04.XML文件读取与骨骼动画.rarcocos2d-x实战项目 01.cocos2d-x原理及环境配置.rar 03.cocostudio使用方法及UI控制.rar 04.XML...
精通COCOS2D-X游戏开发 精通COCOS2D-X游戏开发 精通COCOS2D-X游戏开发 精通COCOS2D-X游戏开发 精通COCOS2D-X游戏开发
资源名称:Cocos2D-X游戏开发技术精解内容简介:Cocos2D-X是一款支持多平台的 2D手机游戏引擎,支持iOS、Android、BlackBerry等众多平台。当前,很多移动平台流行的游戏,都是基于Cocos2D-X开发的。 《Cocos2D-X...
经典版本 方便下载 源码 旧版本 3.8 官网找不到了 cocos2d-x-3.8.zip
这是我重新弄的cocos2d-x-3.0的类图.之前别人兄台弄的,有些不全面,有些地方错误.我这个可以说是最新的了.每个类添加了中文的详细注解,同时也添加了中文的类名称翻译.这样对cocos2d-x-3.0的框架比较好上手. 有兴趣的...
Cocos2d-x 3.x游戏开发实战pdf含目录,内容详细,强烈推荐给大家。
《Cocos2D-X游戏开发技术精解》详细介绍如何使用Cocos2D-X引擎开发自己的移动平台游戏。全书共15章,主要内容包括:Cocos2D-X引擎简介;如何建立跨平台的开发环境;引擎的核心模块——渲染框架;如何实现动态画面和...
因为最近在学cocos2d-x,找了半天在网上也找不到一个离线的文档,于是自己抽空做了一个,全部内容提取自cocos2d-x中文官网的文档页http://cn.cocos2d-x.org/article 目前只提取了cocos2d-x部分内容。因为内容比较多...
Cocos2d-x windows vs2010 配置图文详解
Cocos2d-x实战 JS卷 Cocos2d-JS开发 PDF 电子书完整版本
cocos2d-x 3.0 人物行走 . 包里有代码和 图片资源.
cocos2d-x 动画工具 Flash2Cocos2d-x 1.3
Cocos2d-x游戏编程——C++篇(电子工业出版社,徐飞 著)书本配套的光盘代码,
Cocos2d-x-3.x游戏开发之旅-钟迪龙著 全新pdf版和附书代码(代码为工程文件,可复制) 附带目录标签