neoGFX
Cross-platform C++ app/game engine
Loading...
Searching...
No Matches
neogfx::standard_gradient_shader Class Reference

#include <fragment_shader.hpp>

Inheritance diagram for neogfx::standard_gradient_shader:
neogfx::standard_fragment_shader< i_gradient_shader > neogfx::fragment_shader< Base > neogfx::shader< Base > neolib::reference_counted< Base, DeallocateOnRelease >

Public Member Functions

 standard_gradient_shader (std::string const &aName="standard_gradient_shader")
 
void generate_code (const i_shader_program &aProgram, shader_language aLanguage, i_string &aOutput) const override
 
void clear_gradient () final
 
void set_gradient (i_rendering_context &aContext, const gradient &aGradient) final
 
void set_gradient (i_rendering_context &aContext, const game::gradient &aGradient) final
 
- Public Member Functions inherited from neogfx::standard_fragment_shader< i_gradient_shader >
 standard_fragment_shader (std::string const &aName="standard_fragment_shader")
 
bool supports (vertex_buffer_type aBufferType) const override
 
void generate_code (const i_shader_program &aProgram, shader_language aLanguage, i_string &aOutput) const override
 
- Public Member Functions inherited from neogfx::fragment_shader< Base >
 fragment_shader (std::string const &aName)
 
- Public Member Functions inherited from neogfx::shader< Base >
 shader (shader_type aType, std::string const &aName, bool aEnabled=true)
 
 ~shader ()
 
shader_type type () const final
 
const i_stringname () const final
 
bool supports (vertex_buffer_type aBufferType) const override
 
void * handle (const i_shader_program &aProgram) const final
 
bool enabled () const final
 
bool disabled () const final
 
void enable () final
 
void disable () final
 
bool dirty () const final
 
void set_dirty () final
 
void set_clean () final
 
bool uniforms_changed () const final
 
const i_shader::uniform_list & uniforms () const final
 
bool has_shared_uniforms () const final
 
void clear_uniform (shader_uniform_id aUniform) final
 
shader_uniform_id create_uniform (const i_string &aName, bool aShared=false) final
 
shader_uniform_id find_uniform (const i_string &aName) const final
 
void set_uniform (shader_uniform_id aUniform, const abstract_value_type &aValue) final
 
void clear_uniform_storage (shader_uniform_id aUniform) final
 
void update_uniform_storage (shader_uniform_id aUniform, shader_uniform_storage aStorage) final
 
void clear_uniform_location (shader_uniform_id aUniform) final
 
void update_uniform_location (shader_uniform_id aUniform, shader_uniform_location aLocation) final
 
const variable_listin_variables () const final
 
const variable_listout_variables () const final
 
void clear_variable (const i_string &aName) final
 
i_shader_variable & add_variable (const i_shader_variable &aVariable) final
 
void prepare_uniforms (const i_rendering_context &, i_shader_program &) override
 
void generate_code (const i_shader_program &aProgram, shader_language aLanguage, i_string &aOutput) const override
 
void generate_invoke (const i_shader_program &aProgram, shader_language aLanguage, i_string &aInvokes) const final
 
- Public Member Functions inherited from neolib::reference_counted< Base, DeallocateOnRelease >
 reference_counted () noexcept
 
 reference_counted (const reference_counted &aOther) noexcept
 
 ~reference_counted ()
 
reference_countedoperator= (const reference_counted &)
 
void add_ref () const noexcept override
 
void release () const override
 
int32_t use_count () const noexcept override
 
const base_type * release_and_take_ownership () const override
 
base_type * release_and_take_ownership () override
 
void pin () const noexcept override
 
void unpin () const override
 
i_ref_control_blockcontrol_block () override
 

Additional Inherited Members

- Public Types inherited from neogfx::shader< Base >
typedef i_shader::value_type abstract_value_type
 
typedef shader_value_type value_type
 
- Protected Types inherited from neogfx::shader< Base >
typedef neolib::jar< shader_uniform > uniform_list
 
typedef neolib::set< shader_variable > variable_list
 
- Protected Member Functions inherited from neogfx::shader< Base >
uniform_listuniforms ()
 
variable_listin_variables ()
 
variable_listout_variables ()
 

Detailed Description

Definition at line 98 of file fragment_shader.hpp.

Constructor & Destructor Documentation

◆ standard_gradient_shader()

neogfx::standard_gradient_shader::standard_gradient_shader ( std::string const &  aName = "standard_gradient_shader")

Member Function Documentation

◆ clear_gradient()

void neogfx::standard_gradient_shader::clear_gradient ( )
final

◆ generate_code()

void neogfx::standard_gradient_shader::generate_code ( const i_shader_program aProgram,
shader_language  aLanguage,
i_string aOutput 
) const
override

◆ set_gradient() [1/2]

void neogfx::standard_gradient_shader::set_gradient ( i_rendering_context aContext,
const game::gradient aGradient 
)
final

◆ set_gradient() [2/2]

void neogfx::standard_gradient_shader::set_gradient ( i_rendering_context aContext,
const gradient aGradient 
)
final

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