FIFE
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
FIFE::RenderBackendOpenGLe Class Reference

The main class of the OpenGL-based experimental renderer. More...

#include <renderbackendopengle.h>

+ Inheritance diagram for FIFE::RenderBackendOpenGLe:
+ Collaboration diagram for FIFE::RenderBackendOpenGLe:

Classes

struct  currentState
 
struct  RenderData
 
class  RenderObject
 
struct  RenderZData
 
struct  RenderZData2T
 
struct  RenderZObject
 

Public Member Functions

 RenderBackendOpenGLe (const SDL_Color &colorkey)
 
virtual ~RenderBackendOpenGLe ()
 
virtual const std::string & getName () const
 The name of the renderbackend. More...
 
virtual void startFrame ()
 Called when a new frame starts. More...
 
virtual void endFrame ()
 Called when a frame is finished and ready to be displayed. More...
 
virtual void init (const std::string &driver)
 Initializes the backend. More...
 
virtual void clearBackBuffer ()
 Forces a clear of the backbuffer. More...
 
virtual void setLightingModel (uint32_t lighting)
 Initializes the light. More...
 
virtual uint32_t getLightingModel () const
 Gets the current light model. More...
 
virtual void setLighting (float red, float green, float blue)
 Set colors for lighting. More...
 
virtual void resetLighting ()
 Reset lighting with default values. More...
 
virtual void resetStencilBuffer (uint8_t buffer)
 Reset stencil buffer with given value. More...
 
virtual void changeBlending (int32_t scr, int32_t dst)
 Change the Blendingmodel. More...
 
virtual void createMainScreen (const ScreenMode &mode, const std::string &title, const std::string &icon)
 Creates the mainscreen (the display window). More...
 
virtual void setScreenMode (const ScreenMode &mode)
 Sets the mainscreen display mode. More...
 
virtual ImagecreateImage (IResourceLoader *loader=0)
 
virtual ImagecreateImage (const std::string &name, IResourceLoader *loader=0)
 
virtual ImagecreateImage (const uint8_t *data, uint32_t width, uint32_t height)
 Creates an Image suitable for this renderbackend. More...
 
virtual ImagecreateImage (const std::string &name, const uint8_t *data, uint32_t width, uint32_t height)
 
virtual ImagecreateImage (SDL_Surface *surface)
 Helper function to create images from SDL_Surfaces. More...
 
virtual ImagecreateImage (const std::string &name, SDL_Surface *surface)
 
virtual void renderVertexArrays ()
 Render the Vertex Arrays, only for primitives (points, lines,...) More...
 
virtual void addImageToArray (uint32_t id, const Rect &rec, float const *st, uint8_t alpha, uint8_t const *rgba)
 Add the Image data to the array. More...
 
virtual void addImageToArrayZ (uint32_t id, const Rect &rec, float vertexZ, float const *st, uint8_t alpha, bool forceNewBatch, uint8_t const *rgba)
 
virtual void changeRenderInfos (uint16_t elements, int32_t src, int32_t dst, bool light, bool stentest, uint8_t stenref, GLConstants stenop, GLConstants stenfunc)
 Dirty helper function to change the render infos. More...
 
virtual void captureScreen (const std::string &filename)
 Creates a Screenshot and saves it to a file. More...
 
virtual void captureScreen (const std::string &filename, uint32_t width, uint32_t height)
 Creates a Screenshot with the given size(w,h) and saves it to a file. More...
 
virtual bool putPixel (int32_t x, int32_t y, uint8_t r, uint8_t g, uint8_t b, uint8_t a=255)
 Writes pixel to given position. More...
 
virtual void drawLine (const Point &p1, const Point &p2, uint8_t r, uint8_t g, uint8_t b, uint8_t a=255)
 Draws line between given points with given RGBA. More...
 
virtual void drawTriangle (const Point &p1, const Point &p2, const Point &p3, uint8_t r, uint8_t g, uint8_t b, uint8_t a=255)
 Draws triangle between given points with given RGBA. More...
 
virtual void drawRectangle (const Point &p, uint16_t w, uint16_t h, uint8_t r, uint8_t g, uint8_t b, uint8_t a=255)
 Draws an axis parallel rectangle. More...
 
virtual void fillRectangle (const Point &p, uint16_t w, uint16_t h, uint8_t r, uint8_t g, uint8_t b, uint8_t a=255)
 Draws a filled axis parallel rectangle. More...
 
virtual void drawQuad (const Point &p1, const Point &p2, const Point &p3, const Point &p4, uint8_t r, uint8_t g, uint8_t b, uint8_t a=255)
 Draws quad between given points with given RGBA. More...
 
virtual void drawVertex (const Point &p, const uint8_t size, uint8_t r, uint8_t g, uint8_t b, uint8_t a=255)
 Draws a quad that represents a vertex with given RGBA. More...
 
virtual void drawLightPrimitive (const Point &p, uint8_t intensity, float radius, int32_t subdivisions, float xstretch, float ystretch, uint8_t red, uint8_t green, uint8_t blue)
 Draws a light primitive that based on a triangle fan. More...
 
virtual void attachRenderTarget (ImagePtr &img, bool discard)
 Attaches given image as a new render surface. More...
 
virtual void detachRenderTarget ()
 Detaches current render surface. More...
 
void enableTextures (uint32_t texUnit)
 
void disableTextures (uint32_t texUnit)
 
void bindTexture (uint32_t texUnit, GLuint texId)
 
void bindTexture (GLuint textId)
 
- Public Member Functions inherited from FIFE::RenderBackend
 RenderBackend (const SDL_Color &colorkey)
 Constructor. More...
 
virtual ~RenderBackend ()
 Destructor. More...
 
void deinit ()
 Performs cleanup actions. More...
 
const ScreenModegetCurrentScreenMode () const
 Get current screen mode. More...
 
uint32_t getWidth () const
 
uint32_t getHeight () const
 
uint32_t getScreenWidth () const
 
uint32_t getScreenHeight () const
 
const RectgetArea () const
 
void pushClipArea (const Rect &cliparea, bool clear=true)
 Pushes clip area to clip stack Clip areas define which area is drawn on screen. More...
 
void popClipArea ()
 Pops clip area from clip stack. More...
 
const RectgetClipArea () const
 Gets the current clip area. More...
 
void setAlphaOptimizerEnabled (bool enabled)
 Enable or disable the alpha 'optimizing' code. More...
 
bool isAlphaOptimizerEnabled () const
 
void setImageCompressingEnabled (bool enabled)
 Enables or disable compressing images by video driver. More...
 
bool isImageCompressingEnabled () const
 
void setFramebufferEnabled (bool enabled)
 Enables or disable the usage of the framebuffer, if available. More...
 
bool isFramebufferEnabled () const
 
void setNPOTEnabled (bool enabled)
 Enables or disable the usage of npot, if available. More...
 
bool isNPOTEnabled () const
 
void setColorKeyEnabled (bool colorkeyenable)
 Sets whether to use the colorkey feature. More...
 
bool isColorKeyEnabled () const
 Gets whether the colorkey feature is in use. More...
 
void setColorKey (const SDL_Color &colorkey)
 Sets the global colorkey to use for images. More...
 
const SDL_Color & getColorKey () const
 Gets the global colorkey setting. More...
 
void setBackgroundColor (uint8_t r, uint8_t g, uint8_t b)
 Set the background color. More...
 
void resetBackgroundColor ()
 Reset the background color to black. More...
 
const SDL_PixelFormat & getPixelFormat () const
 Gets the current screen rgba format. More...
 
void setFrameLimitEnabled (bool limited)
 Sets whether to use the frame limiter. More...
 
bool isFrameLimitEnabled () const
 Gets whether the frame limiter is in use. More...
 
void setFrameLimit (uint16_t framelimit)
 Sets the frame limit. More...
 
uint16_t getFrameLimit () const
 Gets the frame limit. More...
 
SDL_Surface * getRenderTargetSurface ()
 Returns currently attached render surface. More...
 
- Public Member Functions inherited from FIFE::DynamicSingleton< RenderBackend >
 DynamicSingleton ()
 
virtual ~DynamicSingleton ()
 

Static Public Attributes

static const float zfar = 100.0f
 
static const float znear = -100.0f
 

Protected Member Functions

virtual void setClipArea (const Rect &cliparea, bool clear)
 Sets given clip area into image. More...
 
void enableLighting ()
 
void disableLighting ()
 
void enableStencilTest ()
 
void disableStencilTest ()
 
void setStencilTest (uint8_t stencil_ref, GLenum stencil_op, GLenum stencil_func)
 
void enableAlphaTest ()
 
void disableAlphaTest ()
 
void setAlphaTest (float ref_alpha)
 
void enableDepthTest ()
 
void disableDepthTest ()
 
void setEnvironmentalColor (const uint8_t *rgba)
 
void setVertexPointer (GLsizei stride, const GLvoid *ptr)
 
void setColorPointer (GLsizei stride, const GLvoid *ptr)
 
void setTexCoordPointer (uint32_t texUnit, GLsizei stride, const GLvoid *ptr)
 
void enableScissorTest ()
 
void disableScissorTest ()
 
void renderWithZ ()
 
void renderWithoutZ ()
 
void prepareForOverlays ()
 
RenderZObjectgetRenderBufferObject (GLuint texture_id, bool unlit=false)
 
- Protected Member Functions inherited from FIFE::RenderBackend
void clearClipArea ()
 Clears any possible clip areas. More...
 

Protected Attributes

GLuint m_mask_overlays
 
std::vector< RenderZDatam_renderZ_datas
 
std::vector< RenderZObjectm_renderZ_objects
 
std::vector< RenderZData2Tm_render_trans_datas
 
std::vector< RenderObjectm_render_trans_objects
 
std::vector< RenderZData2Tm_render_datas2T
 
std::vector< RenderObjectm_render_objects2T
 
std::vector< RenderZObjectm_renderZ_objects_forced
 
std::vector< RenderDatam_render_datas
 
std::vector< RenderObjectm_render_objects
 
struct
FIFE::RenderBackendOpenGLe::currentState 
m_state
 
GLuint m_fbo_id
 
ImagePtr m_img_target
 
bool m_target_discard
 
- Protected Attributes inherited from FIFE::RenderBackend
SDL_Surface * m_screen
 
SDL_Surface * m_target
 
bool m_compressimages
 
bool m_useframebuffer
 
bool m_usenpot
 
bool m_isalphaoptimized
 
bool m_iscolorkeyenabled
 
SDL_Color m_colorkey
 
ScreenMode m_screenMode
 
SDL_PixelFormat m_rgba_format
 
bool m_isbackgroundcolor
 
SDL_Color m_backgroundcolor
 
std::stack< ClipInfom_clipstack
 

Additional Inherited Members

- Static Public Member Functions inherited from FIFE::DynamicSingleton< RenderBackend >
static RenderBackendinstance ()
 

Detailed Description

The main class of the OpenGL-based experimental renderer.

See Also
RenderBackend

Definition at line 42 of file renderbackendopengle.h.

Constructor & Destructor Documentation

FIFE::RenderBackendOpenGLe::~RenderBackendOpenGLe ( )
virtual

Member Function Documentation

void FIFE::RenderBackendOpenGLe::addImageToArray ( uint32_t  id,
const Rect rec,
float const *  st,
uint8_t  alpha,
uint8_t const *  rgba 
)
virtual
void FIFE::RenderBackendOpenGLe::bindTexture ( uint32_t  texUnit,
GLuint  texId 
)
void FIFE::RenderBackendOpenGLe::bindTexture ( GLuint  textId)
void FIFE::RenderBackendOpenGLe::captureScreen ( const std::string &  filename)
virtual

Creates a Screenshot and saves it to a file.

Implements FIFE::RenderBackend.

Definition at line 1295 of file renderbackendopengle.cpp.

References FIFE::BMASK, FIFE::RenderBackend::getHeight(), FIFE::RenderBackend::getWidth(), FIFE::GMASK, FIFE::NULLMASK, FIFE::RMASK, and FIFE::Image::saveAsPng().

Referenced by captureScreen().

+ Here is the caller graph for this function:

void FIFE::RenderBackendOpenGLe::captureScreen ( const std::string &  filename,
uint32_t  width,
uint32_t  height 
)
virtual

Creates a Screenshot with the given size(w,h) and saves it to a file.

Implements FIFE::RenderBackend.

Definition at line 1329 of file renderbackendopengle.cpp.

References FIFE::AMASK, FIFE::BMASK, captureScreen(), FIFE::RenderBackend::getHeight(), FIFE::RenderBackend::getWidth(), FIFE::GMASK, FIFE::RMASK, and FIFE::Image::saveAsPng().

void FIFE::RenderBackendOpenGLe::changeBlending ( int32_t  scr,
int32_t  dst 
)
virtual

Change the Blendingmodel.

Implements FIFE::RenderBackend.

Definition at line 526 of file renderbackendopengle.cpp.

References FIFE::RenderBackendOpenGLe::currentState::blend_dst, FIFE::RenderBackendOpenGLe::currentState::blend_src, and m_state.

Referenced by renderWithoutZ().

+ Here is the caller graph for this function:

void FIFE::RenderBackendOpenGLe::changeRenderInfos ( uint16_t  elements,
int32_t  src,
int32_t  dst,
bool  light,
bool  stentest,
uint8_t  stenref,
GLConstants  stenop,
GLConstants  stenfunc 
)
virtual
void FIFE::RenderBackendOpenGLe::clearBackBuffer ( )
virtual

Forces a clear of the backbuffer.

Implements FIFE::RenderBackend.

Definition at line 136 of file renderbackendopengle.cpp.

References disableScissorTest(), and enableScissorTest().

Image * FIFE::RenderBackendOpenGLe::createImage ( IResourceLoader loader = 0)
virtual

Implements FIFE::RenderBackend.

Definition at line 247 of file renderbackendopengle.cpp.

Image * FIFE::RenderBackendOpenGLe::createImage ( const std::string &  name,
IResourceLoader loader = 0 
)
virtual

Implements FIFE::RenderBackend.

Definition at line 251 of file renderbackendopengle.cpp.

Image * FIFE::RenderBackendOpenGLe::createImage ( const uint8_t *  data,
uint32_t  width,
uint32_t  height 
)
virtual

Creates an Image suitable for this renderbackend.

Parameters
dataPointer to the imagedata (needs to be in RGBA, 8 bits per channel).
widthWidth of the image.
heightHeight of the image.
Returns
The new Image.

Implements FIFE::RenderBackend.

Definition at line 323 of file renderbackendopengle.cpp.

Image * FIFE::RenderBackendOpenGLe::createImage ( const std::string &  name,
const uint8_t *  data,
uint32_t  width,
uint32_t  height 
)
virtual

Implements FIFE::RenderBackend.

Definition at line 327 of file renderbackendopengle.cpp.

Image * FIFE::RenderBackendOpenGLe::createImage ( SDL_Surface *  surface)
virtual

Helper function to create images from SDL_Surfaces.

Takes ownership over the surface.

Parameters
surfaceThe surface to convert.
Returns
The new Image.

Implements FIFE::RenderBackend.

Definition at line 255 of file renderbackendopengle.cpp.

References FIFE::RenderBackend::m_rgba_format.

Image * FIFE::RenderBackendOpenGLe::createImage ( const std::string &  name,
SDL_Surface *  surface 
)
virtual

Implements FIFE::RenderBackend.

Definition at line 289 of file renderbackendopengle.cpp.

References FIFE::RenderBackend::m_rgba_format.

void FIFE::RenderBackendOpenGLe::createMainScreen ( const ScreenMode mode,
const std::string &  title,
const std::string &  icon 
)
virtual

Creates the mainscreen (the display window).

Parameters
modeThe ScreenMode to use.
See Also
FIFE::ScreenMode.
Parameters
titleThe window title to use.
iconThe window icon to use.

Implements FIFE::RenderBackend.

Definition at line 142 of file renderbackendopengle.cpp.

References setScreenMode().

void FIFE::RenderBackendOpenGLe::disableAlphaTest ( )
protected

Definition at line 472 of file renderbackendopengle.cpp.

References FIFE::RenderBackendOpenGLe::currentState::alpha_enabled, and m_state.

Referenced by renderWithoutZ(), and renderWithZ().

+ Here is the caller graph for this function:

void FIFE::RenderBackendOpenGLe::disableDepthTest ( )
protected

Definition at line 491 of file renderbackendopengle.cpp.

References FIFE::RenderBackendOpenGLe::currentState::depth_enabled, and m_state.

Referenced by renderWithoutZ(), and renderWithZ().

+ Here is the caller graph for this function:

void FIFE::RenderBackendOpenGLe::disableLighting ( )
protected

Definition at line 409 of file renderbackendopengle.cpp.

References FIFE::RenderBackendOpenGLe::currentState::light_enabled, FIFE::RenderBackendOpenGLe::currentState::lightmodel, and m_state.

Referenced by renderWithZ(), and setLightingModel().

+ Here is the caller graph for this function:

void FIFE::RenderBackendOpenGLe::disableScissorTest ( )
protected

Definition at line 519 of file renderbackendopengle.cpp.

References m_state, and FIFE::RenderBackendOpenGLe::currentState::scissor_test.

Referenced by clearBackBuffer(), and resetStencilBuffer().

+ Here is the caller graph for this function:

void FIFE::RenderBackendOpenGLe::disableStencilTest ( )
protected

Definition at line 434 of file renderbackendopengle.cpp.

References m_state, and FIFE::RenderBackendOpenGLe::currentState::sten_enabled.

Referenced by renderWithoutZ(), and renderWithZ().

+ Here is the caller graph for this function:

void FIFE::RenderBackendOpenGLe::disableTextures ( uint32_t  texUnit)

Definition at line 366 of file renderbackendopengle.cpp.

References FIFE::RenderBackendOpenGLe::currentState::active_tex, m_state, and FIFE::RenderBackendOpenGLe::currentState::tex_enabled.

Referenced by renderWithoutZ(), and renderWithZ().

+ Here is the caller graph for this function:

void FIFE::RenderBackendOpenGLe::drawLightPrimitive ( const Point p,
uint8_t  intensity,
float  radius,
int32_t  subdivisions,
float  xstretch,
float  ystretch,
uint8_t  red,
uint8_t  green,
uint8_t  blue 
)
virtual
void FIFE::RenderBackendOpenGLe::drawLine ( const Point p1,
const Point p2,
uint8_t  r,
uint8_t  g,
uint8_t  b,
uint8_t  a = 255 
)
virtual

Draws line between given points with given RGBA.

Implements FIFE::RenderBackend.

Definition at line 893 of file renderbackendopengle.cpp.

References FIFE::RenderBackendOpenGLe::RenderData::color, m_render_datas, m_render_objects, FIFE::RenderBackendOpenGLe::RenderData::vertex, FIFE::PointType2D< T >::x, and FIFE::PointType2D< T >::y.

Referenced by FIFE::OpenGLeGuiGraphics::drawLine().

+ Here is the caller graph for this function:

void FIFE::RenderBackendOpenGLe::drawQuad ( const Point p1,
const Point p2,
const Point p3,
const Point p4,
uint8_t  r,
uint8_t  g,
uint8_t  b,
uint8_t  a = 255 
)
virtual
void FIFE::RenderBackendOpenGLe::drawRectangle ( const Point p,
uint16_t  w,
uint16_t  h,
uint8_t  r,
uint8_t  g,
uint8_t  b,
uint8_t  a = 255 
)
virtual
void FIFE::RenderBackendOpenGLe::drawTriangle ( const Point p1,
const Point p2,
const Point p3,
uint8_t  r,
uint8_t  g,
uint8_t  b,
uint8_t  a = 255 
)
virtual
void FIFE::RenderBackendOpenGLe::drawVertex ( const Point p,
const uint8_t  size,
uint8_t  r,
uint8_t  g,
uint8_t  b,
uint8_t  a = 255 
)
virtual
void FIFE::RenderBackendOpenGLe::enableAlphaTest ( )
protected

Definition at line 465 of file renderbackendopengle.cpp.

References FIFE::RenderBackendOpenGLe::currentState::alpha_enabled, and m_state.

Referenced by renderWithoutZ(), renderWithZ(), and setAlphaTest().

+ Here is the caller graph for this function:

void FIFE::RenderBackendOpenGLe::enableDepthTest ( )
protected

Definition at line 484 of file renderbackendopengle.cpp.

References FIFE::RenderBackendOpenGLe::currentState::depth_enabled, and m_state.

Referenced by renderWithZ().

+ Here is the caller graph for this function:

void FIFE::RenderBackendOpenGLe::enableLighting ( )
protected

Definition at line 402 of file renderbackendopengle.cpp.

References FIFE::RenderBackendOpenGLe::currentState::light_enabled, FIFE::RenderBackendOpenGLe::currentState::lightmodel, and m_state.

Referenced by renderWithZ(), and setLightingModel().

+ Here is the caller graph for this function:

void FIFE::RenderBackendOpenGLe::enableScissorTest ( )
protected

Definition at line 512 of file renderbackendopengle.cpp.

References m_state, and FIFE::RenderBackendOpenGLe::currentState::scissor_test.

Referenced by clearBackBuffer(), and resetStencilBuffer().

+ Here is the caller graph for this function:

void FIFE::RenderBackendOpenGLe::enableStencilTest ( )
protected

Definition at line 427 of file renderbackendopengle.cpp.

References m_state, and FIFE::RenderBackendOpenGLe::currentState::sten_enabled.

Referenced by setStencilTest().

+ Here is the caller graph for this function:

void FIFE::RenderBackendOpenGLe::enableTextures ( uint32_t  texUnit)
void FIFE::RenderBackendOpenGLe::endFrame ( )
virtual

Called when a frame is finished and ready to be displayed.

Reimplemented from FIFE::RenderBackend.

Definition at line 242 of file renderbackendopengle.cpp.

References FIFE::RenderBackend::endFrame().

void FIFE::RenderBackendOpenGLe::fillRectangle ( const Point p,
uint16_t  w,
uint16_t  h,
uint8_t  r,
uint8_t  g,
uint8_t  b,
uint8_t  a = 255 
)
virtual
uint32_t FIFE::RenderBackendOpenGLe::getLightingModel ( ) const
virtual

Gets the current light model.

Implements FIFE::RenderBackend.

Definition at line 347 of file renderbackendopengle.cpp.

References FIFE::RenderBackendOpenGLe::currentState::lightmodel, and m_state.

const std::string & FIFE::RenderBackendOpenGLe::getName ( ) const
virtual

The name of the renderbackend.

Returns
The name of this renderbackend.

Implements FIFE::RenderBackend.

Definition at line 120 of file renderbackendopengle.cpp.

void FIFE::RenderBackendOpenGLe::init ( const std::string &  driver)
virtual

Initializes the backend.

Implements FIFE::RenderBackend.

Definition at line 125 of file renderbackendopengle.cpp.

void FIFE::RenderBackendOpenGLe::prepareForOverlays ( )
protected

Definition at line 1241 of file renderbackendopengle.cpp.

References m_mask_overlays, m_state, and FIFE::RenderBackendOpenGLe::currentState::texture.

Referenced by setScreenMode().

+ Here is the caller graph for this function:

bool FIFE::RenderBackendOpenGLe::putPixel ( int32_t  x,
int32_t  y,
uint8_t  r,
uint8_t  g,
uint8_t  b,
uint8_t  a = 255 
)
virtual

Writes pixel to given position.

Returns true, if pixel was written (not out of bounds)

Implements FIFE::RenderBackend.

Definition at line 873 of file renderbackendopengle.cpp.

References FIFE::RenderBackendOpenGLe::RenderData::color, m_render_datas, m_render_objects, FIFE::RenderBackend::m_target, and FIFE::RenderBackendOpenGLe::RenderData::vertex.

Referenced by FIFE::OpenGLeGuiGraphics::drawLine(), and FIFE::OpenGLeGuiGraphics::drawPoint().

+ Here is the caller graph for this function:

void FIFE::RenderBackendOpenGLe::renderVertexArrays ( )
virtual

Render the Vertex Arrays, only for primitives (points, lines,...)

Implements FIFE::RenderBackend.

Definition at line 584 of file renderbackendopengle.cpp.

References m_render_objects, m_renderZ_objects, m_renderZ_objects_forced, renderWithoutZ(), and renderWithZ().

Referenced by FIFE::OpenGLeGuiGraphics::_endDraw(), attachRenderTarget(), detachRenderTarget(), FIFE::OpenGLeGuiGraphics::popClipArea(), and FIFE::OpenGLeGuiGraphics::pushClipArea().

+ Here is the caller graph for this function:

void FIFE::RenderBackendOpenGLe::resetLighting ( )
virtual

Reset lighting with default values.

Implements FIFE::RenderBackend.

Definition at line 423 of file renderbackendopengle.cpp.

References FIFE::RenderBackendOpenGLe::currentState::light_enabled, and m_state.

void FIFE::RenderBackendOpenGLe::resetStencilBuffer ( uint8_t  buffer)
virtual

Reset stencil buffer with given value.

Implements FIFE::RenderBackend.

Definition at line 455 of file renderbackendopengle.cpp.

References disableScissorTest(), enableScissorTest(), m_state, and FIFE::RenderBackendOpenGLe::currentState::sten_buf.

void FIFE::RenderBackendOpenGLe::setAlphaTest ( float  ref_alpha)
protected

Definition at line 479 of file renderbackendopengle.cpp.

References enableAlphaTest().

void FIFE::RenderBackendOpenGLe::setClipArea ( const Rect cliparea,
bool  clear 
)
protectedvirtual
void FIFE::RenderBackendOpenGLe::setColorPointer ( GLsizei  stride,
const GLvoid *  ptr 
)
protected
void FIFE::RenderBackendOpenGLe::setEnvironmentalColor ( const uint8_t *  rgba)
protected

Definition at line 498 of file renderbackendopengle.cpp.

References FIFE::RenderBackendOpenGLe::currentState::env_color, and m_state.

Referenced by renderWithZ().

+ Here is the caller graph for this function:

void FIFE::RenderBackendOpenGLe::setLighting ( float  red,
float  green,
float  blue 
)
virtual

Set colors for lighting.

Implements FIFE::RenderBackend.

Definition at line 416 of file renderbackendopengle.cpp.

References FIFE::RenderBackendOpenGLe::currentState::lightmodel, and m_state.

void FIFE::RenderBackendOpenGLe::setLightingModel ( uint32_t  lighting)
virtual
void FIFE::RenderBackendOpenGLe::setStencilTest ( uint8_t  stencil_ref,
GLenum  stencil_op,
GLenum  stencil_func 
)
protected
void FIFE::RenderBackendOpenGLe::setTexCoordPointer ( uint32_t  texUnit,
GLsizei  stride,
const GLvoid *  ptr 
)
protected
void FIFE::RenderBackendOpenGLe::setVertexPointer ( GLsizei  stride,
const GLvoid *  ptr 
)
protected
void FIFE::RenderBackendOpenGLe::startFrame ( )
virtual

Called when a new frame starts.

Reimplemented from FIFE::RenderBackend.

Definition at line 238 of file renderbackendopengle.cpp.

References FIFE::RenderBackend::startFrame().

Member Data Documentation

GLuint FIFE::RenderBackendOpenGLe::m_fbo_id
protected
ImagePtr FIFE::RenderBackendOpenGLe::m_img_target
protected

Definition at line 200 of file renderbackendopengle.h.

Referenced by attachRenderTarget(), and detachRenderTarget().

GLuint FIFE::RenderBackendOpenGLe::m_mask_overlays
protected

Definition at line 118 of file renderbackendopengle.h.

Referenced by prepareForOverlays(), and ~RenderBackendOpenGLe().

std::vector<RenderData> FIFE::RenderBackendOpenGLe::m_render_datas
protected
std::vector<RenderZData2T> FIFE::RenderBackendOpenGLe::m_render_datas2T
protected

Definition at line 162 of file renderbackendopengle.h.

Referenced by addImageToArrayZ(), and renderWithZ().

std::vector<RenderObject> FIFE::RenderBackendOpenGLe::m_render_objects2T
protected

Definition at line 163 of file renderbackendopengle.h.

Referenced by addImageToArrayZ(), and renderWithZ().

std::vector<RenderZData2T> FIFE::RenderBackendOpenGLe::m_render_trans_datas
protected

Definition at line 158 of file renderbackendopengle.h.

Referenced by addImageToArrayZ(), and renderWithZ().

std::vector<RenderObject> FIFE::RenderBackendOpenGLe::m_render_trans_objects
protected

Definition at line 159 of file renderbackendopengle.h.

Referenced by addImageToArrayZ(), and renderWithZ().

std::vector<RenderZData> FIFE::RenderBackendOpenGLe::m_renderZ_datas
protected

Definition at line 154 of file renderbackendopengle.h.

Referenced by addImageToArrayZ(), renderWithZ(), and setScreenMode().

std::vector<RenderZObject> FIFE::RenderBackendOpenGLe::m_renderZ_objects
protected

Definition at line 155 of file renderbackendopengle.h.

Referenced by getRenderBufferObject(), renderVertexArrays(), and renderWithZ().

std::vector<RenderZObject> FIFE::RenderBackendOpenGLe::m_renderZ_objects_forced
protected

Definition at line 166 of file renderbackendopengle.h.

Referenced by getRenderBufferObject(), renderVertexArrays(), and renderWithZ().

bool FIFE::RenderBackendOpenGLe::m_target_discard
protected

Definition at line 201 of file renderbackendopengle.h.

Referenced by attachRenderTarget().

const float FIFE::RenderBackendOpenGLe::zfar = 100.0f
static

Definition at line 92 of file renderbackendopengle.h.

Referenced by detachRenderTarget(), and setScreenMode().

const float FIFE::RenderBackendOpenGLe::znear = -100.0f
static

Definition at line 93 of file renderbackendopengle.h.

Referenced by detachRenderTarget(), and setScreenMode().


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