`
caiwb1990
  • 浏览: 316211 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

2.cocos2d-x 第一个项目

阅读更多
不知道大家听说过没这样一个笑话。

一个工程师退休后闲赋在家,闲来无事便想练练书法。当他拿好笔墨纸砚后,想了想,在纸上写下了“Hello World~!”呵呵,相信大家新学任何一门新语言时,做的第一个项目应该都是Hello world把。

打开Xcode -> Create a new Xcode Project -->cocos2d-x
还记得这个界面么,


大家看到了cocos2d-x引擎提供的5种可选择的模板
  • cocos2dx:标准模板(无物理类库,无脚本类库)
  • cocos2dx_box2d(box2d物理游戏模板)
  • cocos2dx_chipmunk(chipmunk物理游戏模板)
  • cocos2dx_js(含js脚本类库)
  • cocos2dx_lua(含lua脚本类库)



我们选择cocos2dx标准模板即可。

如下图输入product name和company identifier



点击NEXT,选好目录地址后即可完成创建,新项目如下图。







首先我们来看一下cocos2dx的项目结构。
大家看上图的左边,主要有以下几个目录:
  • Resources: 资源存放目录
  • ios:项目运行的入住口(main函数 :))
  • libs:cocos2dx引擎的库以及其他扩展的一些类库
  • classes:cocos2dx引擎入口
  • support files:其他文件
  • framework:ios 的sdk
  • products:产品存放的目录



我们常用的入口就是classes目录了,下面我们来看下AppDelegate.cpp的代码,
我在重要的地方都加了注释
在看代码之前,我稍微介绍几个类的概念。
  • CCDirector:顾名思义,导演就是控制不同场景之间的切换
  • CCScene:一个游戏由游戏场景,暂停菜单场景,主菜单场景等多个场景组成。
  • CCLayer:每个场景中由多个层来组成,比如游戏中有远景地图,精灵层,前景装饰,HUD界面等层组成。
  • CCSprite:如雷电游戏由一个飞机精灵,多个敌人精灵等较色,并且有不同的状态。

//
//  Hello_worldAppDelegate.cpp
//  Hello_world
//
//  Created by wenbin.cai on 13-5-30.
//  Copyright __MyCompanyName__ 2013年. All rights reserved.
//

#include "AppDelegate.h"

#include "cocos2d.h"
#include "SimpleAudioEngine.h"
#include "HelloWorldScene.h"

USING_NS_CC;
using namespace CocosDenshion;

AppDelegate::AppDelegate()
{

}

AppDelegate::~AppDelegate()
{
}

bool AppDelegate::applicationDidFinishLaunching() //三个生命周期函数之一:游戏启动时执行
{
    // initialize director
    CCDirector *pDirector = CCDirector::sharedDirector(); //获得唯一的一个导演对象
    pDirector->setOpenGLView(CCEGLView::sharedOpenGLView());

    // turn on display FPS
    pDirector->setDisplayStats(true); //设置显示状态,看运行图中的左下角(对象数,time per second,FPS帧数)

    // set FPS. the default value is 1.0/60 if you don't call this
    pDirector->setAnimationInterval(1.0 / 60);//设置游戏帧数FPS

    // create a scene. it's an autorelease object
    CCScene *pScene = HelloWorld::scene();//创建一个场景

    // run
    pDirector->runWithScene(pScene);//导演展现一个场景

    return true;
}

// This function will be called when the app is inactive. When comes a phone call,it's be invoked too
void AppDelegate::applicationDidEnterBackground()//三个生命周期函数之二:程序被切换至后台时执行
{
    CCDirector::sharedDirector()->stopAnimation(); //整个游戏停止动画
    SimpleAudioEngine::sharedEngine()->pauseBackgroundMusic(); //停止播放背景音乐
    SimpleAudioEngine::sharedEngine()->pauseAllEffects();//展厅所有特效
}

// this function will be called when the app is active again
void AppDelegate::applicationWillEnterForeground()//三个生命周期函数之三,程序从后台切回到前台时执行。
{
    CCDirector::sharedDirector()->startAnimation();//开始所有动画
    SimpleAudioEngine::sharedEngine()->resumeBackgroundMusic(); //继续播放背景音乐
    SimpleAudioEngine::sharedEngine()->resumeAllEffects();//继续所有特效
}





看完代码,让我们运行下我们的第一个cocos2dx项目把~注意左下角3个数字




大概了解了项目的结构,我们可以正式开始学习cocos2dx了~

大家一起加油~~





  • 大小: 234.4 KB
  • 大小: 65 KB
  • 大小: 78.4 KB
  • 大小: 55.4 KB
分享到:
评论

相关推荐

    Cocos2d-x 3.x游戏开发实战pdf含目录

    Cocos2d-x 是一个开源的、跨平台的2D游戏开发框架,广泛应用于iOS、Android、Windows等多平台的游戏开发。3.x版本是其发展中的一个重要阶段,引入了多项优化和新特性,旨在提高开发效率和性能。 本书首先会介绍...

    经典版本 方便下载 源码 旧版本 3.8 官网找不到了 cocos2d-x-3.8.zip

    cocos2d-x 是一个跨平台的游戏开发框架,它基于C++,同时提供了Lua和JavaScript的绑定,让开发者可以方便地在多种操作系统上创建2D游戏、演示程序和其他图形交互应用。这个“cocos2d-x-3.8.zip”压缩包包含的是cocos...

    Cocos2d-x 3.x制作2048

    2. 手势识别框架搭建:制作2048游戏首先需要建立一个项目框架,书中介绍了如何创建项目“TZFE”(2048的英文单词开头),并且在项目的HelloWorldScene.h头文件中添加事件监听回调和滑动方法,实现上/下/左/右的滑动...

    Cocos2d-x实战:C++卷(2版)源代码

    Cocos2d-x是一个开源的、跨平台的游戏开发框架,广泛应用于iOS、Android、Windows等多个操作系统。本书以C++语言为主要编程语言,提供了丰富的实践案例和源代码,帮助读者深入理解和掌握Cocos2d-x的使用。 在Cocos...

    cocos2d-x API中文文档

    cocos2d-x是一个基于MIT许可证的开源游戏引擎,它以快速、简单且功能强大的特性闻名,允许开发者使用C++、Lua和JavaScript进行跨平台开发,支持包括iOS、Android、Windows Phone、Blackberry以及Tizen在内的多个平台...

    cocos2d-x 3.x游戏开发实战光盘

    《cocos2d-x 3.x游戏开发实战光盘》是一个深入探讨cocos2d-x 3.x游戏引擎开发的资源集合,旨在帮助开发者通过实际案例掌握这一强大的2D游戏开发工具。cocos2d-x是一款开源的游戏开发框架,基于C++,广泛应用于跨平台...

    Cocos2d-x实战C++卷关东升著完整版pdf

    Cocos2d-x是一个开源的、跨平台的2D游戏开发框架,广泛应用于iOS、Android、Windows等多个操作系统。本书以C++语言为主要编程工具,详细介绍了如何利用Cocos2d-x进行游戏开发。 首先,Cocos2d-x的基础知识是必须...

    Cocos2d-x学习笔记

    6. 编译并运行HelloWorld项目,观察到基本的游戏框架运行在屏幕上,此时Cocos2d-x的入门学习已成功迈出第一步。 此外,学习Cocos2d-x还应该包括以下几个方面: - 掌握Cocos2d-x的基本架构:Cocos2d-x框架中包括...

    cocos2d-x 案例开发大全 第二章(源码)

    《cocos2d-x案例开发大全》第二章的源码主要涵盖了使用cocos2d-x进行游戏开发的各种实践技巧和示例。cocos2d-x是一个开源的游戏开发框架,基于C++,支持跨平台,包括iOS、Android、Windows等多个操作系统。本章的...

    Cocos2d-x实战_Lua卷 _第2版

    《Cocos2d-x实战_Lua卷_第2版》是一本专为游戏开发者准备的指南,主要聚焦于使用Cocos2d-x框架与Lua语言进行游戏开发。Cocos2d-x是一个开源的游戏开发框架,它允许开发者用C++、Lua或者JavaScript编写游戏,并且可以...

    迷失航线-Cocos2d-x项目实战-射击类游戏-关东升

    在这个项目实战中,我们将深入探讨如何利用Cocos2d-x 3.2版本构建一款完整的射击游戏。 首先,Cocos2d-x的场景管理是游戏开发的基础。在《迷失航线》中,游戏会通过Scene对象来组织不同的游戏阶段,如主菜单、游戏...

    cocos2d-x实战 c++卷教程及完整源码

    cocos2d-x实战 c++卷教程及完整源码下载,使用最新cocos2d-x-3.14版本,在xcode7.3上已编译通过。 解决相关问题 1、解决源程序在高版本上无法编译问题 2、解决源程序中文注释部分,xcode上显示乱码问题 3、根据书籍...

    cocos2d-x默认第一个模板

    "默认第一个模板"通常是指cocos2d-x新项目创建时提供的基础结构。这个模板包含了基本的游戏入口、主循环、渲染循环以及一些基本的示例代码,帮助开发者快速上手。例如,`HelloWorldScene`类是项目中的核心场景,包含...

    cocos2d-x+socket

    例如,我们可以使用C++的Socket API或者第三方库如Poco,它们提供了封装好的Socket操作接口,使得在cocos2d-x项目中使用Socket变得更加便捷。同时,cocos2d-x的网络模块(如`Network`类)虽然主要用于HTTP请求,但也...

    第四课:Cocos2D-X跨平台开发环境搭建(win32)

    - 打开Visual Studio 2010,创建一个新的Cocos2D-X项目,如果能正常创建并运行示例程序,说明你的开发环境已经成功搭建。 ### 6. 进阶配置 - 安装Cocos Console,这是一个命令行工具,用于快速创建项目、构建和...

    python创建cocos2d-x项目代码

    假设我们已经有了一个名为 `create_project.py` 的脚本文件,下面我们将详细介绍如何使用这个脚本来创建一个新的 Cocos2d-x 项目。 ##### 3.1 准备环境 首先确保已经安装了以下工具: - Python:推荐使用 Python ...

    cocos2d-x 3.6创建项目代码

    创建新项目的第一步是打开命令行工具,定位到cocos2d-x的安装目录下的tools/cocos2d-console/bin文件夹。在这里,我们可以使用`cocos new`命令来创建新的项目。例如,要创建一个名为"我的游戏"的项目,可以输入以下...

    cocos2d-x-Introduction.zip_cocos2d_cocos2d-x

    cocos2d-x是一款强大的跨平台游戏开发引擎,被广泛应用于iOS、Android、Windows等多个操作系统上。它以其高效、易用的特性,为开发者提供了一套完善的2D游戏开发解决方案,极大地简化了游戏开发流程。 一、cocos2d-...

    Cocos2d-x 3.X游戏开发实战 (肖文吉) 完整pdf

    2. **环境搭建与项目创建**:书中会详述如何配置开发环境,包括安装必要的软件,如IDE、SDK、构建工具等,并指导读者创建首个Cocos2d-x项目,理解项目结构和基本工作流程。 3. **图形与精灵(Sprites)**:讲解如何...

    Cocos2d-x之Lua核心编程 ,刘克男,杨雍著 ,P227

    2. Cocos2d-x与Lua的集成:Cocos2d-x提供了一个名为Cocos2dx-Lua的模块,使得开发者可以直接使用Lua编写游戏代码。这个模块包含了Lua到C++的绑定,使得Lua可以直接调用Cocos2d-x的API。 3. Lua环境设置:在开始Lua...

Global site tag (gtag.js) - Google Analytics