从cocos2d-x 3.0开始。cocos2d-x提供了一个不错的功能,Console,可以通过命令终端进行一些对游戏的调试,测试,控制,下面我们来看看具体怎么使用,
新建项目
- 运行命令行 cocos new ConsoleTest -l cpp -d c:\cocos 的命令,创建一个空的项目,
- 修改AppDelegate.cpp的applicationDidFinishLaunching部分,在最后添加如下代码:
Director::getInstance()->getConsole()->listenOnTCP(5678);
下面,我们来演示,从游戏内输出到电脑终端的功能,方便进行调试
在游戏需要的地方,在关闭按钮添加如下代码,去掉关闭功能,添加代码,Director::getInstance()->getConsole()->log(“Click Me\n”);我们可以认为,如果终端输出click me,说明游戏执行到此地方了,如果没有输出,就说明程序出bug了,进而进行代码的排错,调试
我这里运用的是mac系统,打开命令行,进行如下操作:
- 连接游戏,命令行输入:nc localhost 5678
- 接着输入:debugmsg on
- touch游戏中的关闭按钮,终端上是不是显示出来了?
扩展
当然我们可以,参加Console类,添加command,可以对游戏的一些控制功能,当然,最后调用cocos2d-x的类操作,建议通过Director::getInstance()->getScheduler()->performFunctionInCocosThread,送到GL线程进行执行。
当然,对应的手机调试,请把localhost换成对应的手机ip地址,确保手机跟电脑在同一个局域网内
Mac自带nc命令,windows用户下载:@下载nc