From: havoc <havoc@d7cf8633-e32d-0410-b094-e92efae38249>
Date: Fri, 22 Aug 2008 21:48:45 +0000 (+0000)
Subject: added shader keywords dpshadow and dpnoshadow (no parameters), these
X-Git-Tag: xonotic-v0.1.0preview~2119
X-Git-Url: https://git.rm.cloudns.org/?a=commitdiff_plain;h=f8598963f1bd0876da5680f8cc39d889067f1678;p=xonotic%2Fdarkplaces.git

added shader keywords dpshadow and dpnoshadow (no parameters), these
modify the shadowing properties of a mesh, regardless of its other
properties


git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@8465 d7cf8633-e32d-0410-b094-e92efae38249
---

diff --git a/model_shared.c b/model_shared.c
index 2df33c9c..7de60096 100644
--- a/model_shared.c
+++ b/model_shared.c
@@ -1582,6 +1582,10 @@ void Mod_LoadQ3Shaders(void)
 					else
 						Con_DPrintf("%s parsing warning: unknown surfaceparm \"%s\"\n", search->filenames[fileindex], parameter[1]);
 				}
+				else if (!strcasecmp(parameter[0], "dpshadow"))
+					shader.dpshadow = true;
+				else if (!strcasecmp(parameter[0], "dpnoshadow"))
+					shader.dpnoshadow = true;
 				else if (!strcasecmp(parameter[0], "sky") && numparameters >= 2)
 				{
 					// some q3 skies don't have the sky parm set
@@ -1832,6 +1836,10 @@ nothing                GL_ZERO GL_ONE
 				}
 			}
 		}
+		if (shader->dpshadow)
+			texture->basematerialflags &= ~MATERIALFLAG_NOSHADOW;
+		if (shader->dpnoshadow)
+			texture->basematerialflags |= MATERIALFLAG_NOSHADOW;
 		memcpy(texture->deforms, shader->deforms, sizeof(texture->deforms));
 		texture->reflectmin = shader->reflectmin;
 		texture->reflectmax = shader->reflectmax;