cocos2d-x学习之坐标体系
2013-04-22 23:17
337 查看
在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的本地坐标系中
版权信息:原创文章:咸蛋博客
本文标题:cocos2d-x学习之坐标体系
本文链接:http://xiandanboke.com.cn/?p=782转载请注明转自咸蛋博客
屏幕坐标系: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的本地坐标系中
版权信息:原创文章:咸蛋博客
本文标题:cocos2d-x学习之坐标体系
本文链接:http://xiandanboke.com.cn/?p=782转载请注明转自咸蛋博客
相关文章推荐
- 我的Cocos2d-x学习笔记(六)坐标体系与锚点
- 我的Cocos2d-x学习笔记(六)坐标体系与锚点
- cocos2d-X学习之坐标系统
- 【麦可网】Cocos2d-X跨平台游戏开发学习笔记---第十课:Cocos2D-X坐标系统1
- cocos2d-x 菜鸟实习生学习篇-菜单坐标
- cocos2d-X学习之坐标系统
- 基础学习笔记之opencv(23):OpenCV坐标体系的初步认识
- cocos2d-x 的opengl坐标体系
- Cocos2d-x学习笔记之CCScene、CCLayer、CCSprite的默认坐标和默认锚点实验
- 基础学习笔记之opencv(23):OpenCV坐标体系的初步认识
- cocos2d-x 3.0游戏实例学习笔记《卡牌塔防》第四步---编辑器(3)--坐标保存&加载文件操作
- (学习笔记2)Cocos2d-x中坐标的问题
- cocos2d-x 坐标体系
- 【麦可网】Cocos2d-X跨平台游戏开发学习笔记---第十一课:Cocos2D-X坐标系统2-3
- cocos2d-X学习之坐标系统
- 基础学习笔记之opencv(23):OpenCV坐标体系的初步认识
- cocos2D-X源码分析之从cocos2D-X学习OpenGL(9)----变换和坐标系统
- Unity学习疑问记录之坐标体系
- cocos2d-x(2.2) 学习之坐标转换
- Three.js 学习笔记(1)--坐标体系和旋转