cocos2d基础

1.cocos2d与cocos2d-x的区别?
答:cocos2d是objective-c写的,是只能在ios平台使用的,cocos2d-x是使用c++写的,可以在android\ios\linux\windows等平台使用。

2.如何搭建mac下cocos2d-x的开发环境?
答:下载最新的开发包,解压,然后
cd 引擎包根目录
./setup.py
一路按回车即可
最后执行source /../ .bash_profile 前面的路径是你电脑中的路径,并且这个命令在最后是有提示的。

3.在哪些情况下使用Node?
答:需要管理一批子节点的时候,我们可以使用一个Node
还有我们如果需要实现一个自定义的精灵等,我们可以继承自Node。

4.简单介绍一下Dirctor?
答:导演是一个单例,我们可以通过getInstance方法来获取导演类的实例对象。导演控制整个的游戏流程,例如跑动第一个场景使用runWithScene,替换场景使用replaseWithScen,还有游戏暂停,重启等等,一些数据我们可以从导演中获得,例如屏幕的大小,屏幕的可见区域等等。

5.Layer和Scene有什么区别?
答:Scene类继承于Node,它的实现很简单,就是基本上没添加什么内容。它只是作为一个容器的抽象概念存在。对比Node差别有,构造函数中设置了不使用锚点定位,而是使用了坐标原点,即使设置了锚点也不起作用。在init中设置场景的大小。节点的初始化大小为SizeZero,也就是没有大小。Scene初始化时设置了场景的大小,即窗口大小。
Layer和Scene的初始化差不多,也是构造函数中设置不使用锚点定位,init函数中设置了层的大小,即窗口大小。

6.Layer的OnEnter、OnExit、OnEnterTransitionDidFinish、OnExitDidStart几个方法在什么时候被调用。
答:在屏幕将要显示的时候会调用OnEnter、OnEnterTransitionDidFinish。在推出的时候会调用OnExitDidStart、OnExit。

7.如何创建一个音乐播放和暂停按钮,代码实现。
答: void callback(Ref* psender)
MenuItemImage *item1 = MenuItemImage::create(“”, “”);
MenuItemImage *item2 = MenuItemImage::create(“”, “”);
MenuItemToggle *toggle = MenuItemToggle::createWithCallback(CC_CALLBACK_1(HelloWorld::callback, this), item1,item2, NULL);
Menu *menu = Menu::create(toggle, NULL);
this->addChild(menu);

8.简单介绍Vector。
答: Vector

你可能感兴趣的:(cocos2d基础)