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

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

//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(,));
//skeletonNode->debugSlots = true;
skeletonNode->debugBones = true;
skeletonNode->timeScale = 0.5f;
addChild(skeletonNode,,); ParticleSun* _emitter1 = ParticleSun::create();
_emitter1->setTexture( TextureCache::getInstance()->addImage("fire.png") );
addChild(_emitter1, , ); ParticleGalaxy* _emitter2 = ParticleGalaxy::create();
_emitter2->setTexture( TextureCache::getInstance()->addImage("fire.png") );
skeletonNode->addChild(_emitter2, , ); scheduleUpdate(); return true;
}

//update

void HelloWorld::update (float deltaTime)
{
CCSkeletonAnimation* skeletonNode = (CCSkeletonAnimation*)getChildByTag(); Bone* pBone = skeletonNode->findBone("left hand");
CCPoint pt = skeletonNode->convertToWorldSpace(ccp(pBone->worldX,pBone->worldY));//粒子1是添加在Scene上的 所以需要坐标转换一下
ParticleSun* _emitter1 = (ParticleSun*)getChildByTag();
_emitter1->setPosition(pt); pBone = skeletonNode->findBone("right hand");
pt = ccp(pBone->worldX,pBone->worldY);//粒子2直接挂到骨骼动画上,所以不需要转换坐标
ParticleGalaxy* _emitter2 = (ParticleGalaxy*)skeletonNode->getChildByTag();
_emitter2->setPosition(pt);
}

如何给spine骨骼动画挂载粒子特效的更多相关文章

  1. 使用spine骨骼动画制作的libgdx游戏

    (官网:www.libgdx.cn) Super Spineboy是一个使用Spine和libgdx开发的跨平台游戏(Windows,Mac,Linux),Spine是一个2D游戏动画工具.Super ...

  2. spine骨骼动画组件使用详解

    1. spine骨骼动画工具 骨骼动画: 把动画打散, 通过工具,调骨骼的运动等来形成动画spine是一个非常流行的2D骨骼动画制作工具spine 动画美术人员导出3个文件:    (1) .png文 ...

  3. 记录 Spine骨骼动画导入unity 步骤[unity3d 4.6.6版本 2d动画]

    1:准备好unity使用Spine所需要的运行库,可到如下地址 https://github.com/EsotericSoftware/spine-runtimes/tree/master/spine ...

  4. 在libGDX中使用Spine骨骼动画

    首先,github是个宝库,实践流的读者可以直接看例子进行学习 1.这是Spine官方给出的例子 https://github.com/EsotericSoftware/spine-superspin ...

  5. quick lua 使用spine骨骼动画

    看下下面两个文件 <spine/SkeletonRenderer.h><spine/SkeletonAnimation.h> 1.lua中创建方法: sp.SkeletonAn ...

  6. cocos2d-x spine 加载粒子特效

    spine骨骼加载粒子效果 将粒子效果加到骨骼上,update位置和角度.h#ifndef __HOMESCENE_H__#define __HOMESCENE_H__#include "c ...

  7. cocos2d-js 骨骼动画 3.10

    近期使用了cocos动画中的骨骼动画,这里记录使用的两种方式(3.10版): 一.cocos自带的动画编辑器导出的动画 ccs.armatureDataManager.addArmatureFileI ...

  8. 解决Spine骨骼混合动画错乱问题

    Spine是一个很好的制作2D骨骼动画的软件,其中提供的混合(mix)动画功能可以很柔和过度两个不同的动画,但在混合时期,稍有不善,非常容易出现各种错乱.在Spine2D骨骼动画群上,有人提出全K帧. ...

  9. HTML5骨骼动画Demo | 使用min2d、createjs、pixi播放spine动画

    Spine做骨骼动画是比较流行的,使用起来可能相对复杂,但功能毕竟强大,所以市场占有率较大. 在unity.cocos2d.starling中使用spine已经很成熟了,而HTML5这一块可能刚刚起步 ...

随机推荐

  1. Java基础-内部类-为什么成员内部类可以无条件访问外部类

    在此之前,我们已经讨论过了成员内部类可以无条件访问外部类的成员,那具体究竟是如何实现的呢?下面通过反编译字节码文件看看究竟.事实上,编译器在进行编译的时候,会将成员内部类单独编译成一个字节码文件,下面 ...

  2. Http状态码集合

    忘了之前在哪里收集的了,先表示感谢. 状态码 含义 100 客户端应当继续发送请求.这个临时响应是用来通知客户端它的部分请求已经被服务器接收,且仍未被拒绝.客户端应当继续发送请求的剩余部分,或者如果请 ...

  3. 判断Set里的元素是否重复、==、equals、hashCode方法研究-代码演示

    被测试类,没有重写hasCode()和equals()方法: package niukewang; import java.util.Objects; public class setClass { ...

  4. RequestMethod.DELETE相关,如何用jquery实现RequestMethod.DELETE请求

    Spring MVC添加支持Http的delete.put请求!(HiddenHttpMethodFilter) Spring3.0之后->Spring MVC过滤器-HiddenHttpMet ...

  5. HDU1242 Rescue

    Rescue Time Limit: 1000MS   Memory Limit: 32768KB   64bit IO Format: %I64d & %I64u Description A ...

  6. MIM协议与Base64编码

    MIME Protocol 1. MIME的全称是"Multipurpose Internet Mail Extensions",中译为"多用途互联网邮件扩展" ...

  7. Oracle 10g 和11g r2 下载地址(使用迅雷)

    http://www.blogjava.net/wangdetian168/archive/2011/03/01/345428.html  10g http://www.blogjava.net/wa ...

  8. iOS6新特征:UICollectionView高级使用示例之CircleLayout

    DEMO   下面再看看Demo运行的效果图,通过这样的一个Demo,我们可以看出,使用UICollectionView可以很方便的制作出照片浏览等应用.并且需要开发者写的代码也不多.   程序刚刚启 ...

  9. 一个不安装Oracle客户端的方法------未经试验

    (一)不安装客户端的解决办法.第一种方法:1.在安装ORACLE服务器的机器上搜索下列文件,oci.dllocijdbc10.dllociw32.dllorannzsbb10.dlloraocci10 ...

  10. LINUX中,Vi编辑器的几种模式及保存、退出等命令

    vi编辑器有三种模式: 命令模式,编辑模式,末行模式 打开vi后首先是命令模式,用i,o,a等进入编辑模式,按esc退出编辑模式,回到命令模式. 在命令模式下输入:wq表示保存退出,:wq!强制保存退 ...