cocos2dx座標系統學習

座標系有兩種劃分方式:屏幕UI座標和OpenGL座標。

屏幕UI座標:原點在屏幕的左上角,X軸向右,Y軸向下。ios,android和windows phone使用的是屏幕座標系。(觸屏事件中getLocationInView()方法獲取的是UI座標)

cocos2dx座標系和OpenGL座標系一樣,原點在屏幕的左下角,X軸向右,Y軸向上。(XY軸和中學課本上一致,放置精靈啊什麼的其實用的這個座標系,觸屏事件中getLocation獲取的是GL座標)。

以上兩種座標系可通過Director類的方法進行相互轉換。方法分別爲:Vec2 convertToUI(const Vec2& point)和Vec2 convertToGL(const Vec2& point);

如果我們獲取了UI座標,在給對象setpoint時需要注意轉換成GL座標。

示例如下:

Vec2 Touch_Point; (定義精靈等對象安放的座標點)

auto touch=touches.at(0);(取得多點觸屏的對象)
    //Touch_Point=Director::getInstance()->convertToGL(touch->getLocationInView());
    Touch_Point=touch->getLocation();
發佈了73 篇原創文章 · 獲贊 5 · 訪問量 14萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章