QER_NOCARVE = 1 << 1,
QER_NODRAW = 1 << 2,
QER_NONSOLID = 1 << 3,
- QER_WATER = 1 << 4,
- QER_LAVA = 1 << 5,
- QER_FOG = 1 << 6,
- QER_ALPHATEST = 1 << 7,
- QER_CULL = 1 << 8,
- QER_AREAPORTAL = 1 << 9,
- QER_CLIP = 1 << 10,
- QER_BOTCLIP = 1 << 11,
+ QER_LIQUID = 1 << 4,
+ QER_FOG = 1 << 5,
+ QER_ALPHATEST = 1 << 6,
+ QER_CULL = 1 << 7,
+ QER_AREAPORTAL = 1 << 8,
+ QER_CLIP = 1 << 9,
+ QER_BOTCLIP = 1 << 10,
};
struct qtexture_t;
typedef Callback<void(const ShaderLayer&)> ShaderLayerCallback;
-
class IShader
{
public:
virtual qtexture_t* getSpecular() const = 0;
// get shader name
virtual const char* getName() const = 0;
+virtual const char* getWadName() const = 0;
+virtual void setWadName( const char* name ) = 0;
virtual bool IsInUse() const = 0;
virtual void SetInUse( bool bInUse ) = 0;
// get the editor flags (QER_NOCARVE QER_TRANS)
virtual const char* getShaderFileName() const = 0;
virtual const ShaderLayer* firstLayer() const = 0;
-virtual void forEachLayer( const ShaderLayerCallback& layer ) const = 0;
virtual qtexture_t* lightFalloffImage() const = 0;
};
return GlobalShadersModule::getTable();
}
-
#define QERApp_Shader_ForName GlobalShaderSystem().getShaderForName
#define QERApp_ActiveShaders_IteratorBegin GlobalShaderSystem().beginActiveShadersIterator
#define QERApp_ActiveShaders_IteratorAtEnd GlobalShaderSystem().endActiveShadersIterator