X-Git-Url: http://git.tdb.fi/?p=libs%2Fgl.git;a=blobdiff_plain;f=source%2Fcore%2Fpipelinestate.cpp;h=0306a2626c9c4cbde629e6fc236fb2648431ebc5;hp=933109e6e09e492ae65b38f3780e395db01063d6;hb=3930e89d1dab90a27542c3798782216499b3ab44;hpb=42c44db6aa2961cffea6263f337adbd9d161c59c diff --git a/source/core/pipelinestate.cpp b/source/core/pipelinestate.cpp index 933109e6..0306a262 100644 --- a/source/core/pipelinestate.cpp +++ b/source/core/pipelinestate.cpp @@ -37,19 +37,17 @@ void PipelineState::set_shader_program(const Program *p) set(shprog, p, SHPROG); } -void PipelineState::set_vertex_setup(const VertexSetup *s) -{ - set(vertex_setup, s, VERTEX_SETUP); -} - -void PipelineState::set_front_face(FaceWinding w) -{ - set(front_face, w, FACE_CULL); -} - -void PipelineState::set_face_cull(CullMode c) +void PipelineState::set_uniform_block(int binding, const UniformBlock *block) { - set(face_cull, c, FACE_CULL); + auto i = lower_bound_member(uniform_blocks, binding, &BoundUniformBlock::binding); + if(i==uniform_blocks.end() || i->binding!=binding) + i = uniform_blocks.insert(i, BoundUniformBlock(binding)); + if(block!=i->block || binding<0) + { + i->block = block; + i->changed = true; + changes |= UNIFORMS; + } } void PipelineState::set_texture(unsigned binding, const Texture *tex, const Sampler *samp) @@ -69,17 +67,19 @@ void PipelineState::set_texture(unsigned binding, const Texture *tex, const Samp } } -void PipelineState::set_uniform_block(int binding, const UniformBlock *block) +void PipelineState::set_vertex_setup(const VertexSetup *s) { - auto i = lower_bound_member(uniform_blocks, binding, &BoundUniformBlock::binding); - if(i==uniform_blocks.end() || i->binding!=binding) - i = uniform_blocks.insert(i, BoundUniformBlock(binding)); - if(block!=i->block || binding<0) - { - i->block = block; - i->changed = true; - changes |= UNIFORMS; - } + set(vertex_setup, s, VERTEX_SETUP); +} + +void PipelineState::set_front_face(FaceWinding w) +{ + set(front_face, w, FACE_CULL); +} + +void PipelineState::set_face_cull(CullMode c) +{ + set(face_cull, c, FACE_CULL); } void PipelineState::set_depth_test(const DepthTest *dt)