34 #include "../api_display.h"
35 #include "../Render/graphic_context.h"
36 #include "../Render/rasterizer_state_description.h"
37 #include "../Render/blend_state_description.h"
38 #include "../Render/depth_stencil_state_description.h"
39 #include "../Render/storage_buffer.h"
40 #include "../Render/uniform_buffer.h"
41 #include "../Render/texture.h"
42 #include "../Render/render_buffer.h"
43 #include "../../Core/Resources/resource.h"
50 class ShaderEffectDescription_Impl;
71 void set_glsl_version(
int version = 330);
73 void set_define(std::string name, std::string value =
"1");
83 void set_frag_data(std::string name,
RenderBuffer buffer);
84 void set_frag_data(std::string name,
Texture texture);
85 void set_frag_data_to_back_buffer(std::string name);
88 void set_depth_data(
Texture texture);
91 void set_stencil_data(
Texture texture);
282 void set_attribute_screen_quad(std::string name);
283 void set_attribute_uv_quad(std::string name);
302 void set_draw_count(
int count);
309 std::shared_ptr<ShaderEffectDescription_Impl> impl;
Rasterizer state description.
Definition: rasterizer_state_description.h:43
Floating point color description class (for float).
Definition: color.h:661
Definition: primitives_array.h:65
void set_attribute(std::string name, VertexArrayVector< Vec3ub > &buffer, bool normalize=false)
Definition: shader_effect_description.h:207
void set_elements(ElementArrayVector< unsigned char > &element_array)
Definition: shader_effect_description.h:297
Resource proxy of a specific type.
Definition: resource.h:59
void set_attribute(std::string name, VertexArrayVector< Vec2ui > &buffer, bool normalize=false)
Definition: shader_effect_description.h:192
void set_attribute(std::string name, VertexArrayVector< char > &buffer, int size, bool normalize=false)
Definition: shader_effect_description.h:107
Vertex Array Buffer.
Definition: vertex_array_buffer.h:47
Blend state description.
Definition: blend_state_description.h:43
Texture object class.
Definition: texture.h:104
void set_attribute(std::string name, VertexArrayVector< float > &buffer)
Definition: shader_effect_description.h:167
void set_attribute(std::string name, VertexArrayVector< Vec2s > &buffer, bool normalize=false)
Definition: shader_effect_description.h:187
void set_attribute(std::string name, VertexArrayVector< Colorf > &buffer)
Definition: shader_effect_description.h:277
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:142
Definition: primitives_array.h:63
void set_attribute(std::string name, VertexArrayVector< Vec3s > &buffer, bool normalize=false)
Definition: shader_effect_description.h:222
void set_attribute(std::string name, VertexArrayVector< unsigned short > &buffer, int size, bool normalize=false)
Definition: shader_effect_description.h:112
Shader Effect Description.
Definition: shader_effect_description.h:55
void set_attribute(std::string name, VertexArrayVector< unsigned int > &buffer, bool normalize=false)
Definition: shader_effect_description.h:157
ShaderLanguage
Shader language used.
Definition: graphic_context.h:248
void set_attribute(std::string name, VertexArrayVector< unsigned char > &buffer, bool normalize=false)
Definition: shader_effect_description.h:137
void set_attribute(std::string name, VertexArrayVector< Vec2i > &buffer, bool normalize=false)
Definition: shader_effect_description.h:197
void set_attribute(std::string name, VertexArrayVector< Vec4ui > &buffer, bool normalize=false)
Definition: shader_effect_description.h:262
void set_attribute(std::string name, VertexArrayVector< Vec4us > &buffer, bool normalize=false)
Definition: shader_effect_description.h:252
void set_attribute(std::string name, VertexArrayVector< Vec2us > &buffer, bool normalize=false)
Definition: shader_effect_description.h:182
void set_elements(ElementArrayVector< unsigned short > &element_array)
Definition: shader_effect_description.h:292
void set_attribute(std::string name, VertexArrayVector< Vec3b > &buffer, bool normalize=false)
Definition: shader_effect_description.h:212
void set_attribute(std::string name, VertexArrayVector< Vec4i > &buffer, bool normalize=false)
Definition: shader_effect_description.h:267
void set_attribute(std::string name, VertexArrayVector< Vec4ub > &buffer, bool normalize=false)
Definition: shader_effect_description.h:242
void set_attribute(std::string name, VertexArrayVector< int > &buffer, int size, bool normalize=false)
Definition: shader_effect_description.h:127
Definition: primitives_array.h:59
void set_attribute(std::string name, VertexArrayVector< Vec4b > &buffer, bool normalize=false)
Definition: shader_effect_description.h:247
void set_attribute(std::string name, VertexArrayVector< signed int > &buffer, bool normalize=false)
Definition: shader_effect_description.h:162
Definition: graphic_context.h:250
void set_attribute(std::string name, VertexArrayVector< Vec3f > &buffer)
Definition: shader_effect_description.h:237
Definition: primitives_array.h:60
void set_attribute(std::string name, VertexArrayVector< signed short > &buffer, bool normalize=false)
Definition: shader_effect_description.h:152
2D vector
Definition: line.h:49
void set_attribute(std::string name, VertexArrayVector< Vec4f > &buffer)
Definition: shader_effect_description.h:272
void set_attribute(std::string name, VertexArrayVector< unsigned short > &buffer, bool normalize=false)
Definition: shader_effect_description.h:147
Definition: primitives_array.h:64
void set_attribute(std::string name, VertexArrayVector< Vec2f > &buffer)
Definition: shader_effect_description.h:202
void set_elements(ElementArrayVector< unsigned int > &element_array)
Definition: shader_effect_description.h:287
Definition: primitives_array.h:61
Element Array Buffer.
Definition: element_array_buffer.h:47
void set_attribute(std::string name, VertexArrayVector< Vec2ub > &buffer, bool normalize=false)
Definition: shader_effect_description.h:172
3D vector
Definition: line_ray.h:49
void set_attribute(std::string name, VertexArrayVector< Vec3ui > &buffer, bool normalize=false)
Definition: shader_effect_description.h:227
void set_attribute(std::string name, VertexArrayVector< Vec2b > &buffer, bool normalize=false)
Definition: shader_effect_description.h:177
DepthStencil state description.
Definition: depth_stencil_state_description.h:43
VertexAttributeDataType
Primitives array description.
Definition: primitives_array.h:57
void set_attribute(std::string name, VertexArrayVector< float > &buffer, int size, bool normalize=false)
Definition: shader_effect_description.h:132
void set_attribute(std::string name, VertexArrayVector< Vec3us > &buffer, bool normalize=false)
Definition: shader_effect_description.h:217
void set_attribute(std::string name, VertexArrayVector< unsigned char > &buffer, int size, bool normalize=false)
Definition: shader_effect_description.h:102
void set_attribute(std::string name, VertexArrayVector< Vec4s > &buffer, bool normalize=false)
Definition: shader_effect_description.h:257
4D vector
Definition: size.h:48
void set_attribute(std::string name, VertexArrayVector< Vec3i > &buffer, bool normalize=false)
Definition: shader_effect_description.h:232
void set_attribute(std::string name, VertexArrayVector< short > &buffer, int size, bool normalize=false)
Definition: shader_effect_description.h:117
Render-buffer object class.
Definition: render_buffer.h:48
Definition: primitives_array.h:62
Vertex Array Vector.
Definition: vertex_array_vector.h:43
void set_attribute(std::string name, VertexArrayVector< unsigned int > &buffer, int size, bool normalize=false)
Definition: shader_effect_description.h:122
Shader Feffect.
Definition: shader_effect.h:46