溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

十一:Cocos2d-x坐標系

發(fā)布時間:2020-07-27 11:17:07 來源:網(wǎng)絡 閱讀:777 作者:lambdaX 欄目:游戲開發(fā)

OPENGL坐標系: 原點在左下角,x軸向右,y軸向上     (OpenGL 是右手坐標系 Direct3D 是左手坐標系)

                                          右手坐標系: 拇指指向X軸正向,食指指向Y軸正向,中指指向Z軸正向;


屏幕坐標系:     原點在左上角,x軸向右,y軸向下 。

                               比如觸摸事件傳進來的就是觸摸點在屏幕坐標系下的位置,處理時要先把觸摸點坐標     轉(zhuǎn)化為OPENG坐標,使用CCDirector的comvertToGL 來完成。


世界坐標系:    原點在左下角,x軸向右,y軸向上。(以第三方為參考)

                               也叫絕對坐標系,是游戲世界的坐標系。


本地坐標系:   原點在父節(jié)點的左下角,x軸向右,y軸向上。參考物是自己,精靈或者物體。(向左,向右)

                              從Node節(jié)點拿到的坐標是本地坐標系坐標, 也就是父節(jié)點的節(jié)點坐標系。 如果父節(jié)     點是場景樹中的頂層節(jié)點,那么他使用的節(jié)點坐標系就和世界坐標系重合。此坐標表示                                 的是相對位置。例如Node1相對于Node2的坐標。


錨點:   錨點是貼圖節(jié)點的中心點,一般默認(0.5,0.5) 即中心位置,(1.0,1.0是右上角)。變換時錨點 的值會影響變換效果。

             主要是相對于模型坐標而言。convert函數(shù)中帶AR表示相對于錨點。


        Node的坐標點就是錨點的坐標。另外Node還有原點(模型左下角)和大?。ㄓ赡P拖袼貨Q定),錨點和Node的大小共同決定了Node的位置。


       在調(diào)用任何需要設置位置的函數(shù),或從函數(shù)獲取位置信息前,必須要明確這個函數(shù)使用哪個坐標系。比如調(diào)用CCNode類的setPosition函數(shù),它使用的就是GL坐標系。比如在處理觸摸事件時CCTouch對象中的坐標就是屏幕坐標系。

        要盡可能用相對坐標。換句話說,程序中所有對象在設置大小和位置時,都應該以父對象的大小和位置為依據(jù)。 這樣程序發(fā)布在以各種不同的分辨率發(fā)布時,只需要調(diào)整根對象的大小就可以了。


向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。

AI