1 #ifndef MSP_GL_TECHNIQUE_H_
2 #define MSP_GL_TECHNIQUE_H_
4 #include "renderpass.h"
14 Ties multiple tagged render passes together.
19 class Loader: public Msp::DataFile::CollectionObjectLoader<Technique>
23 Loader(Technique &, Collection &);
27 void inherit(const std::string &);
28 void pass(const std::string &);
32 class InheritLoader: public Msp::DataFile::CollectionObjectLoader<Technique>
35 InheritLoader(Technique &, Collection &);
38 void material(const std::string &, const std::string &);
39 void texture(const std::string &, const std::string &);
43 typedef std::map<Tag, RenderPass> PassMap;
49 RenderPass &add_pass(const GL::Tag &);
50 bool has_pass(const GL::Tag &) const;
51 const RenderPass &get_pass(const GL::Tag &) const;
52 const PassMap &get_passes() const { return passes; }
53 void replace_texture(const std::string &, const Texture &);
54 bool has_shaders() const;