]> git.tdb.fi Git - libs/gl.git/blobdiff - source/materials/rendermethod.h
Move blend state from Sequence::Step to RenderMethod
[libs/gl.git] / source / materials / rendermethod.h
index 723aa5a25733c980c85d6db62e06eb1bc4d04669..94f716a41c871d4705f76bc585ad493087379fa6 100644 (file)
@@ -3,6 +3,7 @@
 
 #include <msp/core/refptr.h>
 #include <msp/datafile/objectloader.h>
+#include "blend.h"
 #include "cullface.h"
 #include "material.h"
 
@@ -40,6 +41,8 @@ public:
        private:
                virtual void finish();
 
+               void blend();
+               void blend_factors(BlendFactor, BlendFactor);
                void material_inline();
                void material(const std::string &);
                void shader(const std::string &);
@@ -80,6 +83,7 @@ private:
        std::string material_slot;
        std::vector<TextureSlot> textures;
        CullMode face_cull = CULL_BACK;
+       Blend blend;
        bool receive_shadows = false;
        bool image_based_lighting = false;
 
@@ -98,6 +102,8 @@ public:
        Tag get_texture_tag(const std::string &) const;
        void set_face_cull(CullMode);
        CullMode get_face_cull() const { return face_cull; }
+       void set_blend(const Blend &);
+       const Blend &get_blend() const { return blend; }
        void set_receive_shadows(bool);
        bool get_receive_shadows() const { return receive_shadows; }
        void set_image_based_lighting(bool);