You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

47 lines
1.0 KiB

#ifndef __SPINE_MODEL_H__
#define __SPINE_MODEL_H__
#include <spine/spine.h>
#include <vector>
#include "mesh-type-define.h"
using namespace spine;
class SlotMesh {
public:
SlotMesh() {}
SlotMesh(uint8_t* vb, uint16_t* ib, uint32_t vc, uint32_t ic)
: vBuf(vb), iBuf(ib), vCount(vc), iCount(ic) {}
~SlotMesh() {}
void set(uint8_t* vb, uint16_t* ib, uint32_t vc, uint32_t ic)
{
this->vBuf = vb;
this->iBuf = ib;
this->vCount = vc;
this->iCount = ic;
}
uint8_t* vBuf;
uint16_t* iBuf;
uint32_t vCount;
uint32_t iCount;
uint32_t blendMode;
uint32_t textureID;
};
class SpineModel {
public:
SpineModel();
~SpineModel();
void addSlotMesh(SlotMesh& mesh, bool needMerge = true);
void clearMeshes();
void setBufferPtr(uint8_t* vp, uint16_t* ip);
std::vector<uint32_t>* data;
std::vector<uint32_t>* getData();
public:
uint32_t vCount;
uint32_t iCount;
uint32_t vPtr;
uint32_t iPtr;
uint32_t byteStride;
};
#endif