FastUIDraw
|
A PainterEngineGL implements PainterEngine using the GL (or GLES) API. The PainterShaderRegistrar object returned by painter_shader_registrar() derives from glsl::PainterShaderRegistrarGLSL. In addition, when adding custom shaders, the shader types need to be derived from the shader types of the GLSL module, i.e. More...
#include <painter_engine_gl.hpp>
Classes | |
class | ColorStopAtlasParams |
Class to hold the construction parameters for creating a GL-backend ColorStopAtlas for a PainterEngineGL. More... | |
class | ConfigurationGL |
A ConfigurationGL gives parameters how to contruct a PainterEngineGL. More... | |
class | GlyphAtlasParams |
Class to hold the construction parameters for creating a GL-backend GlyphAtlas for a PainterEngineGL. More... | |
class | ImageAtlasParams |
Class to hold the construction parameters for creating the GL-backend ImageAtlas for a PainterEngineGL. More... | |
Static Public Member Functions | |
static reference_counted_ptr< PainterEngineGL > | create (ConfigurationGL config_gl, const ContextProperties &ctx=ContextProperties()) |
static reference_counted_ptr< PainterEngineGL > | create (bool optimal_rendering_quality, const ContextProperties &ctx=ContextProperties()) |
Static Public Member Functions inherited from fastuidraw::reference_counted_base< T, Counter > | |
static void | add_reference (const reference_counted_base< T, Counter > *p) |
static void | remove_reference (const reference_counted_base< T, Counter > *p) |
Additional Inherited Members | |
Protected Member Functions inherited from fastuidraw::PainterEngine | |
PainterEngine (reference_counted_ptr< GlyphAtlas > glyph_atlas, reference_counted_ptr< ImageAtlas > image_atlas, reference_counted_ptr< ColorStopAtlas > colorstop_atlas, reference_counted_ptr< PainterShaderRegistrar > shader_registrar, const ConfigurationBase &config, const PainterShaderSet &pdefault_shaders) | |
PerformanceHints & | set_hints (void) |
A PainterEngineGL implements PainterEngine using the GL (or GLES) API. The PainterShaderRegistrar object returned by painter_shader_registrar() derives from glsl::PainterShaderRegistrarGLSL. In addition, when adding custom shaders, the shader types need to be derived from the shader types of the GLSL module, i.e.
Definition at line 55 of file painter_engine_gl.hpp.
Specifies how to stream buffers into GL.
!
Definition at line 93 of file painter_engine_gl.hpp.
Enumeration to specify which Program to fetch from the methods program().
Definition at line 65 of file painter_engine_gl.hpp.
const ConfigurationGL& fastuidraw::gl::PainterEngineGL::configuration_gl | ( | void | ) | const |
Returns the ConfigurationGL adapted from that passed by ctor (for the properties of the GL context) of the PainterBackendGL.
|
static |
Ctor. Create a PainterEngineGL configured via a ConfigurationGL value. The configuration of the created PainterEngineGL will be adjusted according to the functionaliy of the currentl current GL context. In addition, the current GL context or a GL context of its share group must be current when the PainterEngineGL is used.
config_gl | ConfigurationGL providing configuration parameters |
ctx | Optional argument to pass to avoid re-querying the current GL context for extension and version |
|
static |
Ctor. Create a PainterEngineGL and the atlases to be used by it. The atlases and PainterEngineGL will be configured optimally as according to the current GL context. In addition, the current GL context or a GL context of its share group must be current when the PainterEngineGL is used.
optimal_rendering_quality | if true, select parameters that give optimal rendering quality (at potential sacrifice of performance). If false, choose for optimal performance even at the cost of rendering quality. |
ctx | Optional argument to pass to avoid re-querying the current GL context for extension and version |
|
finaloverridevirtual |
To be implemented by a derived class to create a Painter Backend object. All Painter Backend objects created by create_backend() from the same PainterEngine share the same
Implements fastuidraw::PainterEngine.
|
finaloverridevirtual |
To be implemented by a derived class to create a Surface with its own backing that is useable by any Painter Backend object that this PainterEngine returns in create_backend()
dims | the dimensions of the backing store of the returned Surface |
render_type | the render type of the surface (i.e. is it a color buffer or deferred coverage buffer). |
Implements fastuidraw::PainterEngine.
unsigned int fastuidraw::gl::PainterEngineGL::num_image_units | ( | void | ) | const |
Returns the number of image binding units used; the units used are 0, 1, ..., num_image_units() - 1.
unsigned int fastuidraw::gl::PainterEngineGL::num_ssbo_units | ( | void | ) | const |
Returns the number of SSBO binding units used; the units used are 0, 1, ..., num_ssbo_units() - 1.
unsigned int fastuidraw::gl::PainterEngineGL::num_texture_units | ( | void | ) | const |
Returns the number of texture binding units used; the units used are 0, 1, ..., num_texture_units() - 1.
unsigned int fastuidraw::gl::PainterEngineGL::num_ubo_units | ( | void | ) | const |
Returns the number of UBO binding units used; the units used are 0, 1, ..., num_ubo_units() - 1.
reference_counted_ptr<Program> fastuidraw::gl::PainterEngineGL::program | ( | enum program_type_t | discard_tp, |
enum PainterBlendShader::shader_type | blend_type | ||
) |
Return the specified Program used to draw by Painter Backend objects generated by this PainterEngineGL.
discard_tp | selects what item-shaders are included |
blend_type | selects what blend type |
reference_counted_ptr<Program> fastuidraw::gl::PainterEngineGL::program_deferred_coverage_buffer | ( | void | ) |
Returns the Program used to draw to the deferred coverage buffer.