Quick-Coco2d-x安装:

Quick 安装完成后,在它的根目录下可以找到有两个名为setup_mac.sh、setup_win.bat的批处理脚本,它们分别是搭建Mac和Windows开发环境的脚本,根据自己系统的需要运行相应的脚步,就可以自动为你完成 Quick 环境的配置。在此之后,我们就可以双击安装目录下的 player3 图标(Windows 下桌面上会生成 player 的快捷键),启动 Quick 自带的模拟器了。在该模拟器界面中,我们可以创建、打开、运行项目,同时还能查看很多 Quick 自带的示例项目。

关于 Quick 更多的使用说明可参考安装目录下的 README 文件

注意:不要把 Quick 安装到根目录,或者带有空格或中文的路径中。另外,Quick-Cocos2d-x 需要 Python 的支持,所以请自行检测你的电脑是否装有Python,方法是在终端中输入 python命令行,如未安装请先下载安装2.x版本的 Python。

Quick-Coco2d-x开发工具

** 开发工具的安装配置 **

Sublime Text 是一个具有漂亮的用户界面和强大的功能的代码编辑器,也是HTML和散文先进的文本编辑器,它的很多功能都依赖于其强大的插件系统。Sublime Text支持Lua语言,但它本身不具有像代码提示这样的功能,所以要想用Sublime Text快速的开发Quick-Coco2d-x程序,我们就必须安装强大的QuickXDev插件。

Sublime Text的下载地址为:http://www.sublimetext.com/,下载后直接安装即可。

QuickXDev的下载地址为:http://git.oschina.net/lonewolf/QuickXDev,将它下载解压之后重命名为QuickXDev,然后把该QuickXDev文件夹放入到Sublime Text的Packages目录下(可通过Sublime Text->Preferences->Browse Packages打开)。

接着依次打开Preferences->Package Settings->QuickXDev->Settings–Default,如下图所示:

复制该处的内容到Preferences->Package Settings->QuickXDev->Settings–User(此时User是空白的)中,同时在 “quick_cocos2dx_root” 项的后面设置Quick-Coco2d-x的安装路径,如下图所示:

设置完成后,User的内容将会覆盖Default下的设置。
注意:以上路径应为你自己的安装路径,如果是Windows系统,则该处的路径形如:

"quick_cocos2dx_root": "D:\\Quick\\quick-3.3"

新建项目

开发工具准备就绪以后,下面我们就可以开始创建我们的项目了.

首先启动 Quick 下的 player3,在这儿的示例标签下你可以看到很多Quick自带的示例,对于初学者来说,看看这些示例的使用方法会对我们学习Quick有很大的帮助,它也是快速学习Quick极好的教材。其界面如下图所示:

接着我们来新建一个项目,点击界面上的“新建项目”,player会自动切换到新建项目的界面。

设置好新建项目的存放路径,包名,屏幕方向,以及是否复制C++源码等选项后,我们就可以点击右下角的 “Create Project” 按钮创建项目了。这里需要注意的是,如果你的项目不涉及到 C++ 部分,那么可以取消“Copy Source Files”项的勾选,这样可以加快项目的创建速度。

点击 Create Project 按钮后,你会发现右下角的 “Create Project” 按钮变成了“Open..”,同时还会出现一个显示创建项目结果的终端窗口。待终端窗口显示创建完成时,我们就可以点击“Open..”打开项目了。

一个默认创建好的项目其实就是个程序员最熟悉的“Hello World”程序,然后后面我们就可以以这个“Hello World”程序为基础来编写自己的游戏。

每个新建的Quick程序都带了一个控制台窗口,如下图所示。这个控制台窗口是player的输出窗口,它包括了你打印的日志以及崩溃日志,当你的程序报错时,它的输出日志将是很好的检验凭证。

引擎目录结构分析

打开 Quick 安装目录,其结构如下图所示:

  • build:该目录是 Cocos2d-x 的项目存放目录。
  • cocos: 改文件夹中包含了大部分引擎的库文件,其中包括:2d、3d、声音、基础库、数学库、物理库等等一系列相关的类文件。
  • docs:该文件夹下包含了引擎的API文档、发布文档(最新版本更改介绍,运行环境要求,编译环境要求及如何运行测试用例的相关命令)、Cocos编程规范等等文档。我们可以通过它查看引擎的代码API,以及最新版本更改介绍,quick运行环境要求,编译环境要求及如何运行测试用例的相关命令。里面的文件多是html和md格式的。
  • extensions: 其中主要是GUI扩展库.
  • external中包含物理引擎第三方库,Box2D和chipmunk;数据库第三方库,sqlite3;网络第三方库,webp,websockets;以及一些其他第三方库,像编码转换库、数据格式库等等。
  • licenses里面包含了引擎中用到的各种许可证文件。LICENSE_SpiderMonkey,spider引擎中用到的SpiderMonkey-JS运行环境,需要此许可证,该许可证适用于MPL/GPL/LGPL几种许可证LICENSE_chipmunk,LICENSE_JS,LICENSE_lua等等。引擎在这些许可证下可以对相应的源代码进行任意拷贝和修改。
  • quick:这个是Quick引擎代码。其中包含了创建各个平台新工程的批处理工具,Quick框架的核心目录,2dx和一些其他依赖的c++文件,模版工程,Quick所带的例子等等Quick的核心文件。
  • README.html/README.md:Quick的使用指南,关于Quick的安装、使用、创建等等信息都可以出这里获取,它其实相当于docs内文件的目录。
  • setup_mac.sh: 搭建Mac开发环境的脚本。
  • setup_win.bat: 搭建Windows开发环境的脚本。
  • tools:Quick用做luabinding的工具,可用来导出自定义的C++类。
  • version:版本标示。
新项目目录结构分析

打开新建项目的目录,我们来分析下新建项目的目录结构,其结构如下图所示:

  • config.json: 项目信息配置文件。
  • debug.log: 项目日志,即打印控制台窗口输出的所有日志文件。
  • frameworks: 存放Cocos2d-x引擎核心代码及各个平台运行时资源。
  • res:存放项目资源的文件夹,也就是说,我们游戏开发中用到的所有图片、字体、音频等资源都放在这里。
  • runtime:存放预编译的运行时库。
  • src:项目源码所存放文件夹,即游戏中的所有的 .lua 文件都放在这里。

以上目录中 res 和 src 文件夹是比较最要的,开发中我们也只需要对这两个文件夹里的内容进行操作,就可以实现游戏的开发。

在新项目的src文件夹中,现在你是可以看到一些 .lua 文件的,这些就是我们工程的lua代码。接下来我们简单的介绍下src中各项的功能:

  • cocos: cocos引擎代码
  • framework: quick的核心部分,在Cocos2d-x基础上自己搭建的一套framework
  • config.lua: 工程配置文件,包括分辨率适配等信息
  • main.lua: 工程入口
  • app: 工程的界面等文件,存放我们的游戏代码
    • MyApp.lua: 游戏的第一个界面
    • scenes: 存放游戏各个场景代码的文件夹
      • MainScene: 游戏的第一个场景

在游戏开发中,需要修改和添加界面时,我们只需要在相应的文件夹中添加场景就可以了。

Quick-Cocos2d-x初学者游戏教程1的更多相关文章

  1. 【Cocos2D研究院之游戏开发】

    http://www.xuanyusong.com/archives/category/ios/cocos2d_game 分类目录归档:[Cocos2D研究院之游戏开发]   201211-19 Co ...

  2. Android 游戏教程让人物动起来

    在这里给大家分享Android游戏教程怎样让人物动起来,话不多说了,直接进入正题. 一. 准备工作     首先要准备好要使用的人物动作图和地形图.把它分割成16个不同的动作,循环播放同一行的4个不同 ...

  3. Cocos2D:塔防游戏制作之旅(十八)

    在Enemy.m的getDamaged:方法只给你添加如下1行(在if条件内): [theGame awardGold:200]; 现在运行游戏你将注意到你不能放置超出你资源金币的炮塔了.当然杀死敌人 ...

  4. C#开发Unity游戏教程循环遍历做出判断及Unity游戏示例

    C#开发Unity游戏教程循环遍历做出判断及Unity游戏示例 Unity中循环遍历每个数据,并做出判断 很多时候,游戏在玩家做出判断以后,游戏程序会遍历玩家身上大量的所需数据,然后做出判断,即首先判 ...

  5. C#开发Unity游戏教程之判断语句

    C#开发Unity游戏教程之判断语句 游戏执行路径的选择——判断 玩家在游戏时,无时无刻不在通过判断做出选择.例如,正是因为玩家做出的选择不同,才导致游戏朝着不同的剧情发展,因此一个玩家可以对一个游戏 ...

  6. C#开发Unity游戏教程之游戏对象的行为逻辑方法

    C#开发Unity游戏教程之游戏对象的行为逻辑方法 游戏对象的行为逻辑——方法 方法(method),读者在第1章新建脚本时就见过了,而且在第2章对脚本做整体上的介绍时也介绍过,那么上一章呢,尽管主要 ...

  7. C#开发Unity游戏教程之使用脚本变量

    C#开发Unity游戏教程之使用脚本变量 使用脚本变量 本章前面说了那么多关于变量的知识,那么在脚本中要如何编写关于变量的代码,有规章可循吗?答案是有的.本节会依次讲解变量的声明.初始化.赋值和运算. ...

  8. C#开发Unity游戏教程之游戏对象的属性变量

    C#开发Unity游戏教程之游戏对象的属性变量 Unity游戏对象的属性——变量 通过对上一章的学习,读者应该了解到了,游戏对象上的属性与脚本中的变量,建立联系的方式就是将脚本赋予游戏对象.上一章只是 ...

  9. Phaser3跟随自定义路径移动的赛车 -- iFIERO游戏教程

      racingcar 在线预览:http://www.ifiero.com/uploads/phaser/pathrotate/代码: var config = { type: Phaser.AUT ...

随机推荐

  1. 浏览器中Javascript单线程分析

    线程这个特性对于一门语言环境来说是尤其重要的,在Java/C++环境下都提供了多线程API操作. 但在Javascript中据说代码执行时单线程的,大量计算的逻辑会阻塞浏览器HTML渲染,但setTi ...

  2. Java网络通信初步认知

    本文转载自:http://wing011203.cnblogs.com/ 在这篇文章里,我们主要讨论如何使用Java实现网络通信,包括TCP通信.UDP通信.多播以及NIO. TCP连接 TCP的基础 ...

  3. Nginx 反向代理学习(一)

    反向代理apache等http资源 ## Basic reverse proxy server ## upstream apachephp{ server 127.0.0.1:8560; #php5. ...

  4. alloc

    注意,凡是用到指针的地方,一定要在堆中分配空间,否则指针释放了,那就不能够传值了. 将一个对象作为另外一个对象的成员变量,可以直接将两个对象联系起来.

  5. c#中浅拷贝和深拷贝的理解

    c#中拷贝有浅拷贝和深拷贝之分. 例如对象A,其中有值类型字段和引用类型字段: 1.浅拷贝: 对于值类型字段,直接逐位复制到新拷贝的副本对象中,修改副本的字段的值,不会影响源对象中字段的值: 对于引用 ...

  6. 错误:Value '0000-00-00 00:00:00' can not be represented as java.sql.Timestamp;的解决

    问题: 代码中查询MySQL的结果集时报错,提示Value '0000-00-00 00:00:00' can not be represented as java.sql.Timestamp;刚开始 ...

  7. LeetCode Shortest Distance from All Buildings

    原题链接在这里:https://leetcode.com/problems/shortest-distance-from-all-buildings/ 题目: You want to build a ...

  8. 去掉comments

    三种comments: /* Test program */ int main() { // variable declaration int a, b, c; /* This is a test m ...

  9. 原生js下拉菜单

    var oDiv = document.getElementById("sunav"); var oLi = oDiv.getElementsByClassName("s ...

  10. 开源实体映射框架EmitMapper介绍

    开源实体映射框架EmitMapper介绍   综述       EmitMapper是一个开源实体映射框架,地址:http://emitmapper.codeplex.com/.       Emit ...