Simulant  21.12-481
A portable game engine for Windows, OSX, Linux, Dreamcast, and PSP
Protected Member Functions | Protected Attributes | List of all members
smlt::GLRenderer Class Reference
Inheritance diagram for smlt::GLRenderer:
smlt::Renderer smlt::batcher::RenderGroupFactory smlt::GenericRenderer smlt::GL1XRenderer

Protected Member Functions

 GLRenderer (Window *window)
void on_texture_register (TextureID tex_id, Texture *texture) override
void on_texture_unregister (TextureID tex_id, Texture *texture) override
void on_texture_prepare (Texture *texture) override
bool texture_format_is_native (TextureFormat fmt) override
uint32_t convert_format (TextureFormat format)
uint32_t convert_type (TextureFormat format)

Protected Attributes

thread::Mutex texture_object_mutex_
std::unordered_map< TextureID, uint32_t > texture_objects_

Additional Inherited Members

- Public Types inherited from smlt::Renderer
typedef std::shared_ptr< Rendererptr
- Public Member Functions inherited from smlt::Renderer
 Renderer (Window *window)
virtual std::shared_ptr< batcher::RenderQueueVisitorget_render_queue_visitor (CameraPtr camera)=0
virtual void init_context ()=0
virtual GPUProgramID new_or_existing_gpu_program (const std::string &vertex_shader, const std::string &fragment_shader)
virtual GPUProgramID current_gpu_program_id () const
virtual GPUProgramPtr gpu_program (const GPUProgramID &) const
virtual GPUProgramID default_gpu_program_id () const
virtual std::string name () const =0
virtual void prepare_to_render (const Renderable *renderable)=0
bool natively_supports_texture_format (TextureFormat fmt)
bool supports_texture_format (TextureFormat fmt)
virtual bool texture_format_is_usable (TextureFormat fmt)
virtual bool supports_gpu_programs () const
bool is_texture_registered (TextureID texture_id) const
void pre_render ()
void prepare_texture (Texture *texture)
void prepare_material (Material *material)
- Public Member Functions inherited from smlt::batcher::RenderGroupFactory
virtual RenderGroupKey prepare_render_group (RenderGroup *group, const Renderable *renderable, const MaterialPass *material_pass, const uint8_t pass_number, const bool is_blended, const float distance_to_camera)=0
- Public Attributes inherited from smlt::Renderer
Property< Window *Renderer::* > window = { this, &Renderer::window_ }

Member Function Documentation

◆ texture_format_is_native()

bool smlt::GLRenderer::texture_format_is_native ( TextureFormat  fmt)

To be overridden by subclasses. Default supported textures are those that are supported by glTexImage2D without any extensions

Reimplemented from smlt::Renderer.

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