在cocos2d-x在,有几种不同的坐标系。

因为有好几个坐标系着一定的差异,他们需要明白,能力更精确的绘制各种图形画面上。

1.屏幕坐标系

只windows通过绘制图形上基本都知道。相应的坐标系统:原点在左上角。向右是x轴正方向,向下时y轴正方向。cocos2d-x中的屏幕坐标系也是这种。我们手机的屏幕就是相应的屏幕坐标系。当我们用手点击手机屏幕,得到的点就是相应的屏幕坐标系的坐标。

2.OpenGL坐标系

OpenGL坐标系是在cocos2d-x中进行计算时使用的坐标系。它的原点是屏幕左下角,向右是x轴正方向,向上市y轴正方向。因为它与屏幕坐标系不一样,所以当我们得到屏幕坐标系下的坐标时,得先将其转换为OpenGL坐标系下的坐标,才干进行对应的计算,如触屏事件中,得到的坐标,每次都得先进行转换。将屏幕坐标转换为OpenGL坐标,能够使用CCDirector的convertToGL函数。

3.世界坐标系

一个游戏就相当于一个虚拟的世界。在这个游戏世界中。每一个物体都有它相相应的位置,亦就是坐标。所以能够说世界坐标系就是相应于整个游戏的坐标系,是一个物体在游戏世界里的绝对坐标系。

4.相对坐标

虽然我们在设置物体的坐标的时候能够直接定义它在世界坐标系中的绝对坐标。可是在cocos2d-x中使用较多的却是相对坐标。由于在cocos2d-x中是以树的形式组织对象的,所以一个子节点对象的坐标系仅仅參考它的父节点对象。所以叫作相对坐标。

就好比一个人,在汽车里,无论汽车在地面上怎么开动,仅仅要这个人在汽车上保持不动。他在相对于汽车的坐标系里面的坐标是不变的。cocos2d-x中的setPosition函数设置的就是其相对于父节点的坐标。而不是世界坐标。

设置相对坐标的优点是显而易见的。一个物体可能有非常多部分组成,当须要移动或者总体旋转缩放时,我们能够把它增加一个CCNode里面。然后直接到CCNode操作到。便利。

版权声明:本文博客原创文章,博客,未经同意,不得转载。

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

  1. cocos2D(五岁以下儿童)---- CCNode

    本将主要介绍下CCNode这个类.CCNode是全部节点的基类,当中包含我们经常使用的CCScene(场景).CCLayer(图层).CCSprite(精灵)等.它是一个不可以可视化显示的抽象类,仅仅 ...

  2. 五、CCNode

    本将主要介绍下CCNode这个类,CCNode是所有节点的基类,其中包括我们常用的CCScene(场景).CCLayer(图层).CCSprite(精灵)等,它是一个不能够可视化显示的抽象类,只是用来 ...

  3. flash 动画数据导出 到 coco2d-js ,cocos2d-x 问题的记录

    1:必须搞清flash坐标系 和 cocos2d 的坐标系的差异2:对于cocos2d系列坐标系的深入理解: 以前我们常认为 coco2d-x的X,Y是相对坐标系,相对于父节点的X,Y的坐标,这种说法 ...

  4. cocos2d-x学习笔记

    转自:http://blog.csdn.net/we000636/article/details/8263503 接受触屏事件的优先级是值越小,响应触屏事件的优先级越高 Z值越大,越外面 JNI:允许 ...

  5. UML设计,可以设计程序的用例图、类图、活动图等_SurfaceView

    « 对Cocos2d游戏引擎有一定的了解和实践,并接触过处理3D图形和模型库的OpenGL 在进行游戏界面的绘制工作中,需要处理大量的工作,这些工作有很多共性的操作:并且对于游戏界面的切换,元素动作的 ...

  6. Cocos2d坐标系转换

    Cocos2d-x坐标系和OpenGL坐标系相同,都是起源于笛卡尔坐标系(高中数学里面那种). 笛卡尔坐标系 笛卡尔坐标系中定义右手系原点在左下角,x向右,y向上,z向外,OpenGL坐标系为笛卡尔右 ...

  7. 【Cocos2d入门教程七】三分钟看懂Cocos2d坐标系

    无论是搞2d还是3d开发,最需要搞清楚的就是坐标系,这部分混乱的话就没啥搞头了.所以玩cocos2d,一上来就需要先把各种与坐标有关的东西搞清楚. 1.OpenGL坐标系 Cocos2d-x使用的是O ...

  8. Cocos-2d 坐标系及其坐标转换

    Cocos-2d中,涉及到4种坐标系: GL坐标系Cocos2D以OpenglES为图形库,所以它使用OpenglES坐标系.GL坐标系原点在屏幕左下角,x轴向右,y轴向上. 屏幕坐标系苹果的Quar ...

  9. 一张图了解cocos2d坐标系

    一张图了解cocos2d坐标系 平面直角坐标系

  10. Cocos-2d 坐标系

    Cocos-2d中,涉及到4种坐标系: GL坐标系:Cocos2D以OpenglES为图形库,所以它使用OpenglES坐标系.GL坐标系原点在屏幕左下角,x轴向右,y轴向上. getLocation ...

随机推荐

  1. Eclipse背景和匹配出现单词的一些设置

    Eclipse的背景色和关键词的设置这里就不多说了,只说明设置路径: 背景色:[Window]--->[Preference]-->[General]--->[Editors]--- ...

  2. 五种情况下会刷新控件状态(刷新所有子FWinControls的显示)——从DFM读取数据时、新增加子控件时、重新创建当前控件的句柄时、设置父控件时、显示状态被改变时

    五种情况下会刷新控件状态(刷新控件状态才能刷新所有子FWinControls的显示): 在TWinControls.PaintControls中,对所有FWinControls只是重绘了边框,而没有整 ...

  3. 在ListCtrl控件中设置自定义光标

    ::SetCursor(::LoadCursor   (::AfxGetInstanceHandle(),   MAKEINTRESOURCE(IDB_BMP_MOUSE))); void   CMy ...

  4. CentOS6.5与window远程桌面配置

    VNC配置手冊 一.服务端 VNC(Virtual Network Computing)是一种Linux系统(或者BSD.Mac等)下经常使用的图形化远程管理工具.使用的是RFB协议.VNC跟SSH一 ...

  5. c++实用技巧

    原地址:http://www.cnblogs.com/easymind223/articles/2576904.html 晚上的时间总是习惯性的在cnblogs逛街,今天又看到了好文章,其c++味道浓 ...

  6. PyMOTW: heapq¶

    PyMOTW: heapq — PyMOTW Document v1.6 documentation PyMOTW: heapq¶ 模块: heapq 目的: 就地堆排序算法 python版本:New ...

  7. php 用递归实现的无限级别分类

    <?php header("Content-type:text/html; charset=utf-8"); /**  *   * @category contry_cate ...

  8. copy算法

     copy------强化效率无所不用其极 copy(first,last,result)算法可将输入区间[first,last)内的元素拷贝到输出区间[result,result+(last-f ...

  9. Photoshop理论:另外一种角度看图层混合模式

    源地址:http://www.missyuan.com/thread-687724-1-4.html 1.我将一个色阶看成是一个由亮部和暗部组成的这么一个元素,亮部是我们看的见的,暗部是影响亮部的,有 ...

  10. keil提示:missing ';' before 'XXX'但又找不到是哪里少了分号——已解决!

    今天写一个51程序,keil在编译时总提示丢失了一个分号,但怎么都找不到是哪里丢失了分号,搞了一下午才解决问题,现在把经验在此分享,以求让他人不要犯同样的错误!提示信息为: LCD12864.H(20 ...