cocos2dx 3.0一些变化

前端之家收集整理的这篇文章主要介绍了cocos2dx 3.0一些变化前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

转自http://blog.csdn.net/start530/article/details/18052953


1、以CC开头的类从此去掉CC,如:

  1. | v2.1 | v3.0 |
  2. | CCSprite | Sprite |
  3. | CCNode | Node |
  4. | CCDirector | Director |
  5. | etc... |

举个例子,创建一个精灵的方式:
  1. v2.0
  2. CCSprite*sp=CCSprite::create();
  3. v3.0
  4. autosp=Sprite::create();


2、clone() 替代 copy(),这个我用的不多,所以也就不多交代了;
3、Director的单例换成getInstance() 和 destroyInstance();
  1. | v2.1 | v3.0 |
  2. | CCDirector->sharedDirector() | Director->getInstance() |
  3. | CCDirector->endDirector() | Director->destroyInstance() |
  4. | etc... |
|
4、新的触摸机制,先贴一段代码给大家看看,可能是下一篇或者下下篇我会详细讲下新的触摸机制的。
    autosprite=Sprite::create("file.png");
  1. ...
  2. autolistener=EventListenerTouchOneByOne::create();
  3. listener->setSwallowTouch(true);
  4. listener->onTouchBegan=[](Touch*touch,Event*event){do_some_thing();returntrue;};
  5. listener->onTouchMoved=[](Touch*touch,Event*event){do_some_thing();};
  6. listener->onTouchEnded=[](Touch*touch,Event*event){do_some_thing();};
  7. listener->onTouchCancelled=[](Touch*touch,108); list-style:decimal-leading-zero outside; color:inherit; line-height:18px; margin:0px!important; padding:0px 3px 0px 10px!important"> //Thepriorityofthetouchlistenerisbasedonthedraworderofsprite
  8. EventDispatcher::getInstance()->addEventListenerWithSceneGraPHPriority(listener,sprite);
  9. //Orthepriorityofthetouchlistenerisafixedvalue
  10. EventDispatcher::getInstance()->addEventListenerWithFixedPriority(listener,100);//100isafixedvalue

5、还有一些杂七杂八的东西,本人理解的不透,也就不发出来献丑了,最后将CCType.h 里的一些变动贴出来,让我们愉快的结束这篇博文。
| v2.1 struct names | v3.0 struct names | | ccColor3B | Color3B | | ccColor4B | Color4B | | ccColor4F | Color4F | | ccVertex2F | Vertex2F | | ccVertex3F | Vertex3F | | ccTex2F | Tex2F | | ccPointSprite | PointSprite | | ccQuad2 | Quad2 | | ccQuad3 | Quad3 | | ccV2F_C4B_T2F | V2F_C4B_T2F | | ccV2F_C4F_T2F | V2F_C4F_T2F | | ccV3F_C4B_T2F | V3F_C4B_T2F | | ccV2F_C4B_T2F_Triangle | V2F_C4B_T2F_Triangle | | ccV2F_C4B_T2F_Quad | V2F_C4B_T2F_Quad | | ccV3F_C4B_T2F_Quad | V3F_C4B_T2F_Quad | | ccV2F_C4F_T2F_Quad | V2F_C4F_T2F_Quad | | ccBlendFunc | BlendFunc | | ccT2F_Quad | T2F_Quad | | ccAnimationFrameData | AnimationFrameData |

一些全局的定义

  1. // in v2.1
  2. ccColor3B color3B = ccc3(0, 0);
  3. ccc3BEqual(color3B, ccc3(1,153)">1));
  4. ccColor4B color4B = ccc4(0);
  5. ccColor4F color4F = ccc4f(0);
  6. color4F = ccc4FFromccc3B(color3B);
  7. color4F = ccc4FFromccc4B(color4B);
  8. ccc4FEqual(color4F, ccc4F(1));
  9. color4B = ccc4BFromccc4F(color4F);
  10.  
  11. color3B = ccWHITE;
  12.  
  13. // in v3.0
  14. Color3B color3B = Color3B(0);
  15. color3B.equals(Color3B(1));
  16. Color4B color4B = Color4B(0);
  17. Color4F color4F = Color4F(0);
  18. color4F = Color4F(color3B);
  19. color4F = Color4F(color4B);
  20. color4F.equals(Color4F(1));
  21. color4B = Color4B(color4F);
  22.  
  23. color3B = Color3B::WHITE;

继续...

  1. | v2.1 names | v3.0 names |
  2. | ccp | Point |
  3. | ccpNeg | Point::- |
  4. | ccpAdd | Point::+ |
  5. | ccpSub | Point::- |
  6. | ccpMult | Point::* |
  7. | ccpMidpoint | Point::getMidpoint |
  8. | ccpDot | Point::dot |
  9. | ccpCrosss | Point::cross |
  10. | ccpPerp | Point::getPerp |
  11. | ccpRPerp | Point::getRPerp |
  12. | ccpProject | Point::project |
  13. | ccpRotate | Point::rotate |
  14. | ccpunrotate | Point::unrotate |
  15. | ccpLengthSQ | Point::getLengthSq() |
  16. | ccpDistanceSQ | Point::getDistanceSq |
  17. | ccpLength | Point::getLength |
  18. | ccpDistance | Point::getDistance |
  19. | ccpNormalize | Point::normalize |
  20. | ccpForAngle | Point::forAngle |
  21. | ccpToAngle | Point::getAngle |
  22. | ccpClamp | Point::getClampPoint |
  23. | ccpFromSize | Point::Point |
  24. | ccpCompOp | Point::compOp |
  25. | ccpLerp | Point::lerp |
  26. | ccpFuzzyEqual | Point::fuzzyEqual |
  27. | ccpCompMult | Point::Point |
  28. | ccpAngleSigned | Point::getAngle |
  29. | ccpAngle | Point::getAngle |
  30. | ccpRotateByAngle | Point::rotateByAngle |
  31. | ccpLineInersect | Point::isLineIntersect |
  32. | ccpSegmentIntersect | Point::isSegmentIntersect |
  33. | ccpIntersectPoint | Point::getIntersectPoint |
  34. | CCPointMake | Point::Point |
  35. | CCSizeMake | Size::Size |
  36. | CCRectMake | Rect::Rect |
  37. | PointZero | Point::ZERO |
  38. | SizeZero | Size::ZERO |
  39. | RectZero | Rect::ZERO |
  40. | TiledGrid3DAction::tile | TiledGrid3DAction::getTile |
  41. | TiledGrid3DAction::originalTile | TiledGrid3DAction::getOriginalTile |
  42. | TiledGrid3D::tile | TiledGrid3D::getTile |
  43. | TiledGrid3D::originalTile | TiledGrid3D::getOriginalTile |
  44. | Grid3DAction::vertex | Grid3DAction::getVertex |
  45. | Grid3DAction::originalVertex | Grid3DAction::getOriginalVertex |
  46. | Grid3D::vertex | Grid3D::getVertex |
  47. | Grid3D::originalVertex | Grid3D::getOriginalVertex |
  48. | Configuration::sharedConfiguration | Configuration::getInstance |
  49. | Configuration::purgeConfiguration | Configuration::destroyInstance() |
  50. | Director::sharedDirector() | Director::getInstance() |
  51. | FileUtils::sharedFileUtils | FileUtils::getInstance |
  52. | FileUtils::purgeFileUtils | FileUtils::destroyInstance |
  53. | EGLView::sharedOpenGLView | EGLView::getInstance |
  54. | ShaderCache::sharedShaderCache | ShaderCache::getInstance |
  55. | ShaderCache::purgeSharedShaderCache | ShaderCache::destroyInstance |
  56. | AnimationCache::sharedAnimationCache | AnimationCache::getInstance |
  57. | AnimationCache::purgeSharedAnimationCache | AnimationCache::destroyInstance |
  58. | SpriteFrameCache::sharedSpriteFrameCache | SpriteFrameCache::getInstance |
  59. | SpriteFrameCache:: purgeSharedSpriteFrameCache | SpriteFrameCache::destroyInstance |
  60. | NotificationCenter::sharedNotificationCenter | NotificationCenter::getInstance |
  61. | NotificationCenter:: purgeNotificationCenter | NotificationCenter::destroyInstance |
  62. | Profiler::sharedProfiler | Profiler::getInstance |
  63. | UserDefault::sharedUserDefault | UserDefault::getInstance |
  64. | UserDefault::purgeSharedUserDefault | UserDefault::destroyInstance |
  65. | Application::sharedApplication | Application::getInstance |
  66. | ccc3() | Color3B() |
  67. | ccc3BEqual() | Color3B::equals() |
  68. | ccc4() | Color4B() |
  69. | ccc4FFromccc3B() | Color4F() |
  70. | ccc4f() | Color4F() |
  71. | ccc4FFromccc4B() | Color4F() |
  72. | ccc4BFromccc4F() | Color4B() |
  73. | ccc4FEqual() | Color4F::equals() |
  74. | ccWHITE | Color3B::WHITE |
  75. | ccYELLOW | Color3B::YELLOW |
  76. | ccBLUE | Color3B::BLUE |
  77. | ccGREEN | Color3B::GREEN |
  78. | ccRED | Color3B::RED |
  79. | ccMAGENTA | Color3B::MAGENTA |
  80. | ccBLACK | Color3B::BLACK |
  81. | ccORANGE | Color3B::ORANGE |
  82. | ccGRAY | Color3B::GRAY |
  83. | kBlendFuncDisable | BlendFunc::BLEND_FUNC_DISABLE |

猜你在找的Cocos2d-x相关文章