cocos2d基本动作函数

本文详细介绍了在游戏开发中使用CCPoint、CCPlace、CCHide、CCShow等节点进行位置设置、隐藏与显示操作,以及通过CCMoveTo、CCJumpTo、CCBezierTo等节点实现对象的位移、跳跃、贝塞尔曲线运动等动画效果,并探讨了如何通过CCScaleTo、CCRotateTo等节点调整对象大小和旋转,同时介绍了CCBlink、CCTintTo、CCFadeTo等节点用于实现闪烁、颜色变换和透明度变化的效果。此外,还讲解了如何利用CCSequence、CCSpawn、CCRepeat和CCRepeatForever进行动作序列、同步动画、有限重复和无限重复的实现,以及CCEaseIn、CCEaseInOut等节点来调整动画速度。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  1. CCPoint p=ccp(size.width/2+100, size.height/2);  
  2. //放置 其实就相当于setposition  
  3. CCPlace *ac1=CCPlace::create(p);  
  4.   
  5. //隐藏  
  6. CCHide *ac2=CCHide::create();  
  7.   
  8. //显示  
  9. CCShow *ac3=CCShow::create();  
  10.   
  11. //可见切换  
  12. CCToggleVisibility *ac4=CCToggleVisibility::create();  
  13.   
  14. //to移到到指定位置,by是相对的位置,移到的是增量  
  15. CCMoveTo *ac5=CCMoveTo::create(2.0f, p);  
  16.   
  17. //跳跃到,4个参数分别是时间,位置,跳跃的高度,跳跃次数  
  18. CCJumpTo *ac6=CCJumpTo::create(2.0f, p, 10, 2);  
  19.   
  20. //贝塞尔曲线,先设置贝塞尔参数,两个控制点,一个结束点  
  21. ccBezierConfig bezier;  
  22.   
  23. bezier.controlPoint_1=ccp(100, 100);  
  24. bezier.controlPoint_2=ccp(300, 300);  
  25. bezier.endPosition=ccp(500, 500);  
  26.   
  27. CCBezierTo *ac7=CCBezierTo::create(2.0f, bezier);  
  28.   
  29. //放大  
  30. CCScaleTo *ac8=CCScaleTo::create(2.0f, 2.0f);  
  31.   
  32. //旋转  
  33. CCRotateTo *ac9=CCRotateTo::create(2.0f, 200);  
  34.   
  35. //闪烁  
  36. CCBlink *ac10=CCBlink::create(2.0f, 3);  
  37.   
  38. //色调变换  
  39. CCTintTo *ac11=CCTintTo::create(2.0f, 0, 234, 255);  
  40.   
  41. //变暗到  
  42. CCFadeTo *ac12=CCFadeTo::create(2.0, 200);  
  43.   
  44. //由无变亮  
  45. CCFadeIn *ac13=CCFadeIn::create(2.0f);  
  46.   
  47. //由亮到无  
  48. CCFadeOut *ac14=CCFadeOut::create(2.0f);  
  49.   
  50. //序列,顾名思义就是按照顺序一个个动画执行,别忘了最后要加上NULL,表示结束了  
  51. CCSequence *seq=CCSequence::create(ac1,ac2,ac3,NULL);  
  52.   
  53. //同步,几个动画一起执行  
  54. CCSpawn *spawn=CCSpawn::create(ac1,ac2,ac3,NULL);  
  55.   
  56. //有次数的的重复动画  
  57. CCRepeat *repeat=CCRepeat::create(seq, 10);  
  58.   
  59. //无限重复,但不能参与序列,同步动画  
  60. CCRepeatForever *repeatForver=CCRepeatForever::create(seq);  
  61.   
  62. //由慢至快,第二个参数表示加速率  
  63. CCEaseIn *ac16=CCEaseIn::create(ac5, 2.0f);  
  64.   
  65. //这些都是关于速度变化的动画  
  66. CCEaseInOut *ac17=CCEaseInOut::create(ac5, 2.0f);  
  67.   
  68. //延迟  
  69. CCDelayTime *delatTime=CCDelayTime::create(1.0f);  
  70.   
  71.   
  72. pSprite->runAction(ac17); 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值