cocos2dx_lua_v3.7 open console

cocos2dx_lua_v3.7 open console,第1张

概述用lua_v3.2的时候,console是默认开启,下了最新的v3.7后,发现不开了,开关也不好找。 仔细观察工程目录,发现多了很多文件 SimulatorWin.h 原来是main.cpp --> AppDelegate 现在改成main.cpp --> SimulatorWin --> AppDelegate SimulatorWin会先设置一些参数,比如是否开始log,将log输出到某一个文

用lua_v3.2的时候,console是默认开启,下了最新的v3.7后,发现不开了,开关也不好找。

仔细观察工程目录,发现多了很多文件

SimulatorWin.h

原来是main.cpp --> AppDelegate

现在改成main.cpp --> SimulatorWin --> AppDelegate

SimulatorWin会先设置一些参数,比如是否开始log,将log输出到某一个文件

ProjectConfig.h

位于\frameworks\cocos2d-x\tools\simulator\libsimulator\lib\ProjectConfig目下,SimulatorWin的配置都会从这里读取

如果在运行程序的时候,传递一些参数,这些参数将会被在SimulatorWin进行设置

比如要开启log

前置条件@H_502_37@ 打开
game01\frameworks\runtime-src\Classes\IDe-support\CodeIDESupport.h

#define CC_CODE_IDE_DEBUG_SUPPORT 0

改成
#define CC_CODE_IDE_DEBUG_SUPPORT 1


方法1@H_502_37@

可以在SimulatorWin的run函数里添加

_project.setWriteDeBUGLogTofile(true);

当然,能不改源码是最好的 方法2@H_502_37@ 打开cmd,进入projectDir/simulator/win32,打如下命令
game01.exe -write-deBUG-log deBUG.log

以上两种 *** 作都会将Log输出到deBUG.log文件里面
关于运行winSimulator可以设置的参数
voID ProjectConfig::parseCommandline(const vector<string> &args){    auto it = args.begin();    while (it != args.end())    {        string arg = *it;        if (arg.compare("-workdir") == 0)        {            ++it;            if (it == args.end()) break;            setProjectDir(*it);            if (_writablePath.length() == 0) setWritablePath(*it);        }        else if (arg.compare("-writable-path") == 0)        {            ++it;            if (it == args.end()) break;            setWritablePath(*it);        }        else if (arg.compare("-entry") == 0)        {            ++it;            if (it == args.end()) break;            setScriptfile(*it);        }        else if (arg.compare("-landscape") == 0)        {            setFrameSize(cocos2d::Size(DEFAulT_HEIGHT,DEFAulT_WIDTH));        }        else if (arg.compare("-portrait") == 0)        {            setFrameSize(cocos2d::Size(DEFAulT_WIDTH,DEFAulT_HEIGHT));        }        else if (arg.compare("-resolution") == 0)        {            ++it;            if (it == args.end()) break;            const string& sizeStr(*it);            size_t pos = sizeStr.find('x');            int wIDth = 0;            int height = 0;            if (pos != sizeStr.npos && pos > 0)            {                string wIDthStr,heightStr;                wIDthStr.assign(sizeStr,pos);                heightStr.assign(sizeStr,pos + 1,sizeStr.length() - pos);                wIDth = atoi(wIDthStr.c_str());                height = atoi(heightStr.c_str());                setFrameSize(cocos2d::Size(wIDth,height));            }        }        else if (arg.compare("-scale") == 0)        {            ++it;            if (it == args.end()) break;            float scale = atof((*it).c_str());            setFrameScale(scale);        }        else if (arg.compare("-write-deBUG-log") == 0)        {            ++it;            if (it == args.end()) break;            setDeBUGLogfilePath((*it));            setWriteDeBUGLogTofile(true);        }        else if (arg.compare("-console") == 0)        {            ++it;            if (it == args.end()) break;            if ((*it).compare("enable") == 0)            {                setShowConsole(true);            }            else            {                setShowConsole(false);            }        }        else if (arg.compare("-position") == 0)        {            ++it;            if (it == args.end()) break;            const string& posstr(*it);            size_t pos = posstr.find(',');            int x = 0;            int y = 0;            if (pos != posstr.npos && pos > 0)            {                string xStr,yStr;                xStr.assign(posstr,pos);                yStr.assign(posstr,posstr.length() - pos);                x = atoi(xStr.c_str());                y = atoi(yStr.c_str());                setwindowOffset(cocos2d::Vec2(x,y));            }        }        else if (arg.compare("-deBUGger") == 0)        {            ++it;            if (it == args.end()) break;            if ((*it).compare("codeIDe") == 0)            {                setDeBUGgerType(kCCRuntimeDeBUGgerCodeIDE);            }            else if ((*it).compare("studio") == 0)            {                setDeBUGgerType(kCCRuntimeDeBUGgerStudio);            }        }        else if (arg.compare("-app-menu") == 0)        {            _isAppMenu = true;        }        else if (arg.compare("-resize-window") == 0)        {            _isResizeWindow = true;        }        else if (arg.compare("-retina-display") == 0)        {            _isRetinadisplay = true;        }        else if (arg.compare("-port") == 0)        {            cclOG("Todo:");        }        else if (arg.compare("-Listen") == 0)        {            ++it;            setBindAddress((*it));        }        else if (arg.compare("-search-path") == 0)        {            ++it;            vector<string> pathes = split((*it),';');            setSearchPath(pathes);        }        ++it;    }}

以上代码位于
\frameworks\cocos2d-x\tools\simulator\libsimulator\lib\ProjectConfig

除了可以打开log外,还可以设置运行窗口的大小
game01.exe -resolution 480x320
需要注意的是480和320之间的是小写字母x,而不是* 总结

以上是内存溢出为你收集整理的cocos2dx_lua_v3.7 open console全部内容,希望文章能够帮你解决cocos2dx_lua_v3.7 open console所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1066162.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-26
下一篇2022-05-26

发表评论

登录后才能评论

评论列表(0条)

    保存