Oxygine  1
2g game engine
Public Member Functions | Static Public Member Functions | Static Public Attributes | Protected Member Functions | Protected Attributes | List of all members
oxygine::STDRenderer Class Reference
Inheritance diagram for oxygine::STDRenderer:
oxygine::IElementRenderer oxygine::MaskedRenderer

Public Member Functions

 STDRenderer (IVideoDriver *driver=0)
const MatrixgetViewProjection () const
IVideoDrivergetDriver ()
unsigned int getShaderFlags () const
void setDriver (IVideoDriver *)
void setViewProjTransform (const Matrix &viewProj)
void setVertexDeclaration (const VertexDeclaration *decl)
void setUberShaderProgram (UberShaderProgram *pr)
void setBlendMode (blend_mode blend)
void setTexture (const spNativeTexture &base, const spNativeTexture &alpha, bool basePremultiplied=true)
void setTexture (const spNativeTexture &base, bool basePremultiplied=true)
void setTransform (const Transform &tr)
void beginElementRendering (bool basePremultiplied)
void beginSDFont (float contrast, float offset, const Color &outlineColor, float outlineOffset)
void endSDFont ()
void drawElement (const spNativeTexture &texture, unsigned int color, const RectF &src, const RectF &dest) override
void draw (const Color &, const RectF &srcRect, const RectF &destRect)
void drawBatch ()
void begin (STDRenderer *prev=0)
void begin (spNativeTexture nt, const Rect *viewport=0)
void end ()
void initCoordinateSystem (int width, int height, bool flipU=false)
void resetSettings ()
void cleanup ()
virtual void addVertices (const void *data, unsigned int size)

Static Public Member Functions

static void setDefaultSettings ()
static void initialize ()
static void release ()
static void reset ()
static bool isReady ()
static void restore ()

Static Public Attributes

static STDRendererinstance
static spNativeTexture white
static spNativeTexture invisible
static UberShaderProgram uberShader
static std::vector< unsigned char > uberShaderBody
static std::vector< unsigned short > indices16
static size_t maxVertices

Protected Member Functions

void setShader (ShaderProgram *prog)
void _drawBatch ()
void _addVertices (const void *data, unsigned int size)
void _checkDrawBatch ()
virtual void preDrawBatch ()
virtual void _cleanup ()
virtual void _begin ()
virtual void _resetSettings ()

Protected Attributes

Transform _transform
std::vector< unsigned char > _vertices
const VertexDeclaration_vdecl
Matrix _vp
spNativeTexture _base
spNativeTexture _alpha
blend_mode _blend
unsigned int _shaderFlags
bool _drawing
spNativeTexture _prevRT

Member Function Documentation

◆ begin()

void oxygine::STDRenderer::begin ( STDRenderer prev = 0)

Begins rendering into RenderTexture or into primary framebuffer if rt is null

◆ cleanup()

void oxygine::STDRenderer::cleanup ( )

Cleans existing accumulated batch.

◆ drawBatch()

void oxygine::STDRenderer::drawBatch ( )

Draws existing batch immediately.

◆ end()

void oxygine::STDRenderer::end ( )

Completes started rendering and restores previous Frame Buffer.

◆ initCoordinateSystem()

void oxygine::STDRenderer::initCoordinateSystem ( int  width,
int  height,
bool  flipU = false 

initializes View + Projection matrices where TopLeft is (0,0) and RightBottom is (width, height). use flipU = true for render to texture

◆ initialize()

static void oxygine::STDRenderer::initialize ( )

Initializes internal classes. Called automatically from oxygine::init();

◆ isReady()

static bool oxygine::STDRenderer::isReady ( )

is Renderer was restored and ready to be used

◆ release()

static void oxygine::STDRenderer::release ( )

Clears internal data

◆ reset()

static void oxygine::STDRenderer::reset ( )

for lost context

◆ restore()

static void oxygine::STDRenderer::restore ( )

restore after lost context

◆ setBlendMode()

void oxygine::STDRenderer::setBlendMode ( blend_mode  blend)

Sets blend mode. Default value is blend_premultiplied_alpha

◆ setDefaultSettings()

static void oxygine::STDRenderer::setDefaultSettings ( )

Sets default rendering OpenGL options for 2D

◆ setTexture()

void oxygine::STDRenderer::setTexture ( const spNativeTexture &  base,
const spNativeTexture &  alpha,
bool  basePremultiplied = true 

Sets texture. If texture is null White texture would be used.

◆ setTransform()

void oxygine::STDRenderer::setTransform ( const Transform &  tr)

Sets World transformation.

Member Data Documentation

◆ white

spNativeTexture oxygine::STDRenderer::white

White 4x4 Texture

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