1. 程式人生 > >Cocos Creator 節點 cc.Node

Cocos Creator 節點 cc.Node

1.簡介

    節點(cc.Node)是渲染的必要組成部分。所有需要在遊戲場景中顯示的內容都必須是節點或者依附於節點之上。節點負責控制顯示內容的位置、大小、旋轉、縮放、顏色等資訊。

 2.節點屬性

1: name: 獲取節點的名字
2: active: 設定節點的可見性;
3: position: 相對座標,參照物是父親節點;
4: rotation: 旋轉,順時針為正, 數學逆時針為正;
5: scale:  縮放;
6: anchor: 錨點, 左下角(0, 0), 右上角(1, 1) 可以超過這個範圍可以
7: Size: 大小
8: Color: 環境顏色;
9: Opacity: 透明度, 
10: Skew: 扭曲;
11: Group: 分組;
12: parent: 父親節點的cc.Node;
13: children/childrenCount: 孩子節點的陣列;
14: tag : 節點標籤; 

    屬性檢查器上顯示如下圖:

     2.1 位置(Position):指定了節點錨點所在的相對座標,由兩個屬性X和Y組成。

     2.2 旋轉(Rotation):指以錨點為中心,旋轉屬性只有一個值,即旋轉角度,單位為度(°)。

     2.3 縮放(Scale):由兩個屬性X和Y組成,代表橫向縮放和縱向縮放,預設值為1,即100%。

     2.4 錨點(Anchor):是節點位置的參照點,也是自身旋轉、縮放的基準點。同時錨點也是該節點的子節點的座標原點。取值【0,0】~【1,1】,左下角為【0,0】,右上角為【1,1】,中心為【0.5,0.5】。

     2.5 尺寸(Size)

:本節點的大小,對節點自身沒有太多影響,但是會影響節點上的元件。比如常見的精靈元件會根據節點尺寸對渲染圖片進行縮放。

     2.6 顏色(Color):節點的顏色,影響本節點及其所屬元件的渲染,以及其子節點和其他所屬元件的渲染。在不透明的情況下,設定節點顏色會直接疊加到節點與所屬元件的渲染效果上,並影響子節點。

     2.7 透明度(Opacity):節點的透明度。取值0~255,0為透明,255為完全不透明,128位半透明。會影響本節點(包括子節點)及其所屬元件的渲染。

     2.8 傾斜值(Skew):節點的傾斜角度,斜向拉伸,0的效果與180一樣。

     2.9 分組(Group)

:任意字串,不可重複。節點分組是為了屬性判斷和物理碰撞。

3.子節點

     每個節點都有自己的父節點(parent),父節點與子節點(child)以一對多的形式成樹形結構(即場景樹)。最根部的節點以根節點(cc.Canvas 畫布 Cocos Creator預設根節點)為自己的父節點。通常使用者自定義節點都會在畫布的子節點或者更深層的子節點。

     子節點的節點屬性受父節點的屬性影響:位置、旋轉和縮放均是相對於父節點的錨點為原點的(具體詳見第11節點座標會講到本地座標和相對座標之間的轉換)。

4.節點與渲染

    2D世界不存在近大遠小,但是需要明確其遮擋關係。Cocos Creator通過渲染順序來處理遮擋問題,後渲染的圖形會擋住先渲染的圖形,下面介紹如何控制渲染與遮擋。

     4.1 同級別遮擋

     4.2 不同級別遮擋

5.元件指令碼與場景節點關聯

    Cocos Creator通過把元件指令碼新增到場景節點中的方式,把視覺化編輯器和程式碼聯絡到一起。

    5.1 元件指令碼關聯節點:首先選中希望新增此元件的場景節點,在“屬性檢查器”中單擊“新增元件”-->“新增使用者指令碼元件”-->選擇自定義的元件指令碼;也可以直接選擇指令碼按滑鼠左鍵拖拽到指定的節點“屬性檢查器“上即可。

    5.2 刪除關聯: 在屬性檢查器中,選擇指定的指令碼元件,單擊元件右上角的圖示,選擇“Remove”即取消當前節點與元件的關聯

6.程式碼獲取其他節點

     指令碼開發是遊戲設計中重要的一環,可以參考 內容。

7.程式碼建立和銷燬節點