14#if defined fsVertexRenderer
18 friend class fsIRenderer;
19 friend class fsCVertexStreamSpriteRenderData;
20 friend class fsCVertexStreamLineRenderData;
24 virtual ~fsCRenderer();
30 virtual void end2dDo()
override;
32 virtual void end3dDo()
override;
38 virtual void spriteBatchRender(
fsS32 pFirstMaterialIndex,
fsS32 pLastMaterialIndex)
override;
39 virtual void textBatchRender(
fsS32 pFirstFontIndex,
fsS32 pLastFontIndex)
override;
40 virtual void lineBatchRender(
fsS32 pBatchIndex)
override;
41 virtual void textEntryBatchRender(fsITextEntryRenderData*
const pTextEntry)
override;
44 virtual void sprite3dBatchRender(fsC3dSceneSprite*
const pScene)
override;
47 fsCRenderer(
fsS32 pMaxSprites,
fsS32 pMaxMaterialChanges);
52 fsS32 unusedLightIndexGet();
55 void blendModeSet(
fsS32 pBlendMode);
59 void spriteBatchDataAllocateFromCache(
fsS32 pNumVerts);
60 void spriteBatchDataPopulate(
fsS32 pMaterial);
61 void spriteBatchDataRender(
fsS32 pMaterial);
63 void lineBatchDataAllocateFromCache(
fsS32 pBatchIndex);
64 void lineBatchDataPopulate(
fsS32 pBatchIndex);
65 void lineBatchDataRender(
fsS32 pBatchIndex);
67 struct fsSF32VertBuffer
71 void init(
fsS32 pSize);
77 struct fsRenderBuffers
79 fsRenderBuffers() =
default;
81 ~fsRenderBuffers() =
default;
83 fsSF32VertBuffer mBatchedVerts;
84 fsSF32VertBuffer mBatchedUVs;
85 fsSF32VertBuffer mBatchedColours;
88 struct fsRenderBuffersPtr
90 fsRenderBuffersPtr(
const fsRenderBuffers& pRenderBuffer)
92 mBatchedVerts = pRenderBuffer.mBatchedVerts.mBuffer;
93 mBatchedUVs = pRenderBuffer.mBatchedUVs.mBuffer;
94 mBatchedColours = pRenderBuffer.mBatchedColours.mBuffer;
97 ~fsRenderBuffersPtr() {}
101 fsF32* mBatchedColours;
104 fsRenderBuffers mRenderBuffers;
111 fsF32 mTrackingScale;
Definition fsIRenderer.h:73
virtual void begin3dDo()=0
virtual void begin2dDo()=0
virtual void uninitialiseDo()=0
virtual void initialiseDo()=0
virtual void frameStartDo()=0
virtual void frameEndDo()=0
int fsS32
Definition fsBaseTypes.h:20
float fsF32
Definition fsBaseTypes.h:28