【iOS-Cocos2d游戏开发】cocos2d 坐标系使用
无论是搞2d还是3d开发,最需要搞清楚的就是坐标系,这部分混乱的话就没啥奔头了。所以玩cocos2d,一上来就先把各种与坐标有关的东西搞清楚。
基本的两个坐标系:屏幕坐标系和GL坐标系。
GL坐标系
Cocos2D以OpenglES为图形库,所以它使用OpenglES坐标系。GL坐标系x轴朝右,y轴朝上。默认原点在左下角。
屏幕坐标系
苹果的Quarze2D使用的是不同的坐标系统,屏幕坐标系原点在屏幕左上角,x轴向右,y轴向下。ios的屏幕触摸事件CCTouch传入的位置信息使用的是该坐标系。因此在cocos2d中对触摸事件做出响应前需要首先把触摸点转化到GL坐标系。
在调用任何需要设置位置的函数,或从函数获取位置信息前,必须要明确这个函数使用哪个坐标系。比如调用CCNode类的setPosition函数,它使用的就是GL坐标系。比如在处理触摸事件时CCTouch对象中的坐标就是屏幕坐标系。所以他们之间相互转换就变的比较重要了
GL坐标=====>屏幕坐标
CGPointtouchGL=ccp(x,y);//GL坐标X,Y
CGPoint touchScreen=[[CCDirector sharedDirector] convertToUI: touchScreen];//转换为屏幕坐标
屏幕坐标=====>GL坐标
CGPointtouchScreen=ccp(x,y);//屏幕坐标X,Y
CGPoint touchGl=[[CCDirector sharedDirector] convertToGL: touchScreen];//转换为GL坐标
分享到:
相关推荐
【iOS-Cocos2d游戏开发】Cocos2d-iPhone动作Action-扩展动作 http://blog.csdn.net/tt5267621/article/details/7626450
【iOS-Cocos2d游戏开发】Cocos2d-iPhone动作Action-瞬时动作 http://blog.csdn.net/tt5267621/article/details/7624781
【iOS-Cocos2d游戏开发】Cocos2d-iPhone动作Action-组合动作 http://blog.csdn.net/tt5267621/article/details/7626137
【iOS-Cocos2d游戏开发】Cocos2d-iPhone动作Action-延时动作 http://blog.csdn.net/tt5267621/article/details/7625309
【iOS-Cocos2d游戏开发】Cocos2d-iPhone动作Action-组合动作 http://blog.csdn.net/tt5267621/article/details/7626094
【iOS-Cocos2d游戏开发之二十二 】CCSpeed实现CCAnimate动画进行时设置慢动作以及设置游戏加减速进行(塔防游戏必备)! http://blog.csdn.net/xiaominghimi/article/details/7009503
【iOS-Cocos2d游戏开发】触屏事件处理机制 http://blog.csdn.net/tt5267621/article/details/7631729
iOS实例开发源码——iliu-ios-cocos2d-viking-cba07f8.zip
《iOS5 cocos2d游戏开发实战(第2版)》免费P
iOS游戏应用源代码——iliu-ios-cocos2d-viking-cba07f8.zip
iOS 5 cocos2d游戏开发实战(第2版)
iOS实例开发源码——iOS-Gamer-Cocos2D-86714e3.zip
Mac-OS-X-配置-Cocos2d-x-开发环境(iOS-和-Android).doc
iOS游戏应用源代码——iOS-Gamer-Cocos2D-86714e3.zip
12-IOS游戏开发Cocos2d.pdf
2:双击某个点,放大这块,并且控制了地图不能出边界 写了个场景缩放类,但地图碰到一个很奇怪的问题,可以探讨下,场景用的tileMap地图,缩放后会有一些黑线,很纠结,目前没找到解决方案,有答案的告诉我下,谢谢! 直接...
【iphone游戏开发】iphone-Cocos2d游戏开发之三:精灵表的详细讲解(二)小鸟眨眼睛
游戏开发之Cocos2D游戏引擎教程-cocos builder,cocos studio,cocos2d
无论是开发2D还是开发3D游戏,首先必须弄清楚坐标系的概念。在Cocos2d-x中,需要了解的有OpenGL坐标系、世界坐标系和节点坐标系。
github地址: https://github.com/LLSkittles/cocos2d-iphone-demo