cocos2dx创建新项目遇到的问题

都2020年了,才入坑cocos2dx。cocos creater不香么,没办法,项目是老项目啊。话不多说,新手记录下自己在安装的过程中遇到的坑。

1.安装环境:

环境:

安装过程中用到的 cocos2d-x-3.17.1,vs2017,python2.7,babelua for 2017,cocos2dx-3.12-api.lua,lua

说明:

cocos2d-x-3.17.1,vs2017,python2.7官网下载。其中python一定是要2.7版本。babelua网盘链接:BabeLuaFor2017。cocos2dx-3.12-api.lua是写lua代码提示所用。api网盘链接:Api提示

2.安装顺序以及遇到问题:

1.vs2017(略过)

2.python2.7(改变默认版本)

这个遇到的问题主要是双版本问题。在cmd命令下输入python查看默认安装版本。我之前默认的是3.7。把3.7安装目录下的python.exe文件改成python3.exe。python2.7安装目录下安装的.exe文件改为python.exe就行了。其实这也是可以作为区别使用2。7版本和3.7版本的方法


a9c6dea1a38b.png

3.lua安装(按照菜鸟教程安装)

4.cocos2d-x-3.17.1

这个就是解压安装,用python执行setup.py文件就行了。没遇到问题。提示android的SDK,NDK,ANT,环境变量和目录的设置,不用管,直接回车。其实这一步就是自动帮你设置了一下cocos2dx的环境变量,让你可以在cmd的根目录运行cocos命令的。如果你需要打包Apk上述的环境也还是要配置下的。在cmd中输入cocos检测是否安装成功。


452a25624be1.png

5.babelua for 2017

下一步下一步,和安装软件一样。不过记住安装目录。下一步要用。

6.cocos2dx-3.12-api.lua

把下载的cocos2dx-3.12-api.lua文件放到BabeLua的Completion文件夹下,如图:


986395137138.png

3.创建新工程遇到的问题

创建新项目指令:cocos new HelloWorld(项目名称)-p com.test.www(包名字)-l lua(项目类型) -d 项目路径


1599fe809935.png

创建成功后,simulator这个文件夹是没有的,必须在HelloWorld\frameworks\runtime-src\proj.win32文件夹下打开HelloWorld.sln,vs工程并编译。编译后就会生成simulator。必须要先编译。可以理解为编译后的.exe文件才会给Lua工程所有文件提供入口。才会把Lua工程和c++底层关联起来。
如果你的BabeLuaan安装成功,在Vs工具栏上会有如下按钮:


243db2b21ab3.png

问题1:vs编译过程中提示过期,或者编译成功后一堆报错

339620000647.png

问题2:新建Lua项目

1.点击Lua插件。创建新Lua项目


10f5b0534653.png

2.选择New Lua Project。Command line,这里我也不知道啥意思,后面会研究下。我没有配置这个的时候启动项目是黑屏状态的。


50114aebf1c4.png

3.创建成功的Lua工程
39c5253a65e9.png

问题3:调试的时候不能断点。

解决方案:首先搜索整个解决方案找到main.cpp文件。如下添加代码,不然项目属性里没有c++预定义

        AllocConsole();
        freopen("CONIN$", "r", stdin);
        freopen("CONOUT$", "w", stdout);
        freopen("CONOUT$", "w", stderr);
    #endif
#include "main.h"
#include "SimulatorWin.h"
#include 

int WINAPI _tWinMain(HINSTANCE hInstance,
    HINSTANCE hPrevInstance,
    LPTSTR    lpCmdLine,
    int       nCmdShow)
{
    UNREFERENCED_PARAMETER(hPrevInstance);
    UNREFERENCED_PARAMETER(lpCmdLine);
    #ifdef USE_WIN32_CONSOLE  
        AllocConsole();
        freopen("CONIN$", "r", stdin);
        freopen("CONOUT$", "w", stdout);
        freopen("CONOUT$", "w", stderr);
    #endif
    auto simulator = SimulatorWin::getInstance();
    return simulator->run();
}

然后,点击你的解决方案属性,配置COCOS2D_DEBUG和CC_CODE_IDE_DEBUG_SUPPORT是两个预编译参数。
COCOS2D_DEBUG表示是否支持断点调试,默认为1,CC_CODE_IDE_DEBUG_SUPPORT表示是否支持在cocos Code IDE中断点调试并输出print等lua语言的调试信息,默认值为0,如果你需要在cocos Code IDE中调试的话或者想在控制台看到我们自己输出的hello world的话,需要把这个值改为1。


clipboard.png

添加好以后项目就可以断点了

你可能感兴趣的:(cocos2dx创建新项目遇到的问题)