骨骼动画(Skeleton animation又称骨架动画,是一种计算机动画技术,它将三维模型分为两部分:用于控制动作的骨,以及用于绘制模型的蒙皮(Skin),框架
下载官方的libgdx-spine运行库,github上将运行库源码拷下来,放到工程中,或者自己打包成jar包。Github 导入运行库之后就可以开始在项目中播放spine动画了。
- 首先是读取纹理地图集和骨骼数据,这些骨骼数据也包含动画状态数据.
TextureAtlas playerAtlas = new TextureAtlas(Gdx.files.internal("assets/xxx.atlas"));
SkeletonJson json = new SkeletonJson(playerAtlas);
SkeletonData playerSkeletonData = json.readSkeletonData(Gdx.files.internal("assets/xxx.json"));
AnimationStateData playerAnimationData = new AnimationStateData(playerSkeletonData);
- 然后需要一个spriteBatch和骨骼渲染对象
SpriteBatch batch = new SpriteBatch();
SkeletonRenderer skeletonRenderer = new SkeletonRenderer();
- 用第一步读取的骨骼数据和动画状态数据创建一个骨骼和动画状态对象
Skeleton skeleton = new Skeleton(playerSkeletonData);
AnimationState animationState = new AnimationState(playerAnimationData);
- 每个update环节调用
animationState.update(delta);
animationState.apply(skeleton);
- reader
batch.begin();
skeletonRenderer.draw(batch, skeleton);
batch.end();