cocos2d-x 坐标系解惑】的更多相关文章

1.CCTouch* touch->getLocation() ---- 返回当前触摸点在openGL坐标系中的位置 openGL坐标系,原点在左下角,x向右为正,y向上为正. 2.CCTouch* touch->getLocationInView() ---- 返回当前触摸点在屏幕坐标系中的位置 视图坐标系,原点在左上角,x向右为正,y向下为正. 经测试以上两个结果值,x一样,y值不一样. 3.CCDirector->sharedDirector()->convertToGL(C…
本将主要介绍下CCNode这个类.CCNode是全部节点的基类,当中包含我们经常使用的CCScene(场景).CCLayer(图层).CCSprite(精灵)等.它是一个不可以可视化显示的抽象类,仅仅是用来定义全部节点的公共属性和方法的.本讲纯粹是理论. 首先来看看CCNode的继承结构图,仅仅列举了经常使用的类 节点的处理 1.创建一个新的节点 [java] view plaincopy CCNode *node = [CCNode node]; 2.加入子节点 [java] view pla…
本将主要介绍下CCNode这个类,CCNode是所有节点的基类,其中包括我们常用的CCScene(场景).CCLayer(图层).CCSprite(精灵)等,它是一个不能够可视化显示的抽象类,只是用来定义所有节点的公共属性和方法的.本讲纯粹是理论. 首先来看看CCNode的继承结构图,只列举了常用的类 节点的处理 1.创建一个新的节点 CCNode *node = [CCNode node]; 2.添加子节点 // 先创建子节点 CCNode *childNode = [CCNode node]…
1:必须搞清flash坐标系 和 cocos2d 的坐标系的差异2:对于cocos2d系列坐标系的深入理解: 以前我们常认为 coco2d-x的X,Y是相对坐标系,相对于父节点的X,Y的坐标,这种说法其实也没有错误,跟准确的了解应该是X,Y的坐标是锚点坐标,再准确一点X,Y应该是描点(0.5,0.5)位置时候的描点坐标.因为coco2d默认描点是(0.5,0.5). 这些感念只有再做数据导出的时候,才需要细分出来.  日常的coco2d系列开发,平常的理解就可以了. 3: coco2d-x  中…
转自:http://blog.csdn.net/we000636/article/details/8263503 接受触屏事件的优先级是值越小,响应触屏事件的优先级越高 Z值越大,越外面 JNI:允许Java代码与其它语言写的代码进行交互 cocos2d-x好像对tmx中使用bmp图片不支持 BombMan.win32.exe 中的 0x10007f50 (libcocos2d.dll) 处最可能的异常: 0xC0000005: 写入位置 0x0000000c 时发生访问冲突 “BombMan.…
« 对Cocos2d游戏引擎有一定的了解和实践,并接触过处理3D图形和模型库的OpenGL 在进行游戏界面的绘制工作中,需要处理大量的工作,这些工作有很多共性的操作:并且对于游戏界面的切换,元素动作的处理,都已经有人做好了这些工作,并将其封装到框架中,其中Cocos2d-android就是这样一个框架. Cocos2d实现游戏的绘制: 1.实现步骤: 首先来说,要想绘制出游戏界面,按照谷歌文档中的说明,需要实现两步操作: ①.所有的SurfaceView和SurfaceHolder.Callba…
Cocos2d-x坐标系和OpenGL坐标系相同,都是起源于笛卡尔坐标系(高中数学里面那种). 笛卡尔坐标系 笛卡尔坐标系中定义右手系原点在左下角,x向右,y向上,z向外,OpenGL坐标系为笛卡尔右手系. 屏幕坐标系和Cocos2d坐标系 标准屏幕坐标系使用和OpenGL不同的坐标系,而Cocos2d则使用和OpenGL相同的坐标系. iOS, Android, Windows Phone等在开发应用时使用的是标准屏幕坐标系,原点为屏幕左上角,x向右,y向下. Cocos2d坐标系和OpenG…
无论是搞2d还是3d开发,最需要搞清楚的就是坐标系,这部分混乱的话就没啥搞头了.所以玩cocos2d,一上来就需要先把各种与坐标有关的东西搞清楚. 1.OpenGL坐标系 Cocos2d-x使用的是OpenGL坐标系,原点在屏幕的左下角,x轴向右,y轴向上,也称为笛卡尔坐标系 2.标准屏幕坐标系 屏幕坐标默认原点是在左上角,x轴向右,y轴向下.安卓.IOS的屏幕触摸事件传入的位置信息使用的是该坐标.因此在cocos2d中对触摸事件做出响应前需要把触摸点转化为GL坐标,这里Cocos2d-x已经帮…
Cocos-2d中,涉及到4种坐标系: GL坐标系Cocos2D以OpenglES为图形库,所以它使用OpenglES坐标系.GL坐标系原点在屏幕左下角,x轴向右,y轴向上. 屏幕坐标系苹果的Quarze2D使用的是不同的坐标系统,原点在屏幕左上角,x轴向右,y轴向下.ios的屏幕触摸事件CCTouch传入的位置信息使用的是该坐标系.因此在cocos2d中对触摸事件做出响应前需要首先把触摸点转化到GL坐标系.可以使用CCDirector的convertToGL来完成这一转化. 世界坐标系也叫做绝…
一张图了解cocos2d坐标系 平面直角坐标系…
Cocos-2d中,涉及到4种坐标系: GL坐标系:Cocos2D以OpenglES为图形库,所以它使用OpenglES坐标系.GL坐标系原点在屏幕左下角,x轴向右,y轴向上. getLocation()返回GL坐标系坐标点 屏幕坐标系:苹果的Quarze2D使用的是不同的坐标系统,原点在屏幕左上角,x轴向右,y轴向下. getLocationInView()返回屏幕坐标系坐标点.  ios的屏幕触摸事件CCTouch传入的位置信息使用的是该坐标系.因此在cocos2d中对触摸事件做出响应前需要…
一.笛卡儿坐标系 OpenGl坐标系为笛卡儿右手系.x向右,y向上,z向外.在cocos2d-lua中坐标系原点在屏幕的左下角,x向右,y向上,z则是指的zorder(层级). 二.世界坐标系,本地坐标系 世界坐标系的原点固定在屏幕的左下角. 本地坐标是和节点相关的坐标系,每个节点都有独立的坐标系,是以节点左下角为原点.当节点移动或改变方向时,和该节点关联的坐标系将随之移动或者改变方向. 三.锚点 锚点Anchor Point的两个参数范围在0-1 之间,他们是乘数因子.比如(0.5,0.5)表…
1.笛卡尔坐标系 左手坐标系(Direct3D坐标系),右手坐标系(Direct3D坐标系) 大拇指和食指分别相应x轴和y轴 2.UI坐标系 iOS/Android/Windows SDK中的通用UI坐标系 1)起点坐标(x=0, y=0)位于左上角 2)X轴从屏幕最左边開始.由左向右渐增 3)Y轴坐标从屏幕最上方開始,由上向下渐增 3.2d世界中我们使用xy轴的坐标系 起点坐标(x=0, y=0)位于左下角,这意味着屏幕位于 X轴从屏幕最左边開始,由左向右渐增 Y轴坐标从屏幕最下方開始.由下向…
疑惑一:在事件分发中修改订阅者 ,对于这个的理解. 事件的分发是可以嵌套的,cocos2dx使用_inDispatch来保存当前嵌套的深度,当调用第一个dispatchEvent的时候,_inDispatch=0,表示之前没有事件在分发,这是第一次 进行事件的分发.先看一下 dispatchEvent(Event* event)的源码,这个方法就是开始分发事件的时候的方法 代码的大体步骤就是 1 updateDirtyFlagForSceneGraph();,这个我也没研究,暂时不用管它,不影响…
OpenGL 坐标系 :   原点在屏幕左下角,x 轴向右,y 轴向上. UI坐标体系       :   原点在屏幕左上角,x 轴向右,y 轴向下. 屏幕坐标系:    UI 世界坐标系:  也叫绝对坐标系 :   GL,是窗口的坐标系,原点在窗口的左下角. 本地坐标系: 节点坐标系:  是Node的坐标体系,GL.每个节点都有自己的坐标系, 所以和世界体系不同的是,它的原点是节点的左下角. !!!当一个节点调用setPosition时, 使用的参数是它的父节点(渲染树)的坐标体系. !!!C…
UI坐标系与OpenGL坐标系 UI坐标就是Android和IOS等应用开发时候使用的二维坐标系,原点在左上角 OpenGL坐标是三维坐标,由于Cocos2d-x Lua 底层采用OpenGL渲染,因此默认坐标就是OpenGL坐标,只不过采用了两维(XY轴),不考虑Z轴,OpenGL的坐标原点在左下角 获得UI坐标 cc.p touchLocation = touch:getLocationInView() UI坐标转换为OpenGL坐标 cc.p touchLocation2 = cc.Dir…
游戏的在进行一次渲染的时候,通常会提交大量的渲染对象给gpu.在这些需要渲染的对象中,并不是所有对象都会出现镜头中,即有一部分对象是不可见的. 通常有两种方式来完成不可见对象的剔除工作: (1)直接交给图形库帮我剔除,即性能消耗在gpu端: (2)在提交图元给gpu前,在游戏逻辑中进行剔除,即性能消耗在cpu端: 是将剔除操作放在cpu还是gpu来处理,没有一个具体的标准,个人认为,要根据实际情况,如果逻辑方面可以快速进行剔除,可以交由cpu来处理,但是gpu在这方面经过了优化,具有更快的处理能…
(原文出处找不到了) 无论是搞2d还是3d开发,最需要搞清楚的就是坐标系,这部分混乱的话就没啥奔头了.所以玩cocos2d,一上来就先把各种与坐标有关的东西搞清楚. 基本的两个坐标系:屏幕坐标系和GL坐标系. 屏幕坐标系x轴朝右,y轴朝下.默认原点在左上角. GL坐标系x轴朝右,y轴朝上.默认原点在左下角. 在调用任何需要设置位置的函数,或从函数获取位置信息前,必须要明确这个函数使用哪个坐标系.比如调用CCNode类的setPosition函数,它使用的就是GL坐标系.比如在处理触摸事件时CCT…
anchor point 究竟是怎么回事? 之所以造成不容易理解的是因为我们平时看待一个图片是 以图片的中心点 这一个维度来决定图片的位置的.而在cocos2d中决定一个 图片的位置是由两个维度 一个是 position  另外一个是anchor point.只要我们搞清楚他们的关系,自然就迎刃而解. 默认情况下,anchor point在图片的中心位置(0.5, 0.5),取值在0到1之间的好处就是,锚点不会和具体物体的大小耦合,也即不用关注物件大小,而应取其对应比率,如果把锚点改成(0,0)…
转自:http://home.cnblogs.com/group/topic/57609.html cocos2d坐标系(OPenGL坐标系):以左下角为原点,x向右,y向上 屏幕坐标系(android,ios,win32系统的坐标系):以左上角为原点,X轴向右为正,y轴向下为正 在cocos2dx的test例子中: void TestController::ccTouchesBegan(CCSet *pTouches, CCEvent *pEvent) { CCSetIterator it =…
Cocos2d-x 3.0坐标系详解 Cocos2d-x坐标系和OpenGL坐标系相同,都是起源于笛卡尔坐标系. 笛卡尔坐标系 笛卡尔坐标系中定义右手系原点在左下角,x向右,y向上,z向外,OpenGL坐标系为笛卡尔右手系. 屏幕坐标系和Cocos2d坐标系 标准屏幕坐标系使用和OpenGL不同的坐标系,而Cocos2d则使用和OpenGL相同的坐标系. iOS, Android, Windows Phone等在开发应用时使用的是标准屏幕坐标系,原点为屏幕左上角,x向右,y向下. Cocos2d…
注:ccp是cocos2dx中的一个宏定义,#define ccp(__X__,__Y__)CCPointMake((float)__X__, (float)__Y__),在此文章中表示坐标信息 1.笛卡尔坐标系 你可能在学校的几何学上已经知道笛卡尔坐标系.如果你忘记了,下面的图片可以让你回忆一下: 有3中类型的坐标系在游戏开发中你会用的到. 1)UI坐标系: 一般用于iso.android.windows sdk中: 原点(x=0,y=0)在左上角. x方向从左侧向右侧递增. y方向从屏幕顶部…
在介绍CCSprite之前,先要理解游戏开发中的一个核心概念:精灵.精灵也称为游戏对象,它能够用来表示游戏中的不论什么物体,比方敌人.子弹.甚至是一个背景图片.一段文字.CCSprite能够说是在cocos2d中最经常使用的一个类,能够称之为"精灵类",它能够以图片的形式将精灵显示到屏幕上. 创建精灵 在谈怎么创建一个精灵之前,先了解下游戏开发中还有一个核心概念:纹理.纹理事实上就是用来描写叙述物体表面细节的图形,也称为纹理贴图,把纹理依照特定的方式映射到物体表面上的时候能使物体看上去…
在Cocos2d-x中坐标能够分成四种: 1.GL坐标体系:GL坐标体系左下角为坐标原点,X轴向右,Y轴向上 2.UI坐标体系:UI坐标体系左上角为坐标原点,X轴向右,Y轴向上. .世界坐标体系:是窗体的坐标体系,它是GL坐标体系,它是左下角为坐标原点,X轴向右,Y轴向上. 4. 结点坐标体系:是Node的坐标体系,它是GL坐标体系,和世界坐标体系不同的是,它的原点是结点的左下角,     当一个结点调用SetPosition时,使用的參数是它的父结点(渲染树)的坐标体系 CCLayer默认大小…
大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请告诉我,如果觉得不错请多多支持点赞.谢谢! hopy ;) 免责申明:本博客提供的所有翻译文章原稿均来自互联网,仅供学习交流之用,请勿进行商业用途.同时,转载时不要移除本申明.如产生任何纠纷,均与本博客所有人.发表该翻译稿之人无任何关系.谢谢合作! OK,基于以上讨论,这里是本次Cocos2D之旅中的素材准备工作: 素材将被设计在960x640大小的"可玩区域"中,在高清iphone中全屏显示,而在ipad中居…
大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请告诉我,如果觉得不错请多多支持点赞.谢谢! hopy ;) 免责申明:本博客提供的所有翻译文章原稿均来自互联网,仅供学习交流之用,请勿进行商业用途.同时,转载时不要移除本申明.如产生任何纠纷,均与本博客所有人.发表该翻译稿之人无任何关系.谢谢合作! 高清显示和Cocos2D 好吧,有一个好消息 - 在最新版本的Cocos2D中包括了高清屏的完整支持,你可以用下面1-2-3步就可简单搞定! 在调用CCDirector的en…
大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请告诉我,如果觉得不错请多多支持点赞.谢谢! hopy ;) 掩饰和CCRenderTexture CCRenderTexture是一个让你在屏幕以外缓存中绘制的类. 它的便捷有很多理由 - 你可以使用它去在你的游戏中截屏,用户绘制更为高效的缓存,在运行时动态创建精灵表集(sheets),或者我们将用来这个目的 - 帮助我们掩饰一个精灵. 为了使用CCRenderTexture,你要执行以下步骤: 创建CCRenderTe…
Cocos2D的坐标(0,0)点在屏幕的左下角,然后x和y的坐标值像右上角逐渐增加. 因为项目一般是横屏(landscape)模式,这表示右上角坐标在3.5寸屏上为(480,320), 在4寸屏上为(568,320). 注意:如果你曾经在iOS上编写过程序的话,你会提出质疑:等一下!我记得在4寸屏上是1136x640像素而不是536x320像素啊! 你是对的!但是Cocos2D工作在点上,而不是像素上.在高清屏设备上(Retina display devices),1点 = 2像素,所以1136…
GL坐标系 Cocos2D以OpenglES为图形库,所以它使用OpenglES坐标系.GL坐标系原点在屏幕左下角.x轴向右.y轴向上. 屏幕坐标系 苹果的Quarze2D使用的是不同的坐标系统,原点在屏幕左上角,x轴向右,y轴向下. ios的屏幕触摸事件CCTouch传入的位置信息使用的是该坐标系. 因此在cocos2d中对触摸事件做出响应前须要首先把触摸点转化到GL坐标系.能够使用CCDirector的convertToGL来完毕这一转化. 世界坐标系 世界坐标系也叫做绝对坐标系,是游戏开发…
cocos2d-x:OpenGL坐标系.绝对坐标系.相对坐标系.屏幕坐标系 cocos2d-x采用的是笛卡尔平面坐标系,也就是平面上两条垂直线构成的坐标系,平面上任意一点都可以用(x,y)来表示. (1)就坐标系方向而言,cocos2d-x分为屏幕坐标系和OpenGL坐标系. (2)就节点本身而言,cocos2d-x分为绝对坐标系和相对坐标系. 1.屏幕坐标系 屏幕坐标系,也叫UIKit坐标系,原点在屏幕左上,x轴向右,y轴向下.cocos2d-x的屏幕触摸事件传入的位置坐标就是采用了屏幕坐标系…