Fission FSN
Loading...
Searching...
No Matches
fsIRenderer Class Referenceabstract

#include <fsIRenderer.h>

Public Types

enum  eSPRITE_STRIP_PLACE { eFIRST , eSTRIPPED , eLAST }

Public Member Functions

void sprite3dAddToBatch (fsC3dSceneSprite *const pScene)
void renderTexturedAddToBatch (fsIRenderTextureRenderData *const pRenderTextureRenderData)
void spriteAddToBatch (fsISpriteRenderData *pSprRenderData)
void textAddToBatch (fsITextRenderData *pTxtRenderData)
void textEntryAddToBatch (fsITextEntryRenderData *pTxtEntry)
void lineAddToBatch (fsILineRenderData *pLineRenderData)
void prepareFor2d ()
void prepareFor3d ()
void frameStart ()
void frameEnd ()
void flush ()
virtual ~fsIRenderer ()
void begin2d ()

Static Public Member Functions

static fsIRendererinstanceGet ()
static void create (fsS32 pMaxSprites, fsS32 pMaxMaterialChanges)
static void destroy ()

Protected Types

enum  eRENDER_STATE { eNONE = 0 , eDRAW_2D , eDRAW_TO_TEXTURE_2D , eDRAW_3D }

Protected Member Functions

virtual void initialise ()
virtual void uninitialise ()
virtual void frameStartDo ()=0
virtual void begin2dDo ()=0
virtual void end2dDo ()=0
virtual void begin3dDo ()=0
virtual void end3dDo ()=0
virtual void frameEndDo ()=0
virtual void initialiseDo ()=0
virtual void uninitialiseDo ()=0
 fsIRenderer (fsS32 pMaxSprites, fsS32 pMaxMaterialChanges)

Protected Attributes

std::vector< fsIRenderJob * > mRenderJobs
eRENDER_STATE mState
const fsISpriteRenderData ** mSpriteRenderData
const fsCMaterial ** mMaterials
fsS32mSpritesPerMaterial
fsITextRenderData ** mTextRenderData
const fsIFont ** mFonts
fsS32mTextStringsPerFont
const fsILineRenderData ** mLineRenderData
fsS32mLinesPerBatch
fsS32 mCurrentSprite
fsS32 mCurrentMaterial
fsS32 mCurrentTextSprite
fsS32 mCurrentFont
fsS32 mCurrentLine
fsS32 mCurrentLineBatch
const fsS32 mMaxSprites
const fsS32 mMaxMaterials

Static Protected Attributes

static fsIRenderermInstance = nullptr

Friends

class fsCRenderJobRenderTextures
class fsCRenderJobSprites
class fsCRenderJobText
class fsCRenderJobLine
class fsCRenderJobTextEntry
class fsCRenderJobSprite3d
class fsIRenderTextureRenderData
class fsISpriteRenderData
class fsITextRenderData
class fsILineRenderData

Member Enumeration Documentation

◆ eRENDER_STATE

Enumerator
eNONE 
eDRAW_2D 
eDRAW_TO_TEXTURE_2D 
eDRAW_3D 

◆ eSPRITE_STRIP_PLACE

Enumerator
eFIRST 
eSTRIPPED 
eLAST 

Constructor & Destructor Documentation

◆ ~fsIRenderer()

fsIRenderer::~fsIRenderer ( )
virtual

◆ fsIRenderer()

fsIRenderer::fsIRenderer ( fsS32 pMaxSprites,
fsS32 pMaxMaterialChanges )
protected

Member Function Documentation

◆ begin2d()

void fsIRenderer::begin2d ( )

◆ begin2dDo()

virtual void fsIRenderer::begin2dDo ( )
protectedpure virtual

◆ begin3dDo()

virtual void fsIRenderer::begin3dDo ( )
protectedpure virtual

◆ create()

void fsIRenderer::create ( fsS32 pMaxSprites,
fsS32 pMaxMaterialChanges )
static

◆ destroy()

void fsIRenderer::destroy ( )
static

◆ end2dDo()

virtual void fsIRenderer::end2dDo ( )
protectedpure virtual

◆ end3dDo()

virtual void fsIRenderer::end3dDo ( )
protectedpure virtual

◆ flush()

void fsIRenderer::flush ( )

◆ frameEnd()

void fsIRenderer::frameEnd ( )

◆ frameEndDo()

virtual void fsIRenderer::frameEndDo ( )
protectedpure virtual

◆ frameStart()

void fsIRenderer::frameStart ( )

◆ frameStartDo()

virtual void fsIRenderer::frameStartDo ( )
protectedpure virtual

◆ initialise()

void fsIRenderer::initialise ( )
protectedvirtual

◆ initialiseDo()

virtual void fsIRenderer::initialiseDo ( )
protectedpure virtual

◆ instanceGet()

fsIRenderer * fsIRenderer::instanceGet ( )
static

◆ lineAddToBatch()

void fsIRenderer::lineAddToBatch ( fsILineRenderData * pLineRenderData)

◆ prepareFor2d()

void fsIRenderer::prepareFor2d ( )

◆ prepareFor3d()

void fsIRenderer::prepareFor3d ( )

◆ renderTexturedAddToBatch()

void fsIRenderer::renderTexturedAddToBatch ( fsIRenderTextureRenderData *const pRenderTextureRenderData)

◆ sprite3dAddToBatch()

void fsIRenderer::sprite3dAddToBatch ( fsC3dSceneSprite *const pScene)

◆ spriteAddToBatch()

void fsIRenderer::spriteAddToBatch ( fsISpriteRenderData * pSprRenderData)

◆ textAddToBatch()

void fsIRenderer::textAddToBatch ( fsITextRenderData * pTxtRenderData)

◆ textEntryAddToBatch()

void fsIRenderer::textEntryAddToBatch ( fsITextEntryRenderData * pTxtEntry)

◆ uninitialise()

void fsIRenderer::uninitialise ( )
protectedvirtual

◆ uninitialiseDo()

virtual void fsIRenderer::uninitialiseDo ( )
protectedpure virtual

◆ fsCRenderJobLine

friend class fsCRenderJobLine
friend

◆ fsCRenderJobRenderTextures

friend class fsCRenderJobRenderTextures
friend

◆ fsCRenderJobSprite3d

friend class fsCRenderJobSprite3d
friend

◆ fsCRenderJobSprites

friend class fsCRenderJobSprites
friend

◆ fsCRenderJobText

friend class fsCRenderJobText
friend

◆ fsCRenderJobTextEntry

friend class fsCRenderJobTextEntry
friend

◆ fsILineRenderData

friend class fsILineRenderData
friend

◆ fsIRenderTextureRenderData

friend class fsIRenderTextureRenderData
friend

◆ fsISpriteRenderData

friend class fsISpriteRenderData
friend

◆ fsITextRenderData

friend class fsITextRenderData
friend

Member Data Documentation

◆ mCurrentFont

fsS32 fsIRenderer::mCurrentFont
protected

◆ mCurrentLine

fsS32 fsIRenderer::mCurrentLine
protected

◆ mCurrentLineBatch

fsS32 fsIRenderer::mCurrentLineBatch
protected

◆ mCurrentMaterial

fsS32 fsIRenderer::mCurrentMaterial
protected

◆ mCurrentSprite

fsS32 fsIRenderer::mCurrentSprite
protected

◆ mCurrentTextSprite

fsS32 fsIRenderer::mCurrentTextSprite
protected

◆ mFonts

const fsIFont** fsIRenderer::mFonts
protected

◆ mInstance

fsIRenderer * fsIRenderer::mInstance = nullptr
staticprotected

◆ mLineRenderData

const fsILineRenderData** fsIRenderer::mLineRenderData
protected

◆ mLinesPerBatch

fsS32* fsIRenderer::mLinesPerBatch
protected

◆ mMaterials

const fsCMaterial** fsIRenderer::mMaterials
protected

◆ mMaxMaterials

const fsS32 fsIRenderer::mMaxMaterials
protected

◆ mMaxSprites

const fsS32 fsIRenderer::mMaxSprites
protected

◆ mRenderJobs

std::vector<fsIRenderJob*> fsIRenderer::mRenderJobs
protected

◆ mSpriteRenderData

const fsISpriteRenderData** fsIRenderer::mSpriteRenderData
protected

◆ mSpritesPerMaterial

fsS32* fsIRenderer::mSpritesPerMaterial
protected

◆ mState

eRENDER_STATE fsIRenderer::mState
protected

◆ mTextRenderData

fsITextRenderData** fsIRenderer::mTextRenderData
protected

◆ mTextStringsPerFont

fsS32* fsIRenderer::mTextStringsPerFont
protected

The documentation for this class was generated from the following files: