刮獎效果其實挺簡單的,需要用到rendertexture來進行渲染,通過你所要渲染的圖層,把該層的顏色進行設定混合就可以達到效果,具體看**,我用的lua實現的。
[cpp]view plain
copy
local winsize = cc.director:shareddirector():getwinsize();
local datasprite = cc.sprite:create("star.png"
)--要把這個刮出來
datasprite:setanchorpoint(cc.p(0.5, 0.5));
datasprite:move(winsize.width / 2.0, winsize.height / 2.0);
self:addchild(datasprite)
pearse = cc.drawnode:create()
pearse:drawdot(cc.p(0, 0), 5, cc.c4f(1, 0, 0, 1));
pearse:retain()
prtex = cc.rendertexture:create(winsize.width, winsize.height);
prtex:setposition(cc.p(winsize.width / 2, winsize.height / 2));
--this
:addchild(prtex);
prtex:retain()
local pbg = cc.sprite:create("d1.png"
);--這個作為當「油漆層」
pbg:setanchorpoint(cc.p(0.5, 0.5));
pbg:move(winsize.width / 2.0, winsize.height / 2.0);
prtex:begin();
datasprite:visit();
pbg:visit();
prtex:endtolua();
local layer=cc.layer:create()
self:addchild(layer, 1000)
layer:addchild(prtex);
layer:setnodetouch(handler(self, self.ontouchstart))
滑鼠移動**:
[cpp]view plain
copy
function shop.erasure(event)
-- body
print("erasure: "
, event.name)
--todo
print("moved"
) local touchpoint = event.pos
pearse:setposition(event.pos.x, event.pos.y);
-- 設定混合模式
local blendfunc = ;
pearse:setblendfunc(blendfunc);
-- 將橡皮擦的畫素渲染到畫布上,與原來的畫素進行混合
prtex:begin();
pearse:visit();
prtex:endtolua();
end
c++**:
void function()
bool
spriteeasebezier::ontouchbegan(touch *touch, event *unused_event)
void
spriteeasebezier::ontouchmoved(touch *touch, event *unused_event)
; pease->setblendfunc(blendfunc);
prender->begin();
pease->visit();
prender->end();
cclog("spriteeasebezier::ontouchmoved"
);
}
Cocos2d x 溶解效果實現
專案需要實現溶解效果,記錄下基本實現 實現原理 隨著時間變化計算乙個闕值 如sin time 當取樣雜訊圖紋理的rgb中的某個值低於此闕值時,目標紋理的當前片段著色器呼叫discard函式,丟棄當前的片段並且終止著色器執行。精靈顯示的基本邏輯及片段著色器雜訊圖紋理的設定 頂點著色器 attribut...
Cocos2dx 流星效果實現
dionysoslai 906391500 qq.com 2014 8 28 對於用來襯托唯美的意境,與其天空中,點點一閃而過的流星,莫不是說最適合了。對於痴情兒女,私定終身就在這一刻良辰美景中了。今天,我等糙人就來 糟蹋 這乙個美好的事物。功能需求 1.實現流星效果。達到的效果與下圖一致 功能分析...
cocos2dx之粒子效果
有時候我們需要做一些特殊的效果,比如子彈 的效果,當然我們用動畫也可以做出來,但是有時候發現利用粒子的效果去代替它會跟好看,我們先來看下粒子 void particledemolayer initlayer ccparticleflower,繼承的ccparticlesystemquad的,在coc...