cocos2d-x v3.0新特性及使用
转自:http://www.cnblogs.com/jiangu66/archive/2013/08/09/3249354.html 八月份cocos2d-x官网发布了v3.0版本,这次更新的内容特别多,包括2dx的架构以及使用 总得来说,给开发者带来了很大的便利: 运行环境需求:
编译环境需求:
A subset of C++11 features are being used in cocos2d-x:
st std::function
Examples:
The old values can still be used,but are not deprecated. |
Director->getInstance() | |
CCDirector->endDirector() | Director->destroyInstance() |
etc... |
v2.1 methods are still available,but they were tagged as deprecated.
Getters now use theget
prefix.
node->boundingBox()
const
in their declaration. Example:
2virtual float getScale(); 3 45float getScale() const;
POD types
Methods that were receiving POD types as arguments (eg:TexParams
,Point
,250)">Size,etc.) are being passed asconst
reference.
void setTexParameters(ccTexParams* texParams);
void setTexParameters(const ccTexParams& texParams);
Misc API Changes
ccTypes.h
Removeccprefix for structure names in ccTypes.h,move global functions into static member functions,and move global constants into const static member variables.
structure name before changing | structure name after changing |
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 |
Global functions changed example
1 2// in v2.1 3ccColor3B color3B = ccc3(0,0); 4ccc3BEqual(color3B,1,207)">1)); 5ccColor4B color4B = ccc4(0); 6ccColor4F color4F = ccc4f( 7color4F = ccc4FFromccc3B(color3B); 8color4F = ccc4FFromccc4B(color4B); 9ccc4FEqual(color4F,ccc4F(10color4B = ccc4BFromccc4F(color4F); 11 12color3B = ccWHITE; 13 14// in v3.0 15Color3B color3B = Color3B(16color3B.equals(Color3B(17Color4B color4B = Color4B(18Color4F color4F = Color4F(19color4F = Color4F(color3B); 20color4F = Color4F(color4B); 21color4F.equals(Color4F(22color4B = Color4B(color4F); 23 24color3B = Color3B::WHITE;
deprecated functions and global variables
new name | ||||
ccp | Point | |||
ccpNeg | Point::- | |||
ccpAdd | Point::+ | |||
ccpSub | ccpMult | Point::* | ||
ccpMidpoint | Point::getMidpoint | |||
ccpDot | Point::dot | |||
ccpCrosss | Point::cross | |||
ccpPerp | Point::getPerp | |||
ccpRPerp | Point::getRPerp | |||
ccpProject | Point::project | |||
ccpRotate | Point::rotate | |||
ccpUnrotate | Point::unrotate | |||
ccpLengthSQ | Point::getLengthSq() | |||
ccpDistanceSQ | Point::getDistanceSq | |||
ccpLength | Point::getLength | |||
ccpDistance | Point::getDistance | |||
ccpNormalize | Point::normalize | |||
ccpForAngle | Point::forAngle | |||
ccpToAngle | Point::getAngle | |||
ccpClamp | Point::getClampPoint | |||
ccpFromSize | Point::Point | |||
ccpCompOp | Point::compOp | |||
ccpLerp | Point::lerp | |||
ccpFuzzyEqual | Point::fuzzyEqual | |||
ccpCompMult | ccpAngleSigned | ccpAngle | ccpRotateByAngle | Point::rotateByAngle |
ccpLineInersect | Point::isLineIntersect | |||
ccpSegmentIntersect | Point::isSegmentIntersect | |||
ccpIntersectPoint | Point::getIntersectPoint | |||
CCPointMake | CCSizeMake | Size::Size | ||
CCRectMake | Rect::Rect | |||
PointZero | SizeZero | Size::ZERO | ||
RectZero | Rect::ZERO | |||
TiledGrid3DAction::tile | TiledGrid3DAction::getTile | |||
TiledGrid3DAction::originalTile | TiledGrid3DAction::getOriginalTile | |||
TiledGrid3D::tile | TiledGrid3D::getTile | |||
TiledGrid3D::originalTile | TiledGrid3D::getOriginalTile | |||
Grid3DAction::vertex | Grid3DAction::getVertex | |||
Grid3DAction::originalVertex | Grid3DAction::getOriginalVertex | |||
Grid3D::vertex | Grid3D::getVertex | |||
Grid3D::originalVertex | Grid3D::getOriginalVertex | |||
Configuration::sharedConfiguration | Configuration::getInstance | |||
Configuration::purgeConfiguration | Configuration::destroyInstance() | |||
Director::sharedDirector() | Director::getInstance() | |||
FileUtils::sharedFileUtils | FileUtils::getInstance | |||
FileUtils::purgeFileUtils | FileUtils::destroyInstance | |||
EGLView::sharedOpenGLView | EGLView::getInstance | |||
ShaderCache::sharedShaderCache | ShaderCache::getInstance | |||
ShaderCache::purgeSharedShaderCache | ShaderCache::destroyInstance | |||
AnimationCache::sharedAnimationCache | AnimationCache::getInstance | |||
AnimationCache::purgeSharedAnimationCache | AnimationCache::destroyInstance | |||
SpriteFrameCache::sharedSpriteFrameCache | SpriteFrameCache::getInstance | |||
SpriteFrameCache:: purgeSharedSpriteFrameCache | SpriteFrameCache::destroyInstance | |||
NotificationCenter::sharedNotificationCenter | NotificationCenter::getInstance | |||
NotificationCenter:: purgeNotificationCenter | NotificationCenter::destroyInstance | |||
Profiler::sharedProfiler | Profiler::getInstance | |||
UserDefault::sharedUserDefault | UserDefault::getInstance | |||
UserDefault::purgeSharedUserDefault | UserDefault::destroyInstance | |||
Application::sharedApplication | Application::getInstance | |||
ccc3() | Color3B() | |||
ccc3BEqual() | Color3B::equals() | |||
ccc4() | Color4B() | |||
ccc4FFromccc3B() | Color4F() | |||
ccc4f() | ccc4FFromccc4B() | ccc4BFromccc4F() | ccc4FEqual() | Color4F::equals() |
ccWHITE | Color3B::WHITE | |||
ccYELLOW | Color3B::YELLOW | |||
ccBLUE | Color3B::BLUE | |||
ccRED | Color3B::RED | |||
ccMAGENTA | Color3B::MAGENTA | |||
ccBLACK | Color3B::BLACK | |||
ccORANGE | Color3B::ORANGE | |||
ccGRAY | Color3B::GRAY | |||
kBlendFuncDisable | BlendFunc::BLEND_FUNC_DISABLE |
(编辑:李大同)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!