cocos2dx 3.0 的一些数学函数

1、以CC开头的类从此去掉CC,如:
?
1
2
3
4
5
<code>| v2. 1       | v3. 0     |
| CCSprite   | Sprite   |
| CCNode     | Node     |
| CCDirector | Director |
| etc...                |</code>

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


2、clone() 替代 copy(), 这个我用的不多,所以也就不多交代了;


3、Director的单例换成getInstance() 和 destroyInstance();
?
1
2
3
4
<code>| v2. 1                          | v3. 0                        |
| CCDirector->sharedDirector()  | Director->getInstance()     |
| CCDirector->endDirector()     | Director->destroyInstance() |
| etc...                                                      |</code>
|
4、新的触摸机制,先贴一段代码给大家看看,可能是下一篇或者下下篇我会详细讲下新的触摸机制的。(嘻嘻,搞得我好像很牛逼哄哄的样子)
?
1
2
3
4
5
6
7
8
9
10
11
12
auto sprite = Sprite::create( "file.png" );
...
auto listener = EventListenerTouchOneByOne::create();
listener->setSwallowTouch( true );
listener->onTouchBegan     = [](Touch* touch, Event* event) { do_some_thing();  return true ;  };
listener->onTouchMoved     = [](Touch* touch, Event* event) { do_some_thing();  };
listener->onTouchEnded     = [](Touch* touch, Event* event) { do_some_thing();  };
listener->onTouchCancelled = [](Touch* touch, Event* event) { do_some_thing();  };
// The priority of the touch listener is based on the draw order of sprite
EventDispatcher::getInstance()->addEventListenerWithSceneGraphPriority(listener, sprite);
// Or the priority of the touch listener is a fixed value
EventDispatcher::getInstance()->addEventListenerWithFixedPriority(listener, 100 ); // 100 is a fixed value

5、还有一些杂七杂八的东西,本人理解的不透,也就不发出来献丑了,最后将CCType.h 里的一些变动贴出来,让我们愉快的结束这篇博文。
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<code>| 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 |
</code>

一些全局的定义:

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

继续...

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
<code>| v2. 1 names    | v3. 0 names |
| ccp           | Point |
| ccpNeg        | Point::- |
| ccpAdd        | Point::+ |
| ccpSub        | Point::- |
| 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   | Point::Point |
| ccpAngleSigned | Point::getAngle |
| ccpAngle      | Point::getAngle |
| ccpRotateByAngle | Point::rotateByAngle |
| ccpLineInersect | Point::isLineIntersect |
| ccpSegmentIntersect | Point::isSegmentIntersect |
| ccpIntersectPoint | Point::getIntersectPoint |
| CCPointMake   | Point::Point |
| CCSizeMake    | Size::Size |
| CCRectMake    | Rect::Rect |
| PointZero     | Point::ZERO |
| 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()       | Color4F() |
| ccc4FFromccc4B() | Color4F() |
| ccc4BFromccc4F() | Color4B() |
| ccc4FEqual()  | Color4F::equals() |
| ccWHITE       | Color3B::WHITE |
| ccYELLOW      | Color3B::YELLOW |
| ccBLUE        | Color3B::BLUE |
| ccGREEN       | Color3B::GREEN |
| ccRED         | Color3B::RED |
| ccMAGENTA     | Color3B::MAGENTA |
| ccBLACK       | Color3B::BLACK |
| ccORANGE      | Color3B::ORANGE |
| ccGRAY        | Color3B::GRAY |
| kBlendFuncDisable | BlendFunc::BLEND_FUNC_DISABLE |</code>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值