cocos2dx中的CCRect的用法

CCRect是cocos2dx中的一块矩形区域

常用于碰撞检测及渲染时限定纹理的大小

CCRect rect=spr.boundingBox();

CCRect rect=CCRect(0,0,spr.width,spr.height);

CCRect rect=CCRect(spr->boundingBox().origin.x,spr->boundingBox().origin.y,spr.size().width,spr.size().height);

//boundingBox().origin表示矩形的左下角的坐标点,相当于节点坐标系的原点

时间: 2024-08-25 01:43:48

cocos2dx中的CCRect的用法的相关文章

cocos2dx中替代goto的用法:do{}while(0)和CC_BREAK_IF

我们时常会调用某个函数来创建一个对象,但由于内存不足或其他异常情况发生时对象可能会创建失败,创建失败我们就要结束当前程序转到错误处理地方去处理错误或释放已生成的对象. int* p1 = new int; CCObject* o1 = fun1(); if(!o1) goto catchcode; CCObject* o2 = fun2(); if(!o2) goto catchcode; //如果代码都执行成功 delete p; p = NULL; //如果o1 o2有发生错误 catchc

cocos2d-x 中LUA和平台之间的函数调用理解

先看一张流程图如下: 第一步: 先把NDKHelper中的方法转成LUA中可以调用的,转得方法可参考quick中LUA的用法.这个类主要是中间桥梁的作用,它可以根据是什么平台调用IOSNDKHelper或者AndroidSNDKHelper,这些判断都是用C语言来写的.还有就是对一些回调函数的保存机制和平台要用LUA中一些方法的保存. 第二步: IOS平台需要处理的就是IOSNDKHelper,这个类主要就是接收和发送给NDKHelper数据的方法,还有一个就是加载IOS平台的BasePlatf

【COCOS2DX-游戏开发之三四】cocos2dx 3.0 TableView特殊用法:滚动时不能选择等等

cocos2dx 3.0版本TableView拍生自ScrollView,常用来做滚动列表,有几种特殊用法,不知道大家用到过没 要求:1.滚动时不能选中TableCell,非滚动状态才能选中 很简单,在TableView的delegate函数中,通过isTouchMoved()函数来判断 void WeaponSelectLayer::tableCellUnhighlight(cocos2d::extension::TableView* table, cocos2d::extension::Ta

Cocos2d-x中的坐标系

绘图坐标系.它是最常见的坐标系,与OpenGL采用的坐标系相同,以左下角为原点,向右为x轴正方向,向上为y轴正方 向,如图 3-1 所示.在 Cocos2d-x 中,一切绘图相关的操作都使用绘图坐标系,如游戏元素中的 Position 和 AnchorPoint 等属性. 纹理坐标系.纹理坐标系以左上角为原点,向右为x轴正方向,向下为y轴正方向,如图3-2所示.在Cocos2d-x中,只 有从纹理中截取部分矩形时才使用这个坐标系,如 CCSprite 的 TextureRect 属性. 简单地接

Cocos2d-X中的坐标

在Cocos2d-x中坐标可以分成四种: 1.GL坐标体系:GL坐标体系左下角为坐标原点,X轴向右,Y轴向上 2.UI坐标体系:UI坐标体系左上角为坐标原点,X轴向右,Y轴向上. 3.世界坐标体系:是窗口的坐标体系,它是GL坐标体系,它是左下角为坐标原点,X轴向右,Y轴向上. 4. 结点坐标体系:是Node的坐标体系,它是GL坐标体系,和世界坐标体系不同的是,它的原点是结点的左下角, 当一个结点调用SetPosition时,使用的参数是它的父结点(渲染树)的坐标体系 CCLayer默认大小和窗口

(20)Cocos2d-x中的引用计数(Reference Count)和自动释放池(AutoReleasePool)

引用计数 引用计数是c/c++项目中一种古老的内存管理方式.当我8年前在研究一款名叫TCPMP的开源项目的时候,引用计数就已经有了. iOS SDK把这项计数封装到了NSAutoreleasePool中.所以我们也在Cocos2d-x中克隆了一套CCAutoreleasePool.两者的用法基本上一样,所以假如你没有涉及过ios开发,你可以看看苹果官方文档NSAutoreleasePool Class Reference. CCAutoreleasePool Cocos2d-x的CCAutore

Cocos2d-X中的CCSprite

 在cocos2d-x中,精灵CCSprite是整个游戏开发处理的主要对象,例如天上的飞机.地上的坦克.玩家控制的任务等等都是精灵.甚至天上随机飘过的一朵白云.飞过的一只鸟也都是精灵.实际上,精灵就是一个可以不断变化的图片,变化包括位置变化.旋转.放大.运动等等. 可见,精灵在游戏中是十分重要的组成部分,随处可见.在cocos2d-x中,要用到图片展示的,基本上会使用到精灵类,CCSprite类在cocos2d-x中类结构图如 为了观察CCSprite的功能打开CCSprite.h文件,CC

关于在Cocos2dx中注册触摸事件——Lua

关于在Cocos2dx中注册触摸事件,之前一直对此一知半解,这两天在看引擎的源码,趁此机会写下来... 以下纯属个人理解,如有不对欢迎指正... 在引擎的CCLayer类中声明了有四个方法: 1 virtual bool onTouchBegan(Touch *touch, Event *unused_event); 2 virtual void onTouchMoved(Touch *touch, Event *unused_event); 3 virtual void onTouchEnde

改进cocos2dx中lua读ccb的方法

cocos2dx自带的CCBProxy真弱,还好提供了一个CCBReaderLoader.lua,但是也不好用, 于是修改了一下CCBReaderLoader,下面直接贴代码了. function NewCCBuilderReaderLoad(strFilePath,proxy,owner) if nil == proxy then return end --print("ccbnew") local ccbReader = proxy:createCCBReader() local