34 #include "../Render/graphic_context.h" 35 #include "../Render/rasterizer_state_description.h" 36 #include "../Render/blend_state_description.h" 37 #include "../Render/depth_stencil_state_description.h" 38 #include "../Render/storage_buffer.h" 39 #include "../Render/uniform_buffer.h" 40 #include "../Render/texture.h" 41 #include "../Render/render_buffer.h" 42 #include "../../Core/Resources/resource.h" 49 class ShaderEffectDescription_Impl;
308 std::shared_ptr<ShaderEffectDescription_Impl> impl;
Rasterizer state description.
Definition: rasterizer_state_description.h:42
Floating point color description class (for float).
Definition: color.h:660
Definition: primitives_array.h:64
void set_attribute(std::string name, VertexArrayVector< Vec3ub > &buffer, bool normalize=false)
Definition: shader_effect_description.h:206
void set_elements(ElementArrayVector< unsigned char > &element_array)
Definition: shader_effect_description.h:296
DepthStencilStateDescription & depth_stencil()
Resource proxy of a specific type.
Definition: resource.h:58
void set_uniform_block(std::string name, Resource< UniformBuffer > values)
BlendStateDescription & blend()
void set_attribute(std::string name, VertexArrayVector< Vec2ui > &buffer, bool normalize=false)
Definition: shader_effect_description.h:191
void set_attribute(std::string name, VertexArrayVector< char > &buffer, int size, bool normalize=false)
Definition: shader_effect_description.h:106
Vertex Array Buffer.
Definition: vertex_array_buffer.h:46
Blend state description.
Definition: blend_state_description.h:42
Texture object class.
Definition: texture.h:103
void set_attribute(std::string name, VertexArrayVector< float > &buffer)
Definition: shader_effect_description.h:166
void set_attribute(std::string name, VertexArrayVector< Vec2s > &buffer, bool normalize=false)
Definition: shader_effect_description.h:186
void set_frag_data_to_back_buffer(std::string name)
void set_attribute(std::string name, VertexArrayVector< Colorf > &buffer)
Definition: shader_effect_description.h:276
void set_texture(std::string name, Resource< Texture > texture)
Element Array Vector.
Definition: element_array_vector.h:43
void set_attribute(std::string name, VertexArrayVector< signed char > &buffer, bool normalize=false)
Definition: shader_effect_description.h:141
Definition: primitives_array.h:62
void set_attribute(std::string name, VertexArrayVector< Vec3s > &buffer, bool normalize=false)
Definition: shader_effect_description.h:221
void set_stencil_data(RenderBuffer buffer)
void set_attribute(std::string name, VertexArrayVector< unsigned short > &buffer, int size, bool normalize=false)
Definition: shader_effect_description.h:111
Shader Effect Description.
Definition: shader_effect_description.h:54
void set_glsl_version(int version=330)
void set_attribute(std::string name, VertexArrayVector< unsigned int > &buffer, bool normalize=false)
Definition: shader_effect_description.h:156
void set_elements(ElementArrayBuffer &element_array, VertexAttributeDataType indices_type)
void set_draw_count(int count)
void set_attribute(std::string name, VertexArrayBuffer &buffer, int size, VertexAttributeDataType type, size_t offset=0, int stride=0, bool normalize=false)
ShaderLanguage
Shader language used.
Definition: graphic_context.h:248
RasterizerStateDescription & rasterizer()
void set_attribute(std::string name, VertexArrayVector< unsigned char > &buffer, bool normalize=false)
Definition: shader_effect_description.h:136
ShaderEffectDescription()
void set_attribute_uv_quad(std::string name)
void set_attribute(std::string name, VertexArrayVector< Vec2i > &buffer, bool normalize=false)
Definition: shader_effect_description.h:196
void set_attribute(std::string name, VertexArrayVector< Vec4ui > &buffer, bool normalize=false)
Definition: shader_effect_description.h:261
void set_attribute(std::string name, VertexArrayVector< Vec4us > &buffer, bool normalize=false)
Definition: shader_effect_description.h:251
void set_attribute(std::string name, VertexArrayVector< Vec2us > &buffer, bool normalize=false)
Definition: shader_effect_description.h:181
void set_elements(ElementArrayVector< unsigned short > &element_array)
Definition: shader_effect_description.h:291
void set_depth_data(RenderBuffer buffer)
void set_attribute(std::string name, VertexArrayVector< Vec3b > &buffer, bool normalize=false)
Definition: shader_effect_description.h:211
void set_attribute(std::string name, VertexArrayVector< Vec4i > &buffer, bool normalize=false)
Definition: shader_effect_description.h:266
void set_compute_shader(std::string code, ShaderLanguage language=shader_glsl)
void set_attribute(std::string name, VertexArrayVector< Vec4ub > &buffer, bool normalize=false)
Definition: shader_effect_description.h:241
void set_attribute(std::string name, VertexArrayVector< int > &buffer, int size, bool normalize=false)
Definition: shader_effect_description.h:126
Definition: primitives_array.h:58
void set_attribute(std::string name, VertexArrayVector< Vec4b > &buffer, bool normalize=false)
Definition: shader_effect_description.h:246
void set_attribute(std::string name, VertexArrayVector< signed int > &buffer, bool normalize=false)
Definition: shader_effect_description.h:161
Definition: graphic_context.h:250
void set_frag_data(std::string name, RenderBuffer buffer)
void set_storage(std::string name, Resource< StorageBuffer > values)
void set_attribute(std::string name, VertexArrayVector< Vec3f > &buffer)
Definition: shader_effect_description.h:236
Definition: primitives_array.h:59
void set_attribute(std::string name, VertexArrayVector< signed short > &buffer, bool normalize=false)
Definition: shader_effect_description.h:151
2D vector
Definition: line.h:48
void set_attribute(std::string name, VertexArrayVector< Vec4f > &buffer)
Definition: shader_effect_description.h:271
void set_attribute(std::string name, VertexArrayVector< unsigned short > &buffer, bool normalize=false)
Definition: shader_effect_description.h:146
Definition: primitives_array.h:63
void set_attribute(std::string name, VertexArrayVector< Vec2f > &buffer)
Definition: shader_effect_description.h:201
void set_elements(ElementArrayVector< unsigned int > &element_array)
Definition: shader_effect_description.h:286
Definition: primitives_array.h:60
Element Array Buffer.
Definition: element_array_buffer.h:46
void set_attribute(std::string name, VertexArrayVector< Vec2ub > &buffer, bool normalize=false)
Definition: shader_effect_description.h:171
3D vector
Definition: line_ray.h:48
void set_attribute(std::string name, VertexArrayVector< Vec3ui > &buffer, bool normalize=false)
Definition: shader_effect_description.h:226
void set_attribute(std::string name, VertexArrayVector< Vec2b > &buffer, bool normalize=false)
Definition: shader_effect_description.h:176
DepthStencil state description.
Definition: depth_stencil_state_description.h:42
VertexAttributeDataType
Primitives array description.
Definition: primitives_array.h:56
void set_image(std::string name, Resource< Texture > texture)
void set_attribute_screen_quad(std::string name)
void set_attribute(std::string name, VertexArrayVector< float > &buffer, int size, bool normalize=false)
Definition: shader_effect_description.h:131
void set_fragment_shader(std::string code, ShaderLanguage language=shader_glsl)
void set_attribute(std::string name, VertexArrayVector< Vec3us > &buffer, bool normalize=false)
Definition: shader_effect_description.h:216
void set_attribute(std::string name, VertexArrayVector< unsigned char > &buffer, int size, bool normalize=false)
Definition: shader_effect_description.h:101
void set_vertex_shader(std::string code, ShaderLanguage language=shader_glsl)
void set_attribute(std::string name, VertexArrayVector< Vec4s > &buffer, bool normalize=false)
Definition: shader_effect_description.h:256
4D vector
Definition: size.h:47
void set_attribute(std::string name, VertexArrayVector< Vec3i > &buffer, bool normalize=false)
Definition: shader_effect_description.h:231
void set_attribute(std::string name, VertexArrayVector< short > &buffer, int size, bool normalize=false)
Definition: shader_effect_description.h:116
Render-buffer object class.
Definition: render_buffer.h:47
Definition: primitives_array.h:61
Vertex Array Vector.
Definition: vertex_array_vector.h:43
void set_define(std::string name, std::string value="1")
void set_attribute(std::string name, VertexArrayVector< unsigned int > &buffer, int size, bool normalize=false)
Definition: shader_effect_description.h:121
Shader Feffect.
Definition: shader_effect.h:45