我开始学习cocos2d,我想知道为什么我们实际使用来自CCDirector的convertToGL,[[CCDirector sharedDirector] convertToGL: touchLoc];
当我们已经拥有来自[touch view]
的{{1}}
?
另外,我们首先“addChild”一个包含图像的CCSprite,然后我们设置它的主体,ccsprite成为这个主体的数据用户。不会更好地“添加孩子”身体吗?或者它是出于任何特定目的?
谢谢
答案 0 :(得分:12)
这是因为OpenGL视图(EAGLView类)使用的坐标系与Cocoa Touch不同。
例如,Cocoa Touch的0,0位置位于左上角,而OpenGL的0,0位置位于左下角。这就是为什么你需要“转换为GL”所有UIView坐标。
转换还会考虑当前的设备方向。