X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;ds=sidebyside;f=source%2Fcore%2Fpipelinestate.h;h=9f6795f16ec176d0cb4204354dcd7b4b7a4ad53e;hb=ce3658993ce2f6b7527a04a36a5e1af349c6f2e9;hp=a931e25c406808232cd07809c44d616d15c5a7d4;hpb=2b2676392aff2eb6b38c3e463cc67f4d67a4ef8b;p=libs%2Fgl.git diff --git a/source/core/pipelinestate.h b/source/core/pipelinestate.h index a931e25c..9f6795f1 100644 --- a/source/core/pipelinestate.h +++ b/source/core/pipelinestate.h @@ -12,7 +12,9 @@ class Blend; class BufferBackedUniformBlock; class DefaultUniformBlock; class DepthTest; +class Framebuffer; class Program; +class Rect; class Sampler; class StencilTest; class Texture; @@ -52,9 +54,15 @@ private: UNIFORMS = 32, DEPTH_TEST = 64, STENCIL_TEST = 128, - BLEND = 256 + BLEND = 256, + FRAMEBUFFER = 512, + VIEWPORT = 1024, + SCISSOR = 2048 }; + const Framebuffer *framebuffer; + const Rect *viewport; + const Rect *scissor; const Program *shprog; const VertexSetup *vertex_setup; FaceWinding front_face; @@ -78,6 +86,9 @@ private: template void set(T &, T, unsigned); public: + void set_framebuffer(const Framebuffer *); + void set_viewport(const Rect *); + void set_scissor(const Rect *); void set_shader_program(const Program *); void set_vertex_setup(const VertexSetup *); void set_front_face(FaceWinding);