cocos2d-x学习 之一

最近准备学习cocos2d-x的开发,首先要搭建一下开发环境。今天就先搭建一下开发环境。本人系统为Mint-15 64位的linux,以下的开发环境只用于linux。首先到cocos2d-x的官网上下载安装包,由于cocos2d-x是开源的,所以我们可以查看源码,从以下地址下载:

http://www.cocos2d-x.org/download

我们下载2.2.1的版本,下载的文件是一个zip的包。下载后将其解压到本地,此处最好解压到我们将要安装的目录。下面以我的安装过程为例:

1 sudo mkdir /opt/cocos2d-x
2 sudo chown xxx:xxx -R  /opt/cocos2d-x
3 mv cocos2d-x-2.2.1.zip  /opt/cocos2d-x
4 cd  /opt/cocos2d-x
5 unzip -x cocos2d-x-2.2.1.zip

通过上述步骤我们已经将文件解压出来了,接下来我们就可以进行编译了,步骤如下:

1 ./install-deps-linux.sh
2 make -j4

第一个命令是检查所需的依赖,如果没有则安装,执行这个命令可能需要root用户的权限,第二个命令则是编译该开发库。如果不出意外,大概10分钟后会编译完成。当编译完成后,我们就可以运行它的例子了。

在我们解压出的文件里有一个samples的目录,这个目录就是cocos2d-x提供给我们的例子,在这个目录又有三个子目录:

1 Cpp  Javascript  Lua

在我里我们只看c++版本的代码,我们进入Cpp目录下,就可以看到自带的例子,在这里我运行一下TestCpp的例子,以下为截图:

通过以上的步骤我们已经将cocos2d-x成功安装到了我们的系统。那我们如何新建一个我们自己的项目呢。接下来我们就新建一个cocos2d-x的项目。以下的操作如无特别说明,都是以我们解压出的文件为根目录的。

1 cd tools/project-creator

在这个目录下有一个python脚本,我们可以通过这个脚本来创建项目。我们先看一下其运行方法:

1 Usage: create_project.py -project PROJECT_NAME -package PACKAGE_NAME -language PROGRAMING_LANGUAGE
2 Options:
3   -project   PROJECT_NAME          Project name, for example: MyGame
4   -package   PACKAGE_NAME          Package name, for example: com.MyCompany.MyAwesomeGame
5   -language  PROGRAMING_LANGUAGE   Major programing lanauge you want to used, should be [cpp | lua | javascript]
6 
7 Sample 1: ./create_project.py -project MyGame -package com.MyCompany.AwesomeGame
8 Sample 2: ./create_project.py -project MyGame -package com.MyCompany.AwesomeGame -language javascript

在这里我们创建一个项目试试看:

./create_project.py  -project Test -package com.example.test -language cpp

在这里我们挨个看一下我们传递的命令行参数,-project用来指定包名,此处为Test ,-package用来指定包名 ,此处为com.example.test,这个主要在androd项目中会用到,

-language用来指定我们将会以什么语言开发,在此处我们使用c++来开发。

执行完上述的命令后,我们却在当前目录看不到项目,其会在根目录的projects目录下,找到我们刚刚创建的项目,我们看一下目录结构:

1 Classes  proj.android  proj.blackberry  proj.ios  proj.linux  proj.mac  proj.marmalade  proj.win32  proj.winrt  proj.wp8  Resources

当我们看到以上目录结构,不得不说一句强大,我们只用一个脚本就创建出了多个平台的项目,我们只需要进入到我们pc所在的平台下就可以进行相应的开发。

 现在我们只需要进入proj.linux目录执行make就可以编译出我们的第一个cocos2d-x的项目,还等什么呢,赶紧编译吧

以上就是我们刚刚创建的项目。由于本人手上只有android的设备,所以在这里只说一下如何导入到android的sdk。需要说明的时我们需要正确配置android的sdk 和android NDK,在这里我们默认大家是配置好的。

 打开eclipse,我们选择导入一个项目,截图如下:

在此处需要注意的是下面的两个复选框一定不能选中,否则会导致项目错误。当我们导入项目之后,发现项目不错,这个是由于我们还没有导入cocos2d-x的库文件,所以系统会报错。按照同样的方法导入cocos-2d的库文件。cocos-2d的库文件位于cocos2dx/platform/android目录中,我们导入该库文件。如果不出意外,就可以看到刚刚提示的错误已经不见了。先不要急着编译android的项目,还有点问题,我们还没有在脚本里执行NDK的路径,需要修改一下我们的编译脚本。在这里需要修改两处,一处是我们的编译脚本还有一处是我们的资源文件。我们先修改其编译脚本。

在proj.android中找到build_native.sh文件,在该文件中加入如下的一行代码

1  NDK_ROOT=/opt/android/android-ndk-r9b

需要注意的是此处的NDK路径要替换成各自对应的DNK路径。修改资源文件:

1  proj.android $ ln -s ../Resources Resources

我们只需要在eclipse中刷新我们的项目就可以看见资源文件了。

接下里我们就可以在我们的android设备上运行我们创建的项目了。

截图如下:

转载于:https://www.cnblogs.com/jjxxjnzy/p/3471143.html

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

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

相关文章

python里while的用法_Python学习笔记之While循环用法分析

本文实例讲述了Python学习笔记之While循环用法。分享给大家供大家参考,具体如下:前面一篇《Python学习笔记之For循环用法》详细介绍了Python for循环,这里再来讲述一下while循环的使用方法:Python 中的While循环For 循环是一种有限…

linux环境下最简单的C语言例子

1、装好linux系统和配置GCC环境 给自己的电脑上安装linux系统,比如我用大的是ubuntu,然后在ubuntu上配置GCC环境,如果不知道配置,请百度“linux上怎么配置GCC环境” 2、打开终端创建文件写代码 用组合命令打开终端 Ctrl+Alt+T 用vim创建文件编写代码 vim hello.c再点击下…

在 App 扩展和主 App 间共享数据

tags: iOS 8,Swift,App Groups 随着 iOS 8 的发布,苹果为广大开发者很多新的 API,其中最突出显著的就非 App Extension 莫属了。这为开发者们又带来了很多机会。 而我们在开发 App Extension 的时候,基本大多数人都会遇到这样一个问题。就是由…

Java8 (1)

参考资料: 《Java8 in Action》 Raoul-Gabriel Urma 一、jdk8 客观的说,Java8是一次有重大演进的版本,甚至很多人认为java8所做的改变,在许多方面都比Java历史上任何一次改变都深远。 Scala,python这样优秀编程语言中对…

[探索 .NET 6]02 比较 WebApplicationBuilder 和 Host

这是『探索 .NET 6』系列的第二篇文章:01 揭开 ConfigurationManager 的面纱02 比较 WebApplicationBuilder 和 Host在 .NET 中,有一种新的“默认”方法用来构建应用程序,即使用 WebApplication.CreateBuilder()。在这篇文章中,我…

python计算公式分母有0_你知道Python中的浮点除法和积分除法吗,python,float,整除,都...

从python2.2开始,便有两种除法运算符:"/"、"//"。两者最大区别在:python2.2前的版本和python2.2以后3.0以前的版本的默认情况下,"/"所做的除法是以一种两个数或者多个数出现一个浮点数结果就以浮点…

计算机科学概论(2)数据的操控和程序的执行

1.CPU是什么?它有什么作用?CPU(Central Processing Unit,中央处理器)负责操控数据在不同位置间的移动及对数据进行处理。它是计算机的核心部件。它主要由三个部分组成:算数/逻辑单元、控制单元、寄存器单元。算数逻辑单元负责在数…

都怪爱因斯坦没说清楚!竟有人相信一个粉笔头就能让全人类多喝100年的热水?...

全世界只有3.14 % 的人关注了爆炸吧知识一个粉笔头一共能释放多少能量爱因斯坦大家肯定都熟悉,相信也有很多朋友听说过质能方程。根据质能方程的公式,我们发现:似乎能量和质量是可以相互转化的。尤其是一些没有系统学习过相对论,又…

linux环境下用TcpDump抓包分析总结

1、手机IP 怎么知道手机ip,输入下面命令 adb shellifconfig 比如得到手机ip 2.0.0.1 2、目标IP 比如目标地址ip为10.0.0.1 3、抓包命令 我们不带端口命令如下 tcpdump -i any host 2.0.0.1 -nv 代码端口的命令如下(端口为50129) tcpdump -i any host 2.0.0.1 and port…

UVa 12100 - Printer Queue

刚A完图书系统那道题&#xff0c;然后看提交次数那个字典的比这道题多&#xff0c;看了看那道更新字典没有思路&#xff0c;就看了这道题&#xff0c;感觉这道题比更新字典简单多了。 #include<iostream> #include<queue> #include<map> using namespace std…

从微信云托管容器镜像的选择-alpine 说起

微信云托管 使用目前主流的容器平台Docker以及容器编排技术Kubernetes&#xff08;简称K8S&#xff09;&#xff0c;来管理你的项目。使用微信云托管需要掌握对Docker的使用&#xff0c;但你无需掌握K8S的使用方法。微信云托管将K8S的运维配置完全接手&#xff0c;你不需要关心…

H5移动开发AUI框架入门---博客园老牛大讲堂

大家都知道H5可以开发移动端的页面&#xff0c;网上提供的移动端的开发都有很多。因为我学习了AUI框架&#xff0c;所以我这里介绍一下移动端AUI框架。--博客园老牛大讲堂 一、AUI框架是什么&#xff1f;---博客园老牛大讲堂 AUI框架就是利用原生的js和css封装成的一些界面。当…

python画樱桃小丸子_每天坚持画画|简笔画练习“樱桃小丸子”

《樱桃小丸子》也是80后的经典回忆&#xff0c;特别是女生们。你们可能不知道如果按实际年龄来算小丸子今年已经52岁了(1965年5月8日出生)可想而知这部动画片的影响力有多大。【今日主题】《樱桃小丸子》樱桃子BY&#xff1a;网络&#xff0c;侵删【完成图】BY&#xff1a;纳豆…

linux操作命令等积累

1&#xff0c;启动服务&#xff1a;两种方式&#xff1a; /etc/init.d/networking start /etc/init.d/mysql start #:service mysql start service networking start(stop,restart) $:sudo service mysql start(stop,restart) 2, linux 程序安装位置&#xff1a;多数位于/v…

linux之gdb调试常用100个技巧

linux之gdb调试常用100个技巧 https://gitlore.com/page/gitlore-git/gdb_tips/index.html 如果不懂linux gdb调试的 看下这篇文章 详细解说

制造价值基本方程

财富来自于自然资源、生产制造和服务。 未经加工的自然资源是价值低或没有用的&#xff0c;服务也必须和生产制造联系起来才能增加财富。 生产制造是增加财富的核心手段。 ERP enterprise resources planning 企业资源计划 -- 是管理的理念和工具。 制造要回答的问题&#xff1…

.NET6使用DOCFX根据注释自动生成开发文档

本文内容来自我写的开源电子书《WoW C#》&#xff0c;现在正在编写中&#xff0c;可以去WOW-Csharp/学习路径总结.md at master sogeisetsu/WOW-Csharp (github.com)来查看编写进度。预计2021年年底会完成编写&#xff0c;2022年2月之前会完成所有的校对和转制电子书工作&…

Oracle数据库-主键(primary key)、外键(foreign key)、候选键(candidate key)、超键(super key)和references总结...

主要介绍一下个人对主键&#xff08;primary key&#xff09;、外键&#xff08;foreign key&#xff09;、候选键&#xff08;Candidate key&#xff09;、超键&#xff08;super key&#xff09;、references的总结 概念&#xff1a; 主键&#xff1a;用户选择元组标识的一个…