Cocos2dx - 漸層 LayerGradient 的使用方式

Cocos2dx - 漸層 LayerGradient 的使用方式

📅 ・ 約 2 分鐘閱讀

功能簡介

  • LayerGradient 漸層, 可以設置兩種顏色的漸變效果
  • LayerColor 一個純色的容器

下方為兩種不同的效果圖:

LayerGradient

LayerColor

LayerGradient 為例, 創建函式有下面兩種, 通常會使用第二種, 前兩個為漸層的兩個顏色, 第三個參數是方向

/** Creates a full-screen Layer with a gradient between start and end. */
    static LayerGradient* create(const Color4B& start, const Color4B& end);
/** Creates a full-screen Layer with a gradient between start and end in the direction of v. */
    static LayerGradient* create(const Color4B& start, const Color4B& end, const Point& v);

範例 : 想要設定一個藍色到紅色的漸層, 由上而下

    auto gLayer = LayerGradient::create(Color4B::BLUE, Color4B::RED, Vec2(0, -1));

當然與一般的Node 相同, 可以透過 setContentSize 來設定該節點的大小, 以及 Position 來設定位置

    gLayer->setContentSize(Size(200, 200));
    gLayer->setPosition(10, 50);

小結: 基本上漸層的使用方式與一般節點雷同, 比較特別的應用也許是搭配 ClippingNode 做出可以移動的漸層當作 畫面呈現的一部分, 像是卡牌的雷射塗層。 但 2DX 的圖層 Blending 是使用疊加的方式, 所以看起來會比較黯淡, 需要做特別的調整。 BTW, 漸層可以設定透明度 。


最後, 我們有個關於 Cocos2d-x 的Facebook社團, 如果有任何疑難問題, 歡迎到社團發問。 Cocos2dx Taiwan 開發者社團