Fission FSN
Loading...
Searching...
No Matches
fsCNativeRenderer.h
Go to the documentation of this file.
1/********************************************************************
2*
3* File: fsCRenderer.h
4*
5* Purpose: cocos2d-x implementation for fsIRenderer
6*
7*********************************************************************/
8
9#ifndef fsCRendererhdr
10#define fsCRendererhdr
11
12#include <Magnum/Shaders/FlatGL.h>
13
15
16#if defined fsNativeRenderer
17class fsCTexture;
18
22
23class fsCRenderer : public fsIRenderer
24{
25 friend class fsIRenderer;
26 friend class fsCVertexStreamSpriteRenderData;
27 friend class fsCVertexStreamLineRenderData;
28
29public:
30
31 virtual ~fsCRenderer();
32
33protected:
34
35 void frameStartDo() override;
36 void begin2dDo() override;
37 void end2dDo() override;
38 void begin3dDo() override;
39 void end3dDo() override;
40 void frameEndDo() override;
41
42 void initialiseDo() override;
43 void uninitialiseDo() override;
44
45 void spriteBatchRender(fsS32 pFirstMaterialIndex, fsS32 pLastMaterialIndex) override;
46 void textBatchRender(fsS32 pFirstFontIndex, fsS32 pLastFontIndex) override;
47 void lineBatchRender(fsS32 pBatchIndex) override;
48 void textEntryBatchRender(fsITextEntryRenderData* pTextEntry) override;
49
50#if defined fs3d
51 virtual void sprite3dBatchRender(fsC3dSceneSprite* const pScene) override;
52#endif
53
54 fsCRenderer(fsS32 pMaxSprites, fsS32 pMaxMaterialChanges);
55
56private:
57
58 Magnum::Shaders::FlatGL3D *mFlatTexturedShader;
59 Magnum::Shaders::FlatGL3D *mFlatShader;
60 Magnum::Shaders::DistanceFieldVectorGL3D* mSDFShader;
61
62};
63
64#endif
65#endif
Definition fsCRenderCommandLine.h:20
Definition fsCRenderCommandTriangle.h:22
Definition fsCRenderCommandTriangleShaded.h:22
Definition fsCTexture.h:22
Definition fsIRenderer.h:73
virtual void end2dDo()=0
virtual void begin3dDo()=0
virtual void begin2dDo()=0
virtual void uninitialiseDo()=0
virtual void initialiseDo()=0
virtual void frameStartDo()=0
virtual void end3dDo()=0
virtual void frameEndDo()=0
int fsS32
Definition fsBaseTypes.h:20