1.用ClippingNode可以實作上面的效果
![](https://img.laitimes.com/img/__Qf2AjLwojIjJCLyojI0JCLiIXZ05WZD9CX5RXa2Fmcn9CXwczLcVmds92czlGZvwVP9EUTDZ0aRJkSwk0LcxGbpZ2LcBDM08CXlpXazRnbvZ2LcRlMMVDT2EWNvwFdu9mZvwVP9EVZoRGWa9mUuJmd5EjW1Z1RkZXUYpVd1kmYr50MZV3YyI2cKJDT29GRjBjUIF2LcRHelR3LcJzLctmch1mclRXY39TM3YzM0gTMzITMxUDM1EDMy8CX0Vmbu4GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.jpg)
2.以标題作為模闆,光效經過ClippingNode(裁剪節點),裁剪掉多餘的部分
3.附帶上lua代碼
-- 1.建立模闆、ClippingNode(裁剪節點)
local stencil = display.newSprite("game_title.png")
local clipper = cc.ClippingNode:create()
clipper:setStencil(stencil)
-- clipper:setInverted(true)
clipper:setAlphaThreshold(0)
-- 2.标題和光效
local spr_title = display.newSprite("game_title.png")
local spark = display.newSprite("spark.png")
clipper:addChild(spr_title)
clipper:addChild(spark)
clipper:setPosition(cc.p(300, 300))
self:addChild(clipper)
-- 3.光效移動、自動裁剪
local sz = spr_title:getContentSize()
local move = cc.MoveTo:create(0.6, cc.p(sz.width, 0))
local delay1 = cc.DelayTime:create(0.5)
local move_back = cc.MoveTo:create(0.6, cc.p(-sz.width, 0))
local delay2 = cc.DelayTime:create(0.5)
local seq = cc.Sequence:create(delay1, move, delay2, move_back)
local repeatAction = cc.RepeatForever:create(seq)
spark:runAction(repeatAction)
4.資源代碼下載下傳位址:http://download.csdn.net/download/teng_ontheway/8688765
參考文章:
1.官方ClippingNode的使用
2.cocos2d js ClippingNode 制作标題閃亮特效 原文連結 http://www.waitingfy.com/archives/1093
3.比較詳細的ClippingNode诠釋 http://www.mamicode.com/info-detail-247772.html