cocos2d的一些笔记

将今天做了一个关于跑酷的游戏基于了解的东西记录下来

其实就是将The_b-dn大神的代码手敲了一遍,https://blog.csdn.net/ZYY173533832

 

简单总结一下,

创建的的c++文件,场景的文件,建议继承 cocos2d::Layer,然后在上面创建Scene

对外提供static cocos2d::Scene* scene();这个方法给别人调用。

如果是创建精灵,继承cocos2d::Node

 

需要物理世界的话,在创建场景时,createScene(),同时创建。

图片大小根据初始化的时候设置的大小来定

 

创建精灵

由于精灵是直接由图片来创建,所以所以他的物理大小和图片有关。

刚创建的时候,精灵的设置坐标的原点(锚点)是在精灵的中心。

操作的方法,setPosition设置的坐标,addChild添加到视图。

 

点击事件

还没有心得

 

动画

1.固定重复动画,例如主角跑步动作,

SpriteFrame* frame = NULL;
    //数组 3.0中改用vector 而不是用Array
    Vector<SpriteFrame*>frameVector;
    
    /* 1.----------------加载跑动的Animation-----------------*/
    for(int i = 0; i <= 7; i ++) {
        //从缓存池中加载精灵到Vector
        frame = frameCache->spriteFrameByName(String::createWithFormat("runner%d.png",i)->getCString());
        frameVector.pushBack(frame);
    }
    
    //用vector里面的SpriteFrame列表创建Animation  以及设置一些参数
    auto run_animation = Animation::createWithSpriteFrames(frameVector,0.1f,-1);
    //将跑动的 Animation 取名为 running
    AnimationCache::getInstance()->addAnimation(run_animation,"running");

//预加载,之后如果用到直接从缓存中调出来。

 

Cocos2d-x不要随便在onEnter里面addChild,应该说最好不要用onEnter

https://www.cnblogs.com/ybgame/p/3487615.html

在测试中,想在onEnter中addChild,加载之后不会显示,只有在切换场景的时候才会出现。目前这个现象还在研究。不过3.0后好像也不怎么推荐使用onEnter。所以还是少用吧。

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值