Simulant  21.12-349
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)
overrideprotectedvirtual

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: