导入动画 spine
spine 是一款2d动画制作工具,具体介绍见:http://zh.esotericsoftware.com/
我们让我们的引擎支持它制作的动画。
首先从github下载官方runTimes,这里选择spine-c。
然后我们要处理的是它的渲染与创建。
/********************************************************************
Copyright(C), 2012-2013,
FileName:SkeletonAnimation.h
Description:
Author:cloud
Created:2014/11/07
history:
7:11:2014 15:41 by
*********************************************************************/
#pragma once
#include "export/Node.h"
#include "spine/spine.h"
#include "base/GLFix.h"
#include "base/render/Quad.h"
namespace cloud
{
class SkeletonAnimation :public Node
{
public:
SkeletonAnimation(const char* atasPath,const char* jsonPath);
~SkeletonAnimation();
void initialize(const char* atasPath,const char* jsonPath);
void update(float dt);
void createTexture(const char* texturePath);
void removeTexture();
void render(const Mat4& parentMat4);
Size getTextureSize();
void playAnimation(const char* animationName,bool isLoop);
void stopAnimation(int endTrackIdx = -1);
protected:
std::string _animationName;
spAnimationState* _state;
spSkeleton* _skeleton;
GLuint _textureID;
Size _textureSize;
std::string _texturePath;
QuadCommand _quadCommand;
Quad* _quads;
BlendFunc