cocos2dx使用帧动画
开发环境:cocos2dx 3.17
开发语言:lua
一般来说,使用cocos2d_x开发游戏的时候都有两种做UI的方式,一种是用代码手写,一种是用cocos studio做UI,帧动画也一样,可以用这里两种方式,下面介绍博主常用的两种方法。
代码手写帧动画
博主这里是先将用来做帧动画的图片合成plis合图,然后创建一个精灵。用plist合图中的图片不断的去替换原来精灵的图片。
cc.SpriteFrameCache:getInstance():addSpriteFrames("tupian.plist") local Circle_sp = cc.Sprite:createWithSpriteFrameName("1.png") Circle_sp:move(a_x,a_y) Circle_sp:addTo(self._lr , 1) local animation = cc.Animation:create() for i=1,6 do local _frame = cc.SpriteFrameCache:getInstance():getSpriteFrame( i ..".png") if _frame then animation:addSpriteFrame(_frame) end end animation:setDelayPerUnit(0.08) --设置两个帧播放时间 animation:setRestoreOriginalFrame(false) --动画执行后还原初始状态 local action = cc.Animate:create(animation) local hide = cc.CallFunc:create(function() local fadein = cc.FadeIn:create(0.08) local fadeout = cc.FadeOut:create(0.08) local delay = cc.DelayTime:create(0.08) Circle_sp:runAction(cc.Sequence:create(fadein,delay,fadeout)) end) local delay = cc.DelayTime:create(0.5) Circle_sp:runAction(cc.Sequence:create(action,delay,hide))
用cocos studio 做帧动画
需要自己在cocos studio 上提前做好相应的帧动画
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 三尺青锋!
评论