Node

cocos2dx-js 鼠标事件管理器

propagation){event.stopPropagation();}}};MouseManager.mouseUp=function(event){varnode=event.getCurrentTarget();varevent_node=MouseManager._getEventNode(node);if(!event_node){return;}varpos=event.getLocation();//cc.log("->MouseManager::pressUpx="+pos.x+",y

clipNode

本节要讲的ClippingNode的功能效果大致就是上面所看到的遮罩效果。ClippingNode是Node的子类,可以像普通节点一样放入Layer,Scene,Node中。ClippingNode是利用模板遮罩来完成对Node区域裁剪的技术。

Cocos2d-x V3.x内存管理分析

因而对于写过OC程序的朋友来讲,cocos2d-x的内存管理应该是一目了然的,但对于本渣这枚没接触过OC的C++码农来说,或许直接看cocos2d-x源代码才是最直接快捷的方式。Ref类在cocos2d-x中,Node类的父类是Ref类,之前我们所看到的autorelease方法实际上就来自于这个父类。需要注意的是,cocos2d-x的单例类都不是线程安全的,跟内存管理紧密相关的PoolManager类也不例外,因此在多线程中使用cocos2d-x的接口需要特别注意内存管理的问题。

cocos creator 触摸捕捉事件

node对于触摸事件的捕捉是基于它本身的size范围的,如果这个node本身大小为0,则无法响应捕捉事件。代码相当的简单,如果大小size设置得没问题,则可以响应此事件!

为 cocos2d-x 选择新的 Luabinding (1)

最近正在做CocosCreator的Lua支持。cocos2d-x目前使用一套基于tolua++的Luabinding层。另外我一直认为tolua++存在性能问题,替换为更高效的luabinding可以充分发挥Lua的性能优势。这篇文章的重点就是选择新的Luabinding。选择新Luabinding找了好些Luabinding库,根据这个性能测试选择了Sol2。总结cocos2d-x现在使用的Luabinding只能达到C++37.5%的性能。在更换新Luabinding并做相应调整后,可以获得高达C+

quickV3动作action

cocos2d-x中动作分瞬时动作和延时动作,在quick中可以通过Node:runAction和transition.execute来执行动作。一个action在执行runAction的时候就绑定到了这个Node上,如果其他Node也要执行这个action要使用action:clone()得到action的拷贝。在组合动作中,最常用的是cca.seq–创建序列动作,动作是顺序执行的;cca,spawn–创建同时执行的动作,通常加入cca.seq中使用。改变透明度的几个fade函数不能对Node的元素起作

Cocosdx:基于Cocos Studio 2.0获取某个节点的方法

对于CocosStudio1.x版本,Cocos2d-x提供了两个seek函数来帮我们解决这个问题:seekWidgetByName和seekWidgetByTag,放置在UIHelper中,这两个函数会自动去搜索各个层,直到搜索到第一个匹配的对象。但是在2.0的机制下,CocosStudio创建的节点可能同时包含Widget以及非Widget类型的节点。而UIHelper提供的两个函数中假定各个子节点类型为Widget,所以原来的方法就不适用新版本了。不过,虽然两个函数假定节点是Widget类型,但都只