cocos2d_cocos2d-x - CSDN
cocos2d 订阅
cocos2d [1]  是一个基于MIT协议的开源框架,用于构建游戏、应用程序和其他图形界面交互应用。可以让你在创建自己的多平台游戏时节省很多的时间。Cocos2D也拥有几个主要版本,包括Cocos2D-iPhone、Cocos2D-X,以及被社区普遍看好的Cocos2D-HTML5和JavaScript bindings for Cocos2D-X。同时也拥有了非常优秀的编辑器(独立编辑器),例如SpriteSheet Editors、Particle Editors 、Font Editors 、 Tilemap Editors。另外,2012年发布的CocoStudio工具集是开源游戏引擎Cocos2d-x开发团队官方推出的游戏开发工具,目前已经进入稳定版。CocoStudio吸取了他们自己在游戏制作中的经验,为移动游戏开发者和团队量身定做,旨在降低游戏开发的门槛,提高开发效率,同时也为Cocos2D-X的进一步发展打下基础。 展开全文
cocos2d [1]  是一个基于MIT协议的开源框架,用于构建游戏、应用程序和其他图形界面交互应用。可以让你在创建自己的多平台游戏时节省很多的时间。Cocos2D也拥有几个主要版本,包括Cocos2D-iPhone、Cocos2D-X,以及被社区普遍看好的Cocos2D-HTML5和JavaScript bindings for Cocos2D-X。同时也拥有了非常优秀的编辑器(独立编辑器),例如SpriteSheet Editors、Particle Editors 、Font Editors 、 Tilemap Editors。另外,2012年发布的CocoStudio工具集是开源游戏引擎Cocos2d-x开发团队官方推出的游戏开发工具,目前已经进入稳定版。CocoStudio吸取了他们自己在游戏制作中的经验,为移动游戏开发者和团队量身定做,旨在降低游戏开发的门槛,提高开发效率,同时也为Cocos2D-X的进一步发展打下基础。
信息
用    途
构建游戏、程序和图形交互应用
中文名
cocos2d
版本分类
Cocos2D-iPhone、Cocos2D-X等
定    义
是一个基于MIT协议的开源框架
特    点
易用、高效、灵活、免费、社区支持
开发者
Ricardo和朋友
cocos2dCocos2D特点
易于使用:游戏开发者可以把关注焦点放在游戏设置本身,而不必消耗大量时间学习晦涩难懂的OpenGL ES,此外,Cocos2D还提供了大量的规范。高效:Cocos2D基于OpenGL ES进行图形渲染,从而让移动设备的GPU性能发挥到极致。灵活:方便扩展,易于集成第三方库。免费:基于MIT协议的免费开源框架,用户可以放心使用,不用担心商业授权的问题。社区支持:关心Cocos2D的开发者自发建立了多个社区组织,可以方便的查阅各类技术资料。
收起全文
  • Cocos2d-x 游戏开发详解

    2019-12-26 10:31:24
    本课程通过20章125节课详细讲述了Cocos2d-x开发的详细过程,内容包括:基础编程:开发环境搭建、核心类、标签、菜单、精灵、事件处理、动作、定时器、GUI、数据结构;高级开发:音效、网络编程、数据存储、Tiled Map...
  • 本课程将帮助广大Cocos2d-x学员了解如何使用Cocos2d-x开发一款相对简单的射击类游戏。学员将会了解开发一款完整游戏的基本步骤,并学会如何将《从零开始掌握Cocos2d-x 3.x》中的知识转化为实际的游戏。学员将从这款...
  • Cocos2d开发系列 一

    2018-11-06 12:28:23
    Cocos2d开发系列 一

    分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow

    也欢迎大家转载本篇文章。分享知识,造福人民,实现我们中华民族伟大复兴!

                   

     

    Cocos2d是一个比较流行的iphone游戏开发框架,据说在AppStore 上已有超过 100 个游戏是基亍 Cocos2D-iPhone。其中 3 个由此 迚入过 TOP 10 的排名。其中的 StickWars 更是曾排名第一。现在,让我们来开始Cocos2d的学习之旅吧!

     

    一、安装下载

    Cocos2d下载地址:http://code.google.com/p/cocos2d-iphone/downloads/list

    当前最新版本为1.0。本教程选用的是稳定版本0.99.5。

    下载文件为targ.gz格式,将其解压到某个目录下,打开该目录,找到install-templates.sh文件,这个就是Cocos2d的安装脚本。

    你可以直接在终端里运行这个脚本进行安装,但如果你的Xcode没有安装在默认目录 下,则你需要在命令中添加一个参数。

    例如,你的Mac中可能同时存在一个Xcode版本(3.2.5),安装目录为:/Users/$yourname$/Developer,如果你想将Cocos2d安装到这个Xcode(3.2.5),则需要使用用命令:

    ./install-templates.sh  /Users/$yourname$/Developer

    来进行安装。

    安装完毕,你可以打开Xcode,新建Project,你会在UserTemplates目录下看到多了4个Cocos2d Application模板(如果是0.99版本,则只有3个模板):

     

    二、新建 cocos2dApplications项目

    新建一个cocos2dApplications项目,编译运行效果如下:

     

    打开HelloWorldScene.h,可以看到如下代码:

    #import "cocos2d.h"

     

    // HelloWorld Layer

    @interface HelloWorld : CCLayer

    {

    }

     

    // returns a Scenethat contains the HelloWorld as the only child

    +(id) scene;

     

    @end

    首先,import指令导入了cocos2d.h,在这个.h文件中,已经包含(import)了cocos2d的所有类。因此我们导入了cocos2d.h后,就不需要再一个个导入要用到的cocos2d类了。

    其次,HelloWorldScene.h中定义了一个CCLayer子类。CCLayer即所谓“层”的概念。层是一个容器的概念,cocos2d在层上放置多个动画元素,如文字、标签、图片、菜单,此外层接收触摸和加速器事件。

    第三,定义了一个静态方法,返回了一个——Scene,这个Scene实际上包含了一个层——HelloWorld,这是一个不错的实例化方法。Coco2d中Scene的概念,类似于电影中“场景”的概念--由于受舞台空间或屏幕空间的限制,一个情节往往只能在固定的空间环境中展现,而电影往往是由许多个情节构成, 随着剧情的发展,场景也需要改变,新的场景需要产生。所以电影就会在一幕幕场景中进行切换 ,这种切换被称为“转场”。

     切换到HelloWorldScene.m :

    #import "HelloWorldScene.h"

     

    // HelloWorldimplementation

    @implementation HelloWorld

     

    上面导入了HelloWorldScene.h并实现了HelloWorld类。O-C中,文件名不见得需要和类名一致。

    +(id) scene

    {

    ……

    }

    这个方法就不介绍了,和前面说过的一样。

    -(id) init

    {

    if( (self=[super init] )) {

    CCLabelTTF *label = [CCLabelTTF labelWithString:@"HelloWorld" fontName:@"MarkerFelt" fontSize:64];

     

    CGSize size = [[CCDirector sharedDirector] winSize];

    label.position =  ccp(size.width /2 , size.height/2 );

    [self addChild: label];

    }

    return self;

    }

    init方法中,创建了一个标签 CCLabelTTF (以前是CCLabel)并让他居中。ccp函数是CGPointMake函数的缩写。

     

    接下来,看一下应用程序委托,如果你有过Cocoa编程的经验,那么会发现这就是一个UIApplicationDelegate,它的主要方法是 applicationDidFinishLaunching:(UIApplication*)application :。

    ,并将EAGLView绑定到

    首先取得Director——导演。导演是cocos2d程序的统筹者和协调者,负责整个应用程序的主窗口的创建,以及每个场景在时间线上的先后顺序。

    CCDirector *director = [CCDirector sharedDirector];

    然后创建EAGLView实例。 EAGLView 派生亍类 UIView, 苹果公司用它来实现 OpenGL 输出支持,以支持OpenGLES 编程:

     

    EAGLView *glView = [EAGLView viewWithFrame:[window bounds]

       pixelFormat:kEAGLColorFormatRGB565

       depthFormat:0

    ];

    并将EAGLView绑定到导演的openGLView属性:

    [director setOpenGLView:glView];

    设置横屏:

    setDeviceOrientation:kCCDeviceOrientationLandscapeLeft];

    设置帧间隔(尚未实现):

    [director setAnimationInterval:1.0/60];

    设置帧率显示,即屏幕左下角不断变化的数字:

    [director setDisplayFPS:YES];

    设置渲染格式位32位RGB:

    [CCTexture2D setDefaultAlphaPixelFormat:kCCTexture2DPixelFormat_RGBA8888];

    移除闪屏,即一开始的那个coco2d Logo标志的屏幕:

    [self removeStartupFlicker];

    显示HelloWorld文字标签的场景:

    [[CCDirector sharedDirector] runWithScene: [HelloWorld scene]];

    }

     

     

     

     

     

     

               

    给我老师的人工智能教程打call!http://blog.csdn.net/jiangjunshow

    这里写图片描述
    展开全文
  • 本套教程的目标是让Cocos2d-x初学者掌握Cocos2d-x 3.0的基本开发技术(包括开发环境的搭建、Director、Node、Scene、Layer等,这些技术都是开发游戏的技术。并且可以利用本套 教程讲解的技术实现一个射击类游戏:...
  • cocos2d-js是cocos2d-x的JavaScript版本,真正跨全平台的游戏引擎,采用原生JavaScript语言,可发布到包括Web平台,iOS,Android,Windows Phone
    原文地址为:cocos2d-js 入门 (主要是HTML5)

    cocos2d-js是cocos2d-x的JavaScript版本,真正跨全平台的游戏引擎,采用原生JavaScript语言,可发布到包括Web平台,iOS,Android,Windows Phone8,Mac,Windows等平台。

    利用cocos2d-js开发HTML5游戏/动画,我们可以通过SDK也可以直接使用js类库:

    l SDK下载:http://cn.cocos2d-x.org/download/

    l js类库:http://www.cocos2d-x.org/filecenter/jsbuilder/

     

    先说说SDK的开发步骤:

    1、 安装python

    2、 解压SDK,运行setup.py

    3、 运行cmd,新建cocos2d-js项目:cocos new –l js project_name

    4、 使用webStorm等IDE打开项目目录,新建的项目已经有现成HelloWorld例子

    5、 了解一下main.js的说明(关于project.json),然后打开resource.js和app.js阅读代码

    6、 在app.js中正式开始自己的代码编写。当然,这里可以增加新的js文件,需要修改project.json。

     

    再说说js类库的开发步骤:

    1、 下载类库

    2、 新建HTML页面,引入相应类库

    3、 在onload之后,编写cocos2d-js代码,从cc.game.run()开始。入口代码其实跟SDK开发方式的main.js一样。这里更推荐使用SDK方式,因为可以通过阅读源代码获取API的使用说明。

    开始cocos2d-js开发前,需要洗洗脑,知道cocos2d-js的平面坐标情况。这跟HTML和canvas的布局都不一样。

    wps_clip_image-10616

    在cocos2d-js游戏中,画面的左下角是(0,0),x从左往右递增,而y是从下往上递增的,跟数学的二维坐标系一致。

    Cocos2d-js框架把游戏拆分为很多个场景,当玩家在不同界面切换的时候,框架实际上就是让游戏画面在不同场景中切换。跟Flash一样,cocos2d-js也有最基本的元素——节点Node。节点可以包含子节点,形成树形结构:

    wps_clip_image-1073

    然后,Layer、Sprite继承了节点,实现了更多功能,例如Layer用于表示一个面板一个层,Sprite精灵用于加载图片表示人物。而场景本身也是节点,所以场景中可以添加层,层中可以添加层,也可以添加精灵。

     

    接着基于刚新建的HelloWorld,做一个简单的例子。

     

    首先解释一下main.js几行代码。

    cc.game.onStart = function(){

    cc.view.adjustViewPort(
    true); //设置html5的viewport meta属性

    cc.view.setDesignResolutionSize(
    800, 800, cc.ResolutionPolicy.SHOW_ALL); //设置画面尺寸和适配规则

    cc.view.resizeWithBrowserSize(
    true); //设置是否跟随浏览器窗口变化

    //load resources

    cc.LoaderScene.preload(g_resources,
    function () {

    cc.director.runScene(
    new GameScene());

    },
    this);

    };

    cc.game.run();
    //游戏启动

     

    接着修改app.js:

    var GameLayer = cc.Layer.extend({

    ctor:
    function () {

    this._super();

    var size = cc.winSize;

    //加载背景图

    var bg = new cc.Sprite("res/bg.jpg");

    this.addChild(bg, 1);

    bg.x
    = size.width/2;

    bg.y
    = size.height/2;

    //加载5个小人,不断做旋转和放缩

    for (var i = 0; i < 5; i++) {

    var man = new cc.Sprite("res/grossini.png");

    man.runAction(cc.spawn(cc.rotateBy(
    1, 360, 360), cc.sequence(cc.scaleTo(1, 2), cc.scaleTo(1, 1))).repeatForever());

    this.addChild(man, 2);

    man.x
    = size.width*Math.random();

    man.y
    = size.height*Math.random();

    }

    //加载5个小人,不断做14帧的动画播放

    for (var j = 0; j < 5; j++) {

    var man = new cc.Sprite();

    var animation = new cc.Animation();

    for (var i = 1; i <= 14; i++) {

    animation.addSpriteFrameWithFile(
    "res/grossini_dance_" + (i < 10 ? ("0" + i) : i) + ".png");

    }

    animation.setDelayPerUnit(
    1 / 7); //控制动画播放频率

    man.runAction(cc.animate(animation).repeatForever());

    man.x
    = size.width*Math.random();

    man.y
    = size.height*Math.random();

    this.addChild(man, 3);

    }

    return true;

    }

    });

    var GameScene = cc.Scene.extend({

    onEnter:
    function () {

    this._super();

    var layer = new GameLayer();

    this.addChild(layer);

    }

    });

     

    利用Webstorm的服务器功能,右击index.html使用chrome运行:

    wps_clip_image-14031

    可以看到一堆小人:

    wps_clip_image-10315

    通过这个简单例子,我们对cocos2d-js制作HTML5有了初步印象。后续就可以继续学习官方SDK中附带的samples了,里边的js-tests项目中包含了几乎全部cocos2d-js功能的实例程序,例如:定时器、精灵动作、帧动画、骨骼动画、粒子系统、界面编辑器等等。

     

     

    后边,笔者把原来starling的小游戏Hungry hero改造一下,使用cocos2d-js重新实现。这是一个跑酷游戏,玩家需要控制超人不断吃食物,同时避开障碍物。

    wps_clip_image-709wps_clip_image-17852

    演示地址:

    http://kenkozheng.github.io/cocos/hungry_hero/index.html

    代码地址:

    https://github.com/kenkozheng/cocos2d-js/tree/master/hungry_hero

    游戏中使用到:

    1、 基本:鼠标事件、帧动画、声音(cc.audioEngine)

    2、 平行背景(自行实现)

    3、 对象池(cc.pool)

    4、 粒子系统(cc.ParticleSystem)

    5、 位图字体(cc.LabelBMFont)

    6、 批量渲染层(cc.SpriteBatchNode)

    具体的每个知识点就不在这里详细介绍了,具体可以搜索官方SDK samples中的例子。


    转载请注明本文地址:cocos2d-js 入门 (主要是HTML5)
    展开全文
  • cocos2d-x-2.2.1下载,不多说。或者可以下载另一个资源 cocos引擎老版本集合(cocos2d-x-2.2.1 - 3.5) http://download.csdn.net/download/crazymagicdc/9982656
  • 学了这么久Cocos2d-X,今天终于可以做出一个简单的小游戏了,游戏非常简单,通过菜单项控制精灵运动 在做游戏前,先学一个新概念 调度器(scheduler): Cocos2d-x调度器为游戏提供定时事件和定时调用服务。所有Node...

    学了这么久Cocos2d-X,今天终于可以做出一个简单的小游戏了,游戏非常简单,通过菜单项控制精灵运动

    在做游戏前,先学一个新概念

    调度器(scheduler):

    Cocos2d-x调度器为游戏提供定时事件和定时调用服务。所有Node对象都知道如何调度和取消调度事件,使用调度器有几个好处:

    1. 每当Node不再可见或已从场景中移除时,调度器会停止。
    2. Cocos2d-x暂停时,调度器也会停止。当Cocos2d-x重新开始时,调度器也会自动继续启动。
    3. Cocos2d-x封装了一个供各种不同平台使用的调度器,使用此调度器你不用关心和跟踪你所设定的定时对象的销毁和停止,以及崩溃的风险。


    使用调度器时用到的一些函数:

    // 让帧循环调用this->update(float dt)函数
     // scheduleUpdate(); 

    // 让帧循环去调用制定的函数,时间还是1/60秒
     // schedule(schedule_selector(T19Update::MyScheduleFunc));

     // 定时器,每隔2秒调用T19Update::MyScheduleFunc函数
     // schedule(schedule_selector(T19Update::MyScheduleFunc), 2.0f);

     // 有限次数的定时器,当次数定义得很大时,也认为是无限的,实际次数是制定参数的+1
     schedule(schedule_selector(T19Update::MyScheduleFunc), 1.0f, 3, 2.0f);

     // 只调度一次的定时器
     // scheduleOnce(schedule_selector(T19Update::MyScheduleFunc), 5.0f);

    // 停止一个以参数为回调函数的定时器
     unschedule(schedule_selector(T19Update::MyScheduleFunc));

     // 停止update调度
     unscheduleUpdate();

     // 停止所有的调度
     unscheduleAllSelectors();


    熟悉了调度器的概念后就开始我们今天的重头戏,一个简单的游戏

    首先在工程目录下的Resource文件中添加一张小球的图片


    然后定义一个Update类

    在Update.h类中添加下面的代码

    #ifndef _Update_H_
    #define _Update_H_
    
    #include "cocos2d.h"
    USING_NS_CC;
    
    class Update : public CCLayer
    {
    public:
        static CCScene* scene();
    
        CREATE_FUNC(Update);
    
        bool init();
    
        void update(float dt);
    
        CCSprite* _sprite;
    
        void Handle(CCObject* sender);
    
        //表示方向
        int _direction;
    
        //窗口的大小
        CCSize winSize;
    };
    
    #endif
    
    

    在Update.cpp中添加下面的代码

    #include "Update.h"
    
    CCScene* Update::scene()
    {
        CCScene* s = CCScene::create();
    
        Update* layer = Update::create();
    
        s->addChild(layer);
    
        return s;
    }
    
    bool Update::init()
    {
        //初始化父类
        CCLayer::init();
    
        //得到窗口的大小
        winSize = CCDirector::sharedDirector()->getWinSize();
    
        //设置坐标
        CCPoint center = ccp(winSize.width / 2, winSize.height / 2);
    
        //让帧循环调用this->update(float dt)函数
    	scheduleUpdate();
    
        //创建精灵
        _sprite = CCSprite::create("green_edit.png");
        addChild(_sprite);
    
        //设置精灵的位置
        _sprite->setPosition(center);
    
        //创建菜单项
        CCMenuItemFont* up = CCMenuItemFont::create("up", this, menu_selector(Update::Handle));
        CCMenuItemFont* down = CCMenuItemFont::create("down", this, menu_selector(Update::Handle));
        CCMenuItemFont* left = CCMenuItemFont::create("left", this, menu_selector(Update::Handle));
        CCMenuItemFont* right = CCMenuItemFont::create("right", this, menu_selector(Update::Handle));
        CCMenuItemFont* Stop = CCMenuItemFont::create("Stop", this,  menu_selector(Update::Handle));
    
        //创建菜单
        CCMenu* menu = CCMenu::create(up, down, left, right, Stop, NULL);
        addChild(menu);
    
        //对齐菜单项
        menu->alignItemsVertically();
    
        //设置菜单项的ID
        up->setTag(1);
        down->setTag(2);
        left->setTag(3);
        right->setTag(4);
        Stop->setTag(0);
    
        //标记方向
        _direction = -1;
    
        return true;
    }
    
    void Update::Handle(CCObject* sender)
    {
        CCNode* node = (CCNode*)sender;
    
        //得到菜单项的ID,ID对应的是精灵移动的方向
        _direction  = node->getTag();
    }
    
    void Update::update(float dt)
    {
       // _direction == 1表示精灵向上移动
        if(1 == _direction)
        {
            //精灵向上移动
            //50表示一秒钟移动50个像素
            _sprite->setPositionY(_sprite->getPositionY() + dt * 100);
        }
    
         // _direction == 2表示精灵向下移动
        if(2 == _direction)
        {
            //精灵向下移动
            //50表示一秒钟移动50个像素
            _sprite->setPositionY(_sprite->getPositionY() - dt * 100);
        }
    
         // _direction == 3表示精灵向左移动
        if(3 == _direction)
        {
            //精灵向左移动
            //50表示一秒钟移动50个像素
            _sprite->setPositionX(_sprite->getPositionX() - dt * 100);
        }
    
         // _direction == 4表示精灵向右移动
        if(4 == _direction)
        {
            //精灵向右移动
            //50表示一秒钟移动50个像素
            _sprite->setPositionX(_sprite->getPositionX() + dt * 100);
        }
    
         // _direction == 4表示精灵停止移动
        if(0 == _direction)
        {
        }
    }

    执行结果:



    
    展开全文
  • 觉得cocos2d-js相对还是比较简单。我其实也没什么js基础,觉得只要知道了什么方法是做什么的,就能写游戏了。 0.安装环境 下载cocos2d-x http://www.cocos.com/download 下载安装python2 ...

    接的毕设,从学习到完成,一共用了大概三周,都是下班时间做的。觉得cocos2d-js相对还是比较简单。我其实也没什么js基础,觉得只要知道了什么方法是做什么的,就能写游戏了。

    0.安装环境

    下载cocos2d-x

    http://www.cocos.com/download

    下载安装python2

    https://www.python.org/downloads/release/python-2714/
    (选符合自己系统的python版本)

    安装cocos

    在cmd中,进入cocos目录,输入python2 setup.py
    然后一直回车就安装好了。
    这里写图片描述

    检车安装是否成功

    重启cmd,输入cocos -v 如果出现版本号,说明安装成功。若不是,可能是环境没有自动配置,参见下图配置环境变量.。(注意是自己对应的路径)
    这里写图片描述

    新建helloWorld项目

    在cmd中输入cocos new -l js 项目名,得到如下目录,在src中写js文件,res中存放图片音频等资源.

    强调一下写好的js文件要在project.json里面的jsList里配置。

    这里写图片描述

    1图层

    游戏的概念类似以前的胶片电影,都是一帧一帧的,所谓的动作,都是每帧重绘。
    每帧图上所有的元素都是层级,比如天空是一层,然后再天空层上再覆盖一层山,就形成背景了,再覆盖一些人物,就是画面了。

    • cocos2d-js的图层是布置在舞台(场景)上的
      声明一个场景
    var scene = cc.Scene.extend({
       //onEnter是只刚进入时要做的事情,
       onEnter:function(){
          this._super();//继承父类的方法,必须写
          var layer = new MenuLayer();//这里new了一个图层,
          this.addChild(layer);//把它添加进scene上了
        },
    })

    而图层的写法是

    var MenuLayer = cc.Layer.extend({
        ctor:function(){
        this._super();//继承父类的方法,必须写
        var sprite = new cc.Sprite("图片路径");
        sprite.x = 100;
        sprite.y = 100;//x,y坐标
        this.addChild(sprite);
        }
    })

    2场景的入口

    怎么让项目知道进入哪个场景Scene,cocos使用的是
    cc.director.runScene(new scene())//你的scene名字

    在main.js文件里,也使用了这个方法,表明是整个项目第一个场景,

    场景切换也采用这个方法

    3循环

    在layer的ctor方法中,调用this.scheduleUpdate();方法,cocos会每帧都调用当前layer的update方法。

    
    var PuzzleLayer = cc.Layer.extend({
        ctor:function(){
            this._super();
            this.scheduleUpdate();
        },
    
        update:function(){
            alert("Boom!!!");
        }
    }

    4触碰交互

    cocos是通过监听者模式,即声明一个Listener,然后绑定,点击触发

    
    addTouchListener:function(){
            this.touchListener = cc.EventListener.create({
                event:cc.EventListener.TOUCH_ONE_BY_ONE,//单点触碰,更多参数请参考文末官网。
                swallowTouches:true,//是否吞下点击,即只该sprite接收到点击触发,不向下传递点击触发(你在点某个画面的时候,肯定也点了背景,但背景就不用触发信息了,这个意思)
                onTouchBegan:function(touch,event){
                    var pos = touch.getLocation();
                    var target = event.getCurrentTarget();//点击的sprite
                    if(cc.rectContainsPoint(target.getBoundingBox(),pos)){
                        console.log(pos.x+" "+pos.y)//点击的位置
                        //在这里写点击事件
                        return true;
                    }
                    return false;
                }
            });
            cc.eventManager.addListener(this.touchListener,this);
        }

    5消除对象,停止循环

    你的sprite名字.removeFromParent();
    this.unscheduleUpdate(this.update());//或者其他更新方法

    6游戏样例

    https://blog.csdn.net/qq951127336/article/details/79860040

    展开全文
  • cocos2d-x安装与配置

    2017-05-12 15:18:40
    最近需要用到cocos2d-x环境,便想着在我这台比较破的电脑上安装。安装过程真的是一波三折。在网上找的教程都是比较老的了,心想也没办法了,就按照这个先这么装吧!于是我就先下了coco2d-x-3.15,然后运行了里面的...

    最近需要用到cocos2d-x环境,便想着在我这台比较破的电脑上安装。安装过程真的是一波三折。在网上找的教程都是比较老的了,心想也没办法了,就按照这个先这么装吧!于是我就先下了coco2d-x-3.15,然后运行了里面的setup.py,发现少了ANT、NDK、SDK,这三者是后期需要安卓环境的情况下才需要的,但我需要啊,只好去下载了。
    setup.py需要的东西

    百度搜索这三个东西,下载好后直接解压到同一个目录下以方便管理。
    运行setup.py时需要的三个东西

    都搞定后,按照下图所示,把需要的目录复制到刚刚打开的setup.py里,回车就好了。如果后期不需要安卓环境,直接回车就好。
    目录

    cocos2d-x的运行需要python环境,所以我们还需要装个python。去python官网下个python2.x的版本就好,装好后记得在系统环境变量里加上python的根目录,不然不算装好。
    记得在系统变量里加上python的根目录

    安装完后需要IDE,目前来说windows平台支持cocos2d-x比较好的就是visual stdio了,看着很多人都在说只有vs2012能用,其他或多或少都会出现问题。我选择了相信,千辛万苦地装上了vs2012。打开cocos2d-x的build文件夹,找到cocos2d-win32.sln这个文件,双击,用vs2012打开。
    用vs2012打开这个文件

    然鹅,问题出现了。第一次编译这个软件的速度非常的慢,也怪我的CPU不是特别好,毕竟很久之前买的电脑了。而且出现了非常非常非常多的错误。(错误忘记截图了囧)。百度了一天都没有找到合适的解决办法,后来谷歌了一篇win10下vs2017的cocos2d-x的环境配置,里面提到了要把cpp-test设定为启动项,然后更改它的Windows SDK。再没有找到其他解决方法的情况下,只好含泪卸载vs2012,众所周知vs是非常难卸载的,卸载方法写在另一篇文章里了。

    接着我就去微软官网下载了vs2017的安装器。由于不需要什么特别牛逼的功能,我就选了一个免费的社区版。在选择需要安装的内容时,还真的有一个windows SDK的东西!赶紧打个勾。
    vs2017安装器安装选项

    另外,记住这个SDK的编号,后面可能需要用上。安装好后,按照前面的步骤打开那个文件。之后把cpp-test设置为启动项。完了后再打开属性,把sdk改成刚刚我们下的那个sdk。
    设为启动项
    更改sdk版本

    然后再编译,就只剩下warning和note了!虽然速度依旧非常慢,但最终的结果还是出来了。非常开心。哈哈。
    最终结果

    当然,如果要自己生成一个新的工程,打开cocos2d-x的tools里的cocos2d-console,把cmd跳转到该目录下,输入cocos new<项目名称> -p <包名> -l -d <项目所在目录>,例如,创建一个名为test的项目:
    cocos new myGame -p com.cocos2dx.org -d D:\cocosProj -l cpp
    如果不指定项目的所在目录,则默认在bin目录的子目录中创建项目。

    创建成功之后命令提示符窗口将显示项目成功创建的信息,如上图所示,同时在bin目录下也会产生一个test项目:

    我们打开test项目看下里面的内容:

    Class:该文件包括由Cocos2dx实现的游戏代码
    cocos2d:该文件夹包括Cocos2dx库代码
    pro.android:该文件包含Android项目文件
    pro.ios_mac:该文件包含iOS,MAc项目文件
    pro.linux:该文件包含Linux项目文件
    pro.win32:该文件包含Windows项目文件
    proj.wp8_xaml:该文件包含Windows Phone项目文件
    Resources:该文件包含资源文件
    使用cocos2d-x开发游戏时,游戏源代码位于Class文件夹,图像等资源文件复制到Resources文件夹即可。

    结果出来了,那到这里就结束啦!

    展开全文
  • 我的Mac系统: 官网下载稳定版cocos2d-x-4.0。 我有两个Python版本,2.7和3.7。
  • Cocos2dx入门

    2019-04-18 22:36:19
    一.Cocos2d-x引擎特性 现代化的 C++ API 立足于 C++ 同时支持 JavaScript/Lua 作为开发语言 可以跨平台部署, 支持 iOS、Android、Windows、macOS 和 Linux 可以在 PC 端完成游戏的测试,最终发布到移动端 完善的游戏...
  • 15款Cocos2d-x游戏源码

    2017-11-30 17:52:12
    (1)用cocos2d-x开发的中国象棋游戏源码 使用Cocos2d-X2.2.3开发的一款中国象棋游戏,游戏中可以实现、新局面、悔棋、游戏音乐、胜利后会显示游戏结果。 源码下载:http://www.okbase.net/file/item/27881 ...
  • 本课程是《从零开始掌握Cocos2d-x 3.0(基于3.0正式版) 》课程配套的项目实战课程。建议对Cocos2d-x 3.0不了解的同学先学习该课程。本课程将利用《从零开始掌握Cocos2d-x 3.0(基于3.0正式版) 》中讲解的知识开发...
  • 本站文章均为 李华明Himi 原创,转载务必在明显处注明:转载自【黑米GameDev街区】 原文链接: http://www.himigame.com/iphone-cocos2dx/603.html 可能很... 不得不说要说总结,因为Cocos2d-X的代码和Cocos2d-ipho
  • 很久以前使用博客园博主子龙山人的一篇博文《Cocos2d-x win7+vs2010配置图文详解 (亲测)》成功配置过cocos2d-1.01-x-0.9.1版本,链接为:Cocos2d-x win7 + vs2010 配置图文详解(亲测)-来自子龙山人的博客。现在想...
  • cocos2d-x游戏开发基础与实战 经典视频教程 cocos2d-x游戏开发工资高吗? 精通C/C++,熟练掌握Cocos2d-x引擎及其Cocos2d-x引擎周边开发工具,了解游戏开发常用的工具和软件,精通Socket网络编程和HTTP协议,能高效的...
  • Cocos2d-x-Lua示例项目HelloLua 本篇博客介绍Cocos2d-x中Lua的实例项目,就是使用Cocos2d-x创建的初始项目运行所呈现的农场,这里笔者取名为HelloLua。本篇博客会详细在代码中解析Cocos2d-x 3.1.1创建的Lua项目中...
  • 这篇指引主要介绍如何使用从在线下载工具下载下来的Cocos2d-JS的单文件引擎。 你有可能下载了下面三个版本中的一个: Cocos2d-JS Full Version: 完整版引擎包含Cocos2d-JS引擎的所有功能特性以及所有扩展,使用这...
  • Cocos2d-x Cocos2d-JS Cocos2d-lua概述
  • Cocos2d-x 3.0新引擎目录结构2014年4月29日 Cocos2d-x 3.0学习作为一个Cocos2d-x的菜鸟,我倒是挺愿意关注不同版本之间的区别,Cocos2d-x 3.0自2013年7月份开始发布alpha0-pre版本,到2014年4月23日发布正式版,历经...
1 2 3 4 5 ... 20
收藏数 77,789
精华内容 31,115
关键字:

cocos2d