quick lua 使用spine骨骼动画

看下下面两个文件

<spine/SkeletonRenderer.h>
<spine/SkeletonAnimation.h>

1.lua中创建方法:

sp.SkeletonAnimation:create(‘xxx.json’,‘xxx.atlas‘, 1)

实际上绑定过来的create 是createwithfile,可以参考 lua_cocos2dx_spine_manual.cpp

static void extendCCSkeletonAnimation(lua_State* L)
{
    lua_pushstring(L, "sp.SkeletonAnimation");
    lua_rawget(L, LUA_REGISTRYINDEX);
    if (lua_istable(L,-1))
    {
        tolua_function(L, "create", lua_cocos2dx_CCSkeletonAnimation_createWithFile);
        tolua_function(L, "registerSpineEventHandler", tolua_Cocos2d_CCSkeletonAnimation_registerSpineEventHandler00);
        tolua_function(L, "unregisterSpineEventHandler", tolua_Cocos2d_CCSkeletonAnimation_unregisterSpineEventHandler00);
        tolua_function(L, "setBlendFunc", tolua_spine_SkeletoneAnimation_setBlendFunc);
        tolua_function(L, "addAnimation", lua_cocos2dx_spine_SkeletonAnimation_addAnimation);
        tolua_function(L, "setAnimation", lua_cocos2dx_spine_SkeletonAnimation_setAnimation);
        tolua_function(L, "replaceImage", lua_cocos2dx_spine_SkeletonAnimation_replaceImage);
        tolua_function(L, "getCustomBounds", lua_cocos2dx_spine_SkeletonAnimation_getCustomBounds);
    }
    lua_pop(L, 1);

    /*Because sp.SkeletonAnimation:create creat a LuaSkeletonAnimation object,so we need use LuaSkeletonAnimation typename for g_luaType*/
    std::string typeName = typeid(LuaSkeletonAnimation).name();
    g_luaType[typeName] = "sp.SkeletonAnimation";
    g_typeCast["SkeletonAnimation"] = "sp.SkeletonAnimation";
}

2.registerSpineEventHandler注册事件

SP_ANIMATION_START = 0
SP_ANIMATION_END = 1
SP_ANIMATION_COMPLETE = 2
SP_ANIMATION_EVENT = 3

3.setDebugBonesEnabled(true)   spine在调试模式,可以看到骨头的长度,骨点的位置

4.setDebugSlotsEnabled(true);设置查看每个骨头绑定的图片的大小,会用矩形框显示出来

5.换装(需要去学习)

(1)全部换装SetSkin

(2)局部换装

时间: 2024-10-19 08:40:42

quick lua 使用spine骨骼动画的相关文章

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

(官网:www.libgdx.cn) Super Spineboy是一个使用Spine和libgdx开发的跨平台游戏(Windows,Mac,Linux),Spine是一个2D游戏动画工具.Super Spineboy是使用Spine骨骼动画的游戏. 下载 Super Spineboy 可以运行在Windows,Mac或者Linux.JDK最低版本为JDK 6.下载地址如下: 点击下载 运行Super Spineboy,双击运行superSpineboy.jar,或者从命令行下载: java -

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

1:准备好unity使用Spine所需要的运行库,可到如下地址 https://github.com/EsotericSoftware/spine-runtimes/tree/master/spine-unity 使用git下载,或直接下载master.zip文件. 2:准备好Spine导出好的动画文件,正好最近偶尔玩一个游戏,里面使用了Spine制作的骨骼动画,我就直接使用它做好的资源记录一下步骤,仅作笔记使用.    我这里的动画文件资源如图: 这里需要提前做一个准备工作,把上图中的enem

[原]quick2.25添加spine骨骼动画

被美术妹子的狂喷之后,此文诞生!本来打算做科目一试题的,结果闹了这个了,祈祷苍天让我过吧! spine源码下载: http://pan.baidu.com/s/1qWuoSri 密码: 7ves 播放效果: 1.去下载spine的runtime库 地址:https://github.com/EsotericSoftware/spine-runtimes 文件结构 二.把spine-c下的include和src 统一整理到spine文件夹,将spine-cocos2d-x/2/src/spine下

在libGDX中使用Spine骨骼动画

首先,github是个宝库,实践流的读者可以直接看例子进行学习 1.这是Spine官方给出的例子 https://github.com/EsotericSoftware/spine-superspineboy 2.我推荐这个,很棒的例子及使用合集 https://github.com/EsotericSoftware/spine-runtimes/tree/master/spine-libgdx 下面,我详细说明一下使用步骤: 首先是读取纹理地图集和骨骼数据,这些骨骼数据也包含动画状态数据. T

动画编辑器和骨骼动画使用

动画编辑器 1.使用编辑器来创建编辑动画 (1)创建一个节点 (2)往节点里添加动画组件cc.Animation (3)编辑 动画剪辑器制作 AnimClip 动画剪辑就是一份动画的声明数据,我们将它挂在到Animation组件上 就能够将这份动画数据应用到节点上. (4)把动画剪辑设置到Animtion里面去 2.动画编辑器的使用 然后直接点击新建AnimaClip,并且保存好. 自动生成了可访问的动画列表.这个组件可以带多个这样的. 把它拖动到Default Clip就是 选择自动 播放或者

layaAir引擎制作游戏的图集动画、时间轴动画、和骨骼动画总结二

一.角色序列帧.ani动画的制作 1.在项目管理器中创建动画文件 2.创建动画模板,编辑动效名称 3.编辑序列帧动画 .ani格式动画的代码控制 1.动画加载loadAnmition() 2.播放与停止.动效模板切换 3.动画帧位置控制 4.动画播放完成事件 uui截图: Laya.init(1334, 750); Laya.loader.load(["res/comp.atlas","res/role.atlas"],Laya.Handler.create(thi

初尝2D骨骼动画编辑工具SPINE

一.SPINE使用 研究2D骨骼动画,CYou的朋友介绍我SPINE这个工具,开发自EsotericSoftware的一款专门制作2D动画的软件,网络上的资料还很少,我这从半吊子美术技术的角度简单说一下使用教程. 有几个不错的地方: 1.美术制作前准备的贴图为一堆小切片图.不用非得拼成一张atlas,spine会做这一步,详见步骤七, 导出数据时会动态的将切片合并到同一个到N个atlas中,合并的策略会考虑我们设置的atlas的尺寸. 2.方便换装和BODYPART: SPINE的数据结构中包括

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

Spine是一个很好的制作2D骨骼动画的软件,其中提供的混合(mix)动画功能可以很柔和过度两个不同的动画,但在混合时期,稍有不善,非常容易出现各种错乱.在Spine2D骨骼动画群上,有人提出全K帧.K透明轴等等方法,这些方法往往只是恰好解决了一些问题,但还有相当一部分潜在的问题还是可能发生的. 在使用过程中,我发现Spine的错乱问题主要表现在以下两个方面: 1. Slot位置下,A动画中有abcd四个时间轴,而B动画只有abc三个时间轴,那么从A切换到B时,切换时d轴的状态(纹理或色彩)可能

Spine(2D骨骼动画)

点击进入Spine官网 Spine 是一款针对游戏的 2D 骨骼动画编辑工具. Spine 旨在提供更高效和简洁 的工作流程,以创建游戏所需的动画. 功能: 1.摄影表 Dopesheet 在动画制作过程中摄影表是最核心的地方.这里显示所有关键的细节,通过它可以 创建动画以及对时间节奏进行微调. 2.网格 Meshes 网格允许你在矩形边界内定义多边形.这将提高最终纹理贴图集的空间使用率,因 为在多边形外的像素将被忽略掉,这种优化对移动设备来特别重要.网格的另外一 个功能就是支持自由变形 FFD