首页 > 代码库 > 在libGDX中使用Spine骨骼动画
在libGDX中使用Spine骨骼动画
首先,github是个宝库,实践流的读者可以直接看例子进行学习
1.这是Spine官方给出的例子
https://github.com/EsotericSoftware/spine-superspineboy
2.我推荐这个,很棒的例子及使用合集
https://github.com/EsotericSoftware/spine-runtimes/tree/master/spine-libgdx
下面,我详细说明一下使用步骤:
首先是读取纹理地图集和骨骼数据,这些骨骼数据也包含动画状态数据.
TextureAtlas playerAtlas = new TextureAtlas(Gdx.files.internal("spineboy/spineboy.atlas"));SkeletonJson json = new SkeletonJson(playerAtlas);SkeletonData playerSkeletonData = json.readSkeletonData(Gdx.files.internal("spineboy/spineboy.json"));AnimationStateData playerAnimationData = new AnimationStateData(playerSkeletonData);
然后需要一个spriteBatch和骨骼渲染对象.(如同tmx地图需要tmx渲染对象一样)
SpriteBatch batch = new SpriteBatch();SkeletonRenderer skeletonRenderer = new SkeletonRenderer();
接着,用第一步读取的骨骼数据和动画状态数据创建一个骨骼和动画状态对象
Skeleton skeleton = new Skeleton(playerSkeletonData);AnimationState animationState = new AnimationState(playerAnimationData);
获取动画的方式如下:
animationState.setAnimation(0, "walk", true); // 序号, 动画名称, 循环
在每个update环节调用
animationState.update(delta);animationState.apply(skeleton);
然后render:
batch.begin();skeletonRenderer.draw(batch, skeleton);batch.end();
预览
http://esotericsoftware.com/files/runtimes/spine-libgdx/raptor/
在libGDX中使用Spine骨骼动画
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。