/********************************************************************
*
* File: fsCRenderCommandTriangle.h
*
* Purpose: cocos2d-x triangle renderer commands
*
*********************************************************************/
#ifndef fsCRenderCommandTrianglehdr
#define fsCRenderCommandTrianglehdr
#include <renderer/CCTrianglesCommand.h>
#include "fsIRenderCommand.h"
#include "../../../fsISpriteRenderData.h"
class fsCTexture;
class fsCRenderCommandTriangle : public fsIRendererCommand
{
friend class fsCRenderer;
public:
void init(const fsCTexture* pTexture, fsS32 pSprites);
fsCRenderCommandTriangle(const fsCTexture* pTexture, fsS32 pSprites);
~fsCRenderCommandTriangle();<--- Destructor in derived class
protected:
private:
void batchDataRender() override;
void batchDataPopulate(fsIRenderData const* pRenderData, fsS32 pSpriteOffest,
fsIRenderer::eSPRITE_STRIP_PLACE pPlace) override;
void buffersAllocate(fsS32 pSprites);
void pipelineSetup(cocos2d::PipelineDescriptor& pPipelineDescriptor, cocos2d::backend::ProgramType pProgram);
const fsCTexture* mTexture;
cocos2d::TrianglesCommand _trianglesCommand;
cocos2d::TrianglesCommand::Triangles _triangles;
};
#endif