`
myCsdn_taoge
  • 浏览: 40962 次
  • 性别: Icon_minigender_1
  • 来自: 沈阳
文章分类
社区版块
存档分类
最新评论

cocos2d-x 学习笔记1

 
阅读更多

helloworld  基础篇(本人初学,未免很多不足,希望多给予批评)

      首先 安装及配置就不细说了,网上有很多参考。先来说说目录结构 resource ,libs ,Classes ,resource 是资源文件夹,存放一些图片等,libs 是存放的类库文件,Classes 类似于java中的编译好类的文件。include 文件中包含 .h 文件 类似于java 中的接口Interface 只是有方法声明,没有具体实现方法,.cpp文件和.h 文件相互对应,及.cpp文件 实现.h文件中声明的方法。如果涉及到多个类之间的方法调用,需要加入 #include "cocoa/CCObject.h" 类似于java的引用相应的类,这样就可以类之间的方法灵活调用。

      下面来说说demo 中的程序入口,其中的main.cpp 跟java的主函数相似,是程序的入口,看看mian.cpp里面的方法

 

#include "main.h"
#include "AppDelegate.h"
#include "CCEGLView.h"

USING_NS_CC;

// uncomment below line, open debug console
// #define USE_WIN32_CONSOLE

int APIENTRY _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

    // create the application instance
    AppDelegate app;
    CCEGLView* eglView = CCEGLView::sharedOpenGLView();
    eglView->setFrameSize(480, 320);

    int ret = CCApplication::sharedApplication()->run();

#ifdef USE_WIN32_CONSOLE
    FreeConsole();
#endif

    return ret;
}

 

   可以看到在此类中 涉及到了AppDelegate.cpp 下面看下这个类:

 

#include "cocos2d.h"
#include "CCEGLView.h"
#include "AppDelegate.h"
#include "MapScene.h"
#include "SimpleAudioEngine.h"

using namespace CocosDenshion;

USING_NS_CC;

AppDelegate::AppDelegate()
{
}

AppDelegate::~AppDelegate()
{
    SimpleAudioEngine::end();
}

bool AppDelegate::applicationDidFinishLaunching()
{
    // initialize director
    CCDirector *pDirector = CCDirector::sharedDirector();
    pDirector->setOpenGLView(CCEGLView::sharedOpenGLView());

    // turn on display FPS
    pDirector->setDisplayStats(true);

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

    // create a scene. it's an autorelease object
    CCScene *pScene = MapScenes::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();
}

// this function will be called when the app is active again
void AppDelegate::applicationWillEnterForeground()
{
    CCDirector::sharedDirector()->startAnimation();

    SimpleAudioEngine::sharedEngine()->resumeBackgroundMusic();
}

 

   如果想运行自己创建的一个类 可以更改此处代码:

   

 // create a scene. it's an autorelease object
    CCScene *pScene = MapScenes::scene();

    // run
    pDirector->runWithScene(pScene);

    把场景设置为自己的类,然后在编译器中将工程设置为默认启动,既可以运行自己创建的类中的方法了! 

分享到:
评论

相关推荐

    Cocos2d-x学习笔记

    1. 下载并安装Cocos2d-x的最新版本,解压后获得源代码和相关工具。 2. 进入源代码目录,使用命令行工具,运行build-win32.bat脚本,编译整个框架。 3. 在编译完成后,运行install-msvc.bat脚本,安装所需的开发环境...

    cocos2d-x学习笔记

    《cocos2d-x学习笔记》 在学习cocos2d-x时,了解其核心组件和工作流程至关重要。AppDelegate是cocos2d-x框架中的一个关键类,它扮演着应用程序入口点的角色,处理应用程序的生命周期事件。让我们深入探讨...

    Cocos2d-x学习笔记——完全掌握C++ API与游戏项目开发.zip

    本学习笔记旨在帮助开发者全面掌握Cocos2d-x的C++ API以及游戏项目的开发流程。 一、Cocos2d-x框架基础 Cocos2d-x是Cocos2d-x系列的C++版本,它提供了丰富的图形绘制、动画制作、音频播放、物理引擎等功能。Cocos2d...

    Cocos2d-x实战 JS卷 Cocos2d-JS开发

    1. **Cocos2d-x入门**:介绍Cocos2d-x的基本架构,包括场景(Scene)、层(Layer)、节点(Node)等概念,以及如何设置项目环境,创建和管理游戏资源。 2. **图形与动画**:讲解如何使用Cocos2d-x的绘图API绘制2D...

    cocos2d-x学习笔记\cocos2d-x学习笔记(17)--简单游戏实例1--双枪手

    《cocos2d-x学习笔记(17)--简单游戏实例1--双枪手》 cocos2d-x是一款跨平台的2D游戏开发框架,基于C++,支持iOS、Android、Windows等多个操作系统。本笔记主要讲解如何使用cocos2d-x创建一个简单的双枪手游戏实例,...

    cocos2d-x学习笔记(5)-- CCScene场景的切换(带过度效果).rar

    "cocos2d-x学习笔记(5)-- CCScene场景的切换(带过度效果)"这个主题聚焦于如何在游戏过程中平滑地从一个场景过渡到另一个场景,并且添加动态的过渡效果,提升用户体验。 首先,CCScene是cocos2d-x中的一个类,它代表...

    地球人己阻止不了程序猿们学习cocos2d-x了-学习笔记04 .源码

    《Cocos2d-x游戏开发:深入学习笔记04源码解析》 Cocos2d-x,作为一款跨平台的游戏开发框架,深受广大程序猿们的喜爱。它支持使用C++编写代码,同时提供了Lua和JavaScript的绑定,使得游戏开发既高效又灵活。本篇将...

    Cocos2d-x学习笔记——完全掌握JSAPI与游戏项目开发

    资源名称:Cocos2d-x学习笔记——完全掌握JS API与游戏项目开发资源截图: 资源太大,传百度网盘了,链接在附件中,有需要的同学自取。

    Cocos2D-X开发学习笔记-游戏数据存储项目实例(上)

    在“Cocos2D-X开发学习笔记-游戏数据存储项目实例”中,你可能会学习到如何结合上述技术,创建一个实际的游戏数据存储系统。通过阅读教程和分析提供的项目文件"MyDataSave01",你将深入理解如何在实践中应用这些知识...

    老G的cocos2d-x学习笔记

    老G的cocos2d-x学习笔记 第一部分:基本图形绘制 第二部分:字符串绘制 第三部分:绘制图片 cocos2d-x学习笔记04:简单动画 cocos2d-x学习笔记06:如何将win32移植到android ....

    cocos2d-x学习笔记(17)--简单游戏实例1--双枪手.rar

    《cocos2d-x学习笔记(17)--简单游戏实例1--双枪手》 cocos2d-x是一款跨平台的2D游戏开发框架,基于C++,支持iOS、Android、Windows等多个操作系统。本笔记主要讲解如何使用cocos2d-x进行简单的游戏开发,以“双枪手...

    cocos2d-x学习笔记(9)--effect(特效).rar

    《cocos2d-x学习笔记(9)——深入探索Effect(特效)》 在游戏开发领域,特效无疑是一个至关重要的组成部分,它能够极大地提升游戏的视觉吸引力和用户体验。Cocos2d-x作为一款广泛使用的开源2D游戏引擎,提供了丰富的...

    Cocos2D-X2.2.3学习笔记5(UI系统)

    本篇学习笔记将深入探讨Cocos2D-X 2.2.3中的UI系统,帮助你掌握如何高效地利用这一功能。 首先,UI系统的核心组件是`CCMenuItem`,它是所有UI元素的基础,如菜单项、按钮等。你可以通过继承`CCMenuItem`并实现其...

    cocos2d-x学习笔记(17)--简单游戏实例1--双枪手

    【cocos2d-x学习笔记(17)--简单游戏实例1--双枪手】 cocos2d-x是一款基于C++的开源游戏开发框架,广泛应用于2D游戏、UI界面和实时渲染场景。本笔记将围绕如何使用cocos2d-x构建一个简单的双枪手游戏实例进行深入...

    Cocos2D-X开发学习笔记-按键事件使用示例

    这篇学习笔记将深入探讨如何在Cocos2D-X中实现按键事件的处理。 首先,Cocos2D-X使用了事件系统来处理各种用户输入,包括键盘事件。在Cocos2D-X中,你可以通过监听`EventKeyboard`来捕获键盘上的按键按下和释放动作...

    Cocos2D-X开发学习笔记-触屏事件使用示例

    本学习笔记将深入探讨如何在Cocos2D-X中处理触屏事件,让游戏能够响应用户的触摸操作。 首先,我们要了解Cocos2D-X中的触摸事件处理机制。在Cocos2D-X中,触屏事件主要通过`Touch`类和`TouchEvent`类来实现。`Touch...

    cocos2d-x学习笔记(13)--schedule .rar

    这份"Cocos2d-x学习笔记(13)--schedule .rar"很可能是深入讲解如何使用和理解cocos2d-x中的调度系统。让我们详细探讨一下这个主题。 1. **游戏循环(Game Loop)**: 游戏循环是所有游戏引擎的基础,cocos2d-x也不...

    cocos2d-x学习笔记(10)--touchEvent.rar

    本学习笔记将深入探讨cocos2d-x中的触摸事件处理机制,以及如何在项目中有效地利用它们。 首先,cocos2d-x是一个跨平台的2D游戏开发框架,它支持多种操作系统,包括iOS、Android、Windows等。在这些平台上,触摸...

    cocos2d-x学习笔记(23)--地图的使用3.rar

    《cocos2d-x学习笔记——地图的使用3》 在cocos2d-x这个强大的游戏开发框架中,地图的使用是游戏场景构建的关键部分。本文将深入探讨cocos2d-x中的地图处理,主要围绕MapTest2这个示例进行讲解,帮助开发者更好地...

Global site tag (gtag.js) - Google Analytics