Visual Studio 和Clion配置Cocos2d-x环境

Visual Studio 和Clion配置Cocos2d-x环境

首先,我就不贴图片的,懒得上传图床。懒。

开发环境:

​ 系统: Window11

​ 编译器: CMake + MSVC

​ 开发工具:Clion or Visual Studio

请自行配置好,Python2.7,和Cmake

  • Cocos2d-x下载

​ 首先,我们需要去Github下载 [cocos2d-x) 的源码,由于源码过于庞大如果clone失败,请自行查找方法。

​ 随便找一个目录,然后克隆源码

git clone https://github.com/cocos2d/cocos2d-x.git

​ 接下来进入目录,输入命令

​ ps: 注意,由于需要使用Python脚本,请自己安装好Python,Python版本为2.7.18。

cd cocos2d-x
python download-deps.py

​ 下载依赖库之后,可以输入以下命令,更新子模块。建议更新。注意在cocos2d-x目录下执行

 git submodule update --init

​ 当你·下载好了之后可以开始创建项目并且配置环境了。

  • Cocos2d-x创建项目

​ 进入Coco2d-x目录下,输入以下命令执行setup.py脚本。

python .\setup.py 

​ 如果没问题,退出你的终端,再次重进。现在已经配置好了环境变量,可以输入以下命令,来验证。

cocos

​ 接下来,就是来使用命令创建cocos项目。

cocos new --help  

​ 输入上面的命令,来查询一下如何创建项目,然后按照对应的提示,创建项目。

usage: cocos new [-h] [-p PACKAGE_NAME] [-d DIRECTORY] [-t TEMPLATE_NAME][--ios-bundleid IOS_BUNDLEID] [--mac-bundleid MAC_BUNDLEID][-e ENGINE_PATH] [--portrait] -l {cpp,lua,js}[PROJECT_NAME]创建一个新的工程。positional arguments:PROJECT_NAME          设置工程名称。optional arguments:-h, --help            show this help message and exit-p PACKAGE_NAME, --package PACKAGE_NAME设置工程的包名。-d DIRECTORY, --directory DIRECTORY设置工程存放路径。-t TEMPLATE_NAME, --template TEMPLATE_NAME设置使用的模板名称。--ios-bundleid IOS_BUNDLEID设置工程的 iOS Bundle ID。--mac-bundleid MAC_BUNDLEID设置工程的 Mac Bundle ID。-e ENGINE_PATH, --engine-path ENGINE_PATH设置引擎路径。--portrait            设置工程为竖屏。-l {cpp,lua,js}, --language {cpp,lua,js}设置工程使用的编程语言,可选值:[cpp | lua | js]

​ 可以看到,其实创建一个项目很简单,只需要使用

cocos new FlappyBird -p com,wuxianggujun.cocosflappybird -l cpp

​ 好了,这样子。你就创建了一个cpp项目。

  • Clion开发环境配置

    打开你的Clion进入创建的项目FlappyBird

    然后等待clion分析项目之类的,然后你尝试编译会发现报错,无法编译。

    你需要配置工具链为MSVC

    Clion -> 设置 -> 搜索工具链。

    然后进入工具链之后,点击+号。添加Visual Studio。

    工具集指定你的Visual Studio的目录下,我的是VS2022版本。

    D:\Program Files\Microsoft Visual Studio\2022\Professional
    

    架构选择amd64_x86,其实都可以。

    其他的交给Clion自动识别就可以了,当然你也可以自己指定。

    接下来,进入CMake配置

    工具链选择为Visual Studio也就是你刚刚创建的。

    在CMake 选项中添加

    -A Win32 -G "Visual Studio 17 2022"
    

​ 点击确定,接下来其实就可以了。当然你可以修改CMakeLists.txt

​ 在第57行左右,修改

list(APPEND GAME_SOURCEClasses/AppDelegate.cpp
)
list(APPEND GAME_HEADERClasses/AppDelegate.h
)

​ 替换为

file(GLOB_RECURSE CPPSRCLIST ./Classes/*.cpp)
file(GLOB_RECURSE CPPHEADLIST ./Classes/*.h**)list(APPEND GAME_SOURCE ${CPPSRCLIST})
list(APPEND GAME_HEADER ${CPPHEADLIST})

​ 这样子,就可以了。CMakeLists.txt

​ 点击运行,即可看见运行的窗口。

  • Visual Studio开发环境配置

    VS配置需要在终端输入命令。

    cd FlappyBird
    

    进入项目之后,创建一个build文件夹,用来存放构建信息,当然你也可以在proj.win32目录下,只要CMakeLists.txt不冲突。

    mkdir build
    cd build
    

    紧接着输入以下命令,编译的MSVC版本则需要根据自己的VS版本号来选择,

    由于我的是WIndow所以我指定为32位。

    cmake .. -G"Visual Studio 17 2022" -Tv143 -A win32 .. 
    

    等待过后,就会在build创建后缀为.sln的解决方案文件。

    接下来,单击解决方案文件,会进入到Visual Studio界面。

    PS:注意使用VS打开项目之后,需要找到你的项目右键设置为启动项目,不然报错。

    比如我的项目为FlappyBird,右键它,设置为启动项目就可以了。

​ 新手们需要注意哦,使用Visual Studio添加筛选器,不要以为是在项目结构中创建了一个文件夹,然后傻乎乎的新建文件,修改为coo或者hpp。你会发现编译之后根本找不到文件。

​ 有两个方法:

第一个方法是在vs添加你的build文件夹到引用头文件。

第二个方法是右键添加之后选择新建项,请记得修改添加的目录为 <项目目录>/Classes

​ 不然,有你好受。

  • 结束语

​ 配置就到这里了,你应该已经可以正常的运行项目了。接下来就是看API文档了。

​ 配置这些,踩了很多坑,不希望浪费时间搜索资料再次尝试了,

​ 为此,写下这篇文章,做个笔记。

​ 可能文章有的地方有问题,因为我是直接配置好了,运行了在写这篇文章的,而且我的排版可能有问题。也没有图片。

​ 有缘再会,wuxianggujun

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/658600.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

浮点数加、减运算步骤

一、浮点数介绍 1.1 浮点数格式&#xff1a; 精度位数格式单精度 float4个字节32位符号位1位&#xff0c;阶码8位&#xff0c;尾数23位双精度 double8个字节64位符号位1位&#xff0c;阶码11位&#xff0c;尾数52位 1.2 浮点的表示方法 浮点数在机器中的形式如下所示&#x…

C++数据结构与算法——链表

C第二阶段——数据结构和算法&#xff0c;之前学过一点点数据结构&#xff0c;当时是基于Python来学习的&#xff0c;现在基于C查漏补缺&#xff0c;尤其是树的部分。这一部分计划一个月&#xff0c;主要利用代码随想录来学习&#xff0c;刷题使用力扣网站&#xff0c;不定时更…

Linux初始相关配置

前言 在学完了Linux的相关基础命令后&#xff0c;在正式使用Linux系统之前&#xff0c;我觉得配置一些东西是很有意义的。 文章目录 前言1.权限配置&#xff0c;普通用户无法sudo提权2.vim配置3.vim其他操作4.动静态库5.gcc/g6.程序翻译的过程7.make/makefile8.cmake/CMakeLis…

【Unity3D小功能】Unity3D中设置Text行首不出现标点符号

推荐阅读 CSDN主页GitHub开源地址Unity3D插件分享简书地址我的个人博客 大家好&#xff0c;我是佛系工程师☆恬静的小魔龙☆&#xff0c;不定时更新Unity开发技巧&#xff0c;觉得有用记得一键三连哦。 一、前言 在开发中会遇到Text的文本内容行首出现标点符号的情况&#xf…

vim 替换

在 Vim 编辑器中进行替换操作可以使用 :s 命令。下面是一些示例&#xff1a; 替换当前行第一个匹配到的字符串&#xff1a; :s/old/new/替换当前行所有匹配到的字符串&#xff1a; :s/old/new/g替换从当前行开始到文件末尾的所有匹配到的字符串&#xff1a; :%s/old/new/g替换整…

《动手学深度学习(PyTorch版)》笔记4.8

注&#xff1a;书中对代码的讲解并不详细&#xff0c;本文对很多细节做了详细注释。另外&#xff0c;书上的源代码是在Jupyter Notebook上运行的&#xff0c;较为分散&#xff0c;本文将代码集中起来&#xff0c;并加以完善&#xff0c;全部用vscode在python 3.9.18下测试通过。…

vue2 自定义webpack plugin 添加版本文件到public目录下/vue-config全局环境变量

在项目根目录创建version-plugin.js文件 // 引进node fs 模块 const fs require(fs)// 引进node path 模块 const path require(path)// webpack plugin class VersionPlugin {// 实例化传的参数constructor (options {}) {this.options optionsthis.isFinish false}// p…

实战教程:使用Spring Boot和Vue.js开发社区团购管理系统

✍✍计算机编程指导师 ⭐⭐个人介绍&#xff1a;自己非常喜欢研究技术问题&#xff01;专业做Java、Python、微信小程序、安卓、大数据、爬虫、Golang、大屏等实战项目。 ⛽⛽实战项目&#xff1a;有源码或者技术上的问题欢迎在评论区一起讨论交流&#xff01; ⚡⚡ Java实战 |…

使用AnimeGAN2将照片动漫化--入门

使用AnimeGAN2将照片动漫化--入门 1. 环境准备2. 使用3. 总结 1. 环境准备 首先下载AnimeGAN2:https://github.com/TachibanaYoshino/AnimeGANv2.git 然后使用conda 创建一个python3.6的环境conda create -n pyt36 python3.6&#xff1a; 创建一个requirements.txt文件&am…

前端模块化-AMD、CMD、CommonJS和UMD、ESM

前端模块化-AMD、CMD、CommonJS和UMD、ESM 背景CommonJSAMD和require.jsCMD和sea.jsUMD&#xff08;Universal Module Definition - 通用模块定义&#xff09;ES6 ModuleES6 模块与 CommonJS 模块的差异总结 背景 在NodeJS之前&#xff0c;由于没有过于复杂的开发场景&#xf…

生信学院|02月02日《云端设计一体化平台—3DEXPERIENCE》

课程主题&#xff1a;云端设计一体化平台—3DEXPERIENCE 课程时间&#xff1a;2024年02月02日 14:00-14:30 主讲人&#xff1a;郭俊辰 生信科技 解决方案顾问 1、云产品发展趋势 2、3DExperience产品的介绍 3、3DExperience DEMO演示 请安装腾讯会议客户端或APP&#xff…

记一次无法ping通Cisco switch处理

网络小白&#xff0c;仅仅在工作中需要telnet到switch。奈何之前不知什么原因一直无法ping通该switch&#xff0c;很久只能使用串口连接来配置了。而今遇到了使用脚本telnet switch的场景&#xff0c;不得不再次面对这个问题。 首先还是使用串口来看switch是否拿到ip&#xff…

【蓝桥杯冲冲冲】进阶搜索 Anya and Cubes

蓝桥杯备赛 | 洛谷做题打卡day22 文章目录 蓝桥杯备赛 | 洛谷做题打卡day22Anya and Cubes题面翻译输入格式输出题目描述输入格式输出格式样例 #1样例输入 #1样例输出 #1 样例 #2样例输入 #2样例输出 #2 样例 #3样例输入 #3样例输出 #3 提示题解代码我的一些话 Anya and Cubes …

LeetCode 54 螺旋矩阵

题目描述 螺旋矩阵 给你一个 m 行 n 列的矩阵 matrix &#xff0c;请按照 顺时针螺旋顺序 &#xff0c;返回矩阵中的所有元素。 示例 1&#xff1a; 输入&#xff1a;matrix [[1,2,3],[4,5,6],[7,8,9]] 输出&#xff1a;[1,2,3,6,9,8,7,4,5]示例 2&#xff1a; 输入&#x…

python数据生成excel文件实现

在Python中&#xff0c;你可以使用第三方库 openpyxl 来生成 Excel 文件。以下是一个简单的示例&#xff0c;演示如何使用 openpyxl 创建一个包含数据的 Excel 文件&#xff1a; 安装 openpyxl&#xff1a; 使用以下命令安装 openpyxl&#xff1a; pip install openpyxl 创建…

线程池的知识

线程池是由服务器预先创建的一组子线程&#xff0c;线程池中的线程数量应该和 CPU 数量差不多。线程池中的所 有子线程都运行着相同的代码。当有新的任务到来时&#xff0c;主线程将通过某种方式选择线程池中的某一个子 线程来为之服务。相比与动态的创建子线程&#xff0c;选…

【昕宝爸爸小模块】深入浅出详解之常见的语法糖

深入浅出详解之常见的语法糖 一、&#x1f7e2;关于语法糖的典型解析二、&#x1f7e2;如何解语法糖&#xff1f;2.1&#x1f7e2;糖块一、switch 支持 String 与枚举2.2&#x1f4d9;糖块二、泛型2.3&#x1f4dd;糖块三、自动装箱与拆箱2.4&#x1f341;糖块四、方法变长参数…

实战Vue.js与MySQL:爱心商城项目开发指南

✍✍计算机编程指导师 ⭐⭐个人介绍&#xff1a;自己非常喜欢研究技术问题&#xff01;专业做Java、Python、微信小程序、安卓、大数据、爬虫、Golang、大屏等实战项目。 ⛽⛽实战项目&#xff1a;有源码或者技术上的问题欢迎在评论区一起讨论交流&#xff01; ⚡⚡ Java实战 |…

【深入浅出SpringCloud原理及实战】「Netflix系列之Hystrix」针对于限流熔断组件Hystrix的回退降级实现方案和机制

针对于限流熔断组件Hystrix的回退降级实现方案和机制 依赖隔离依赖隔离之线程&线程池高延迟请求的例子 线程池的优势线程池的弊端线程池的开销线程池开销 信号量 依赖隔离 Hystrix通过使用『舱壁模式』&#xff08;注&#xff1a;将船的底部划分成一个个的舱室&#xff0c;…

SpringBoot+BCrypt算法加密

BCrypt是一种密码哈希函数,BCrypt算法使用“盐”来加密密码,这是一种随机生成的字符串,可以在密码加密过程中使用,以确保每次加密结果都不同。盐的使用增强了安全性,因为攻击者需要花费更多的时间来破解密码。 下图为使用BCrypt算法后的的密码结果值: 下面讲一下注册登陆…