X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fmaterials%2Frenderpass.h;h=f02303bc8865f91632723bfe160143dd201dabf8;hb=82282de52e8e8f3bbafefaf92bf76f53f2c2495e;hp=8a69ad12afcc5397739781e91242a8f79cfecc59;hpb=6f39983060a27634c012f66c82fea0d09fea9774;p=libs%2Fgl.git diff --git a/source/materials/renderpass.h b/source/materials/renderpass.h index 8a69ad12..f02303bc 100644 --- a/source/materials/renderpass.h +++ b/source/materials/renderpass.h @@ -24,12 +24,16 @@ class RenderPass public: class Loader: public DataFile::CollectionObjectLoader { + private: + static ActionMap shared_actions; + public: Loader(RenderPass &); Loader(RenderPass &, Collection &); private: - void init(); + virtual void init_actions(); + virtual void finish(); static std::string get_shader_name(const std::string &); @@ -75,14 +79,14 @@ private: std::string material_slot; std::vector textures; bool back_faces; + bool receive_shadows; public: RenderPass(); private: - void finalize_material(DataFile::Collection *); void maybe_create_material_shader(DataFile::Collection *); - void ensure_private_shader_data(); + void set_material_textures(); public: void set_shader_program(const Program *, const ProgramData *); @@ -99,8 +103,12 @@ public: DEPRECATED int get_texture_index(const std::string &) const; void set_back_faces(bool); bool get_back_faces() const { return back_faces; } + void set_receive_shadows(bool); + bool get_receive_shadows() const { return receive_shadows; } void apply(Renderer &) const; + + void set_debug_name(const std::string &); }; } // namespace GL