zoukankan      html  css  js  c++  java
  • 如何给spine骨骼动画挂载粒子特效

    目的是要把粒子挂载到骨骼动画的某个一个部件上,其实最主要是找对位置。

    预览效果,左手红火,右手蓝火,很炫吧:)

    //init

    bool HelloWorld::init()
    {
        //////////////////////////////
        // 1. super init first
        if ( !Layer::init() )
        {
            return false;
        }
        CCSkeletonAnimation* skeletonNode = CCSkeletonAnimation::createWithFile("spineboy.json", "spineboy.atlas");
        skeletonNode->setAnimation("walk", true);
        skeletonNode->setPosition(ccp(300,0));
        //skeletonNode->debugSlots = true;
        skeletonNode->debugBones = true;
        skeletonNode->timeScale = 0.5f;
        addChild(skeletonNode,0,1);
        
        ParticleSun* _emitter1 = ParticleSun::create();
        _emitter1->setTexture( TextureCache::getInstance()->addImage("fire.png") );
        addChild(_emitter1, 10, 2);
    
        ParticleGalaxy* _emitter2 = ParticleGalaxy::create();
        _emitter2->setTexture( TextureCache::getInstance()->addImage("fire.png") );
        skeletonNode->addChild(_emitter2, 10, 20);
    
        scheduleUpdate();
    
        return true;
    }

    //update

    void HelloWorld::update (float deltaTime) 
    {
        CCSkeletonAnimation* skeletonNode = (CCSkeletonAnimation*)getChildByTag(1);
        
        Bone* pBone = skeletonNode->findBone("left hand");
        CCPoint pt = skeletonNode->convertToWorldSpace(ccp(pBone->worldX,pBone->worldY));//粒子1是添加在Scene上的 所以需要坐标转换一下
        ParticleSun* _emitter1 = (ParticleSun*)getChildByTag(2);
        _emitter1->setPosition(pt);
    
        pBone = skeletonNode->findBone("right hand");
        pt = ccp(pBone->worldX,pBone->worldY);//粒子2直接挂到骨骼动画上,所以不需要转换坐标
        ParticleGalaxy* _emitter2 = (ParticleGalaxy*)skeletonNode->getChildByTag(20);
        _emitter2->setPosition(pt);
    }
  • 相关阅读:
    中文简体汉字
    文件下载
    javaBean
    servlet和JSP笔记(EL表达式、javabean、jsp九大内置对象等)
    Http请求和响应
    Eclipse快捷键(可更新)
    反射笔记①
    泛型, 枚举,单例模式
    Ubuntu 14.04 安装 A卡HD7750 官方闭源 显卡驱动
    C语言--二维数组,字符串数组,多维数组
  • 原文地址:https://www.cnblogs.com/mrblue/p/3414158.html
Copyright © 2011-2022 走看看