(转)cocos2d-X学习之坐标系统
来源:互联网 发布:淘宝上面卖中药的店 编辑:程序博客网 时间:2024/05/29 04:38
cocos2d-X学习之坐标系统
在cocos2d-x中有两种坐标系,分别是屏幕坐标系和open gl坐标系。
屏幕坐标系:x轴朝右,y轴朝下。默认原点在左上角,如下图:
这个是一般的图形系统使用的坐标,也是windows系统的默认坐标体系。但由于cocos2d-x引擎使用的是open gl es进行渲染的,所以其默认是用的OpenGL坐标体系,如下图:
在opengl坐标体系中有两个非常重要的参数,即锚点和位置。
锚点作为位置的参考点,锚点在设置某一个物件(如CCSprite,CCLayer)的位置时,其参照位置,数据为(0.0-1.0)之间,默认是(0.5, 0.5),也就是说其默认参照位置是该物件的中心。如果把某一物体放到屏幕的中心,对于默认anchor来说,就是把该物体的中心放到屏幕中心 ,取值在0到1之间的好处就是,锚点不会和具体物体的大小耦合,也即不用关注物件大小,而应取其对应比率,如果把锚点改成(0,0),则进行放置位置时,以图片左上角作为起始点,也就是放置位置设置对应的点。
位置顾名思义就是物体的位置。
在调用任何需要设置位置的函数或从函数获取位置信息前,必须要明确这个函数使用的是哪个坐标系,如调用CCNode类的setPosition函数,它使用的就是GL坐标系,而在处理触摸时间时CCTouch对象在宏的坐标就是屏幕坐标。
另一个重要的坐标系就是和Node相关的本地坐标系。这个结构和一般做3D用的场景树的概念是一样的。所以从Node拿到的位置是该节点的本地坐标,需要通过特定的函数才能把本地坐标转换为世界坐标。而且这里的坐标都用的是GL坐标系。在CCNode对象中有几个方便的函数可以做坐标转换。convertToWorldSpace方法可以把基于当前node的本地坐标系下的坐标转换到世界坐标系中。convertToNodeSpace方法可以把世界坐标转换到当前node的本地坐标系中。
转自:http://www.cnblogs.com/lhming/archive/2012/07/01/2572272.html
- (转)cocos2d-X学习之坐标系统
- cocos2d-X学习之坐标系统
- cocos2d-X学习之坐标系统
- (转载)cocos2d-X学习之坐标系统
- cocos2d-X学习之坐标系统
- cocos2d-X学习之坐标系统
- cocos2D-X源码分析之从cocos2D-X学习OpenGL(9)----变换和坐标系统
- 学习3-Cocos2D-X坐标系统
- cocos2d-x坐标系统
- cocos2d-x坐标系统
- cocos2d-x坐标系统
- cocos2d-x坐标系统
- cocos2d-x坐标系统
- cocos2d-x 坐标系统
- cocos2d-x坐标系统
- cocos2d-x坐标系统
- cocos2d-x学习之坐标体系
- Cocos2d-x 详解坐标系统
- android 根据屏幕大小自行选择图片
- C#日期格式化
- python 多线程实现洗牌算法 (二)
- MySQL 数据库怎样把一个表的数据插入到另一个表
- Cocos2d-x学习之创建Android工程和编译
- (转)cocos2d-X学习之坐标系统
- 最新国内免费网盘及云盘横向评测及对比
- SA2-日志分析及管理
- Grub配置
- C++和C#进程之间通过命名管道通信(上)
- VS2008添加ActiveX控件并且生成其包装类
- 感觉到自身得不足,有了新计划
- poj3678 Katu Puzzle(2-SAT+经典建图)
- 敢想敢做,执着追求才能超越极致!------ 我的mslist之mslist_dome.c