diff options
Diffstat (limited to 'src/model')
-rw-r--r-- | src/model/material.cc | 9 | ||||
-rw-r--r-- | src/model/material.h | 2 |
2 files changed, 8 insertions, 3 deletions
diff --git a/src/model/material.cc b/src/model/material.cc index 56bb3fc..b76be02 100644 --- a/src/model/material.cc +++ b/src/model/material.cc @@ -50,7 +50,7 @@ void Material::print() } else if (flags() & Primary) { con_print << "entity "; } - + if (flags() & Bright) { con_print << "bright "; } @@ -71,7 +71,10 @@ void Material::print() } if (flags() & Origin) { con_print << "origin "; - } + } + if (flags() & Decal) { + con_print << "decal "; + } } con_print << std::endl; @@ -243,6 +246,8 @@ void Material::load_shader(const std::string &shadername) material->set_flags(Clip); } else if (firstword.compare("origin") == 0) { material->set_flags(Origin); + } else if (firstword.compare("decal") == 0) { + material->set_flags(Decal); } else if (firstword.compare("qer_editorimage") == 0) { // keyword qer_editorimage is ignored continue; diff --git a/src/model/material.h b/src/model/material.h index 1674e46..b128954 100644 --- a/src/model/material.h +++ b/src/model/material.h @@ -24,7 +24,7 @@ public: typedef void(* LoaderFuncPtr)(Material *); /// surface flags - enum SurfaceFlags { None = 0, Primary = 1, Secondary = 2, Tertiary = 3, Bright = 4, Engine = 8, Environment = 16, Texture = 32, Ignore = 64, Clip = 128, Origin = 256}; + enum SurfaceFlags { None = 0, Primary = 1, Secondary = 2, Tertiary = 3, Bright = 4, Engine = 8, Environment = 16, Texture = 32, Ignore = 64, Clip = 128, Origin = 256, Decal = 512 }; /// type definition for the material registry typedef std::map<std::string, Material *> Registry; |