Cocos2d-x v3.1 座標系統(五)

來源:互聯網
上載者:User

標籤:style   blog   http   tar   com   get   

Cocos2d-x v3.1 座標系統(五)

 

    為了能夠更好的布局以及瞭解對象所在的位置,我們必須對Cocos2d-x中的座標有詳細的瞭解,本篇文章主要就是瞭解Cocos中用到的座標系統。學過數學的人都知道“笛卡兒座標系統”,在“笛卡兒座標系統”中又分為了左手座標系和右手座標系。我們所瞭解的Direct3D和OpenGL分別使用了“左手座標系統”和“右手座標系統”,那Cocos2d-x使用的是什麼樣的做座標系統呢?由於Cocos2d-x是基於OpenGL開發的當就使用了右手座標系統。由於Cocos2d-x是一個2D的遊戲引擎所有我們只用到了X和Y軸。

    前面只是普及了哈座標系統的概念,那究竟在Cocos2d-x中有幾個座標系統呢?

 

1. OpenGL座標系

    座標原點在螢幕的左下方,X軸向右為正,Y軸向上為正。如:

 

                            圖.1

2. 全局座標系

    也叫絕對座標系,原點與OpenGL座標系原點位置一致。“世界”指遊戲世界,它建立了描述其他座標系所需要的參考標準。.1

3. 螢幕座標系統

    也叫UI座標系,主要用於我們在觸控螢幕幕時,那個觸摸點就是傳入的螢幕座標,原點在左上方X軸向右為正,Y軸向下為正。

 

                                    圖.2

4. 本地座標系

    也叫相對座標系,它是相對於父節點的。它的座標原點在父物件的左下角。假設我們在情境中有兩個對象Node1和Node2.Node1是Node2的父節點,Node1的位置是Vec2(200, 200)。Node2的位置為Vec(0,0),錨點為Vec2(0.5, 0.5),此時Node2的位置就是相對位置,它是相對於Node1的。效果.3所示:

  

                           圖.3

錨點

    錨點就是對象(Node及派生對象)的一個錨點,我們對於對象的定位,旋轉都是基於錨點的。預設對象的錨點是Vec2(0.5, 0.5)也就是在對象的中心。如.4所示:

         圖.4

中間那個紅點就是錨點,當然我麼也可以把錨點設定到其他位置。比如我們將它的錨點設定為Vec2(0, 0)。也就是對象的左下角。.5所示:

         圖.5

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.