rest of virtuals removed

virtuals removed and replaced with override where necessary on the rest of the code base, clang-tidy to the rescue.
This commit is contained in:
marauder2k7 2024-03-18 18:40:22 +00:00
parent efbe5e90f5
commit 2b295fb7f0
454 changed files with 4162 additions and 4156 deletions

View file

@ -50,19 +50,19 @@ public:
//****************************************************************************
// Accu Texture
//****************************************************************************
virtual void processVert( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd );
void processVert( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd ) override;
virtual void processPix( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd );
void processPix( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd ) override;
void getAccuVec( MultiLine *meta, LangElement *accuVec );
Var* addOutAccuVec( Vector<ShaderComponent*> &componentList, MultiLine *meta );
virtual Material::BlendOp getBlendOp(){ return Material::LerpAlpha; }
Material::BlendOp getBlendOp() override{ return Material::LerpAlpha; }
virtual Resources getResources( const MaterialFeatureData &fd )
Resources getResources( const MaterialFeatureData &fd ) override
{
Resources res;
res.numTex = 1;
@ -70,12 +70,12 @@ public:
return res;
}
virtual void setTexData( Material::StageData &stageDat,
void setTexData( Material::StageData &stageDat,
const MaterialFeatureData &fd,
RenderPassData &passData,
U32 &texIndex );
U32 &texIndex ) override;
virtual String getName()
String getName() override
{
return "Accu Texture";
}
@ -84,7 +84,7 @@ public:
class AccuScaleFeature : public ShaderFeatureGLSL
{
public:
virtual void processPix( Vector<ShaderComponent*> &componentList, const MaterialFeatureData &fd )
void processPix( Vector<ShaderComponent*> &componentList, const MaterialFeatureData &fd ) override
{
// Find the constant value
Var *accuScale = (Var *)( LangElement::find("accuScale") );
@ -98,13 +98,13 @@ public:
}
}
virtual String getName() { return "Accu Scale"; }
String getName() override { return "Accu Scale"; }
};
class AccuDirectionFeature : public ShaderFeatureGLSL
{
public:
virtual void processPix( Vector<ShaderComponent*> &componentList, const MaterialFeatureData &fd )
void processPix( Vector<ShaderComponent*> &componentList, const MaterialFeatureData &fd ) override
{
// Find the constant value
Var *accuDirection = (Var *)( LangElement::find("accuDirection") );
@ -118,13 +118,13 @@ public:
}
}
virtual String getName() { return "Accu Direction"; }
String getName() override { return "Accu Direction"; }
};
class AccuStrengthFeature : public ShaderFeatureGLSL
{
public:
virtual void processPix( Vector<ShaderComponent*> &componentList, const MaterialFeatureData &fd )
void processPix( Vector<ShaderComponent*> &componentList, const MaterialFeatureData &fd ) override
{
// Find the constant value
Var *accuStrength = (Var *)( LangElement::find("accuStrength") );
@ -138,13 +138,13 @@ public:
}
}
virtual String getName() { return "Accu Strength"; }
String getName() override { return "Accu Strength"; }
};
class AccuCoverageFeature : public ShaderFeatureGLSL
{
public:
virtual void processPix( Vector<ShaderComponent*> &componentList, const MaterialFeatureData &fd )
void processPix( Vector<ShaderComponent*> &componentList, const MaterialFeatureData &fd ) override
{
// Find the constant value
Var *accuCoverage = (Var *)( LangElement::find("accuCoverage") );
@ -158,14 +158,14 @@ public:
}
}
virtual String getName() { return "Accu Coverage"; }
String getName() override { return "Accu Coverage"; }
};
class AccuSpecularFeature : public ShaderFeatureGLSL
{
public:
virtual void processPix( Vector<ShaderComponent*> &componentList, const MaterialFeatureData &fd )
void processPix( Vector<ShaderComponent*> &componentList, const MaterialFeatureData &fd ) override
{
// Find the constant value
Var *accuSpecular = (Var *)( LangElement::find("accuSpecular") );
@ -179,7 +179,7 @@ public:
}
}
virtual String getName() { return "Accu Specular"; }
String getName() override { return "Accu Specular"; }
};
#endif

View file

@ -43,17 +43,17 @@ class BumpFeatGLSL : public ShaderFeatureGLSL
public:
// ShaderFeatureGLSL
virtual void processVert( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd );
virtual void processPix( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd );
virtual Material::BlendOp getBlendOp(){ return Material::LerpAlpha; }
virtual Resources getResources( const MaterialFeatureData &fd );
virtual void setTexData( Material::StageData &stageDat,
void processVert( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd ) override;
void processPix( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd ) override;
Material::BlendOp getBlendOp() override{ return Material::LerpAlpha; }
Resources getResources( const MaterialFeatureData &fd ) override;
void setTexData( Material::StageData &stageDat,
const MaterialFeatureData &fd,
RenderPassData &passData,
U32 &texIndex );
virtual String getName() { return "Bumpmap"; }
U32 &texIndex ) override;
String getName() override { return "Bumpmap"; }
};
@ -75,16 +75,16 @@ public:
ParallaxFeatGLSL();
// ShaderFeatureGLSL
virtual void processVert( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd );
virtual void processPix( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd );
virtual Resources getResources( const MaterialFeatureData &fd );
virtual void setTexData( Material::StageData &stageDat,
void processVert( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd ) override;
void processPix( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd ) override;
Resources getResources( const MaterialFeatureData &fd ) override;
void setTexData( Material::StageData &stageDat,
const MaterialFeatureData &fd,
RenderPassData &passData,
U32 &texIndex );
virtual String getName() { return "Parallax"; }
U32 &texIndex ) override;
String getName() override { return "Parallax"; }
};
@ -95,12 +95,12 @@ class NormalsOutFeatGLSL : public ShaderFeatureGLSL
public:
// ShaderFeatureGLSL
virtual void processVert( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd );
virtual void processPix( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd );
virtual Material::BlendOp getBlendOp(){ return Material::LerpAlpha; }
virtual String getName() { return "NormalsOut"; }
void processVert( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd ) override;
void processPix( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd ) override;
Material::BlendOp getBlendOp() override{ return Material::LerpAlpha; }
String getName() override { return "NormalsOut"; }
};
#endif // _BUMP_GLSL_H_

View file

@ -94,15 +94,15 @@ public:
//****************************************************************************
// Accu Texture
//****************************************************************************
virtual void processVert(Vector<ShaderComponent*>& componentList,
const MaterialFeatureData& fd);
void processVert(Vector<ShaderComponent*>& componentList,
const MaterialFeatureData& fd) override;
virtual void processPix(Vector<ShaderComponent*>& componentList,
const MaterialFeatureData& fd);
void processPix(Vector<ShaderComponent*>& componentList,
const MaterialFeatureData& fd) override;
virtual Material::BlendOp getBlendOp() { return Material::LerpAlpha; }
Material::BlendOp getBlendOp() override { return Material::LerpAlpha; }
virtual Resources getResources(const MaterialFeatureData& fd)
Resources getResources(const MaterialFeatureData& fd) override
{
Resources res;
res.numTex = 1;
@ -110,12 +110,12 @@ public:
return res;
}
virtual void setTexData(Material::StageData& stageDat,
void setTexData(Material::StageData& stageDat,
const MaterialFeatureData& fd,
RenderPassData& passData,
U32& texIndex);
U32& texIndex) override;
virtual String getName()
String getName() override
{
return mOwner->getName();
}

View file

@ -34,8 +34,8 @@ public:
DebugVizGLSL();
virtual void processPix(Vector<ShaderComponent*>& componentList,
const MaterialFeatureData& fd);
void processPix(Vector<ShaderComponent*>& componentList,
const MaterialFeatureData& fd) override;
virtual String getName() { return "Debug Viz"; }
String getName() override { return "Debug Viz"; }
};

View file

@ -35,12 +35,12 @@ class EyeSpaceDepthOutGLSL : public ShaderFeatureGLSL
public:
// ShaderFeature
virtual void processVert( Vector<ShaderComponent*> &componentList, const MaterialFeatureData &fd );
virtual void processPix( Vector<ShaderComponent*> &componentList, const MaterialFeatureData &fd );
virtual Resources getResources( const MaterialFeatureData &fd );
virtual String getName() { return "Eye Space Depth (Out)"; }
virtual Material::BlendOp getBlendOp() { return Material::None; }
virtual const char* getOutputVarName() const { return "eyeSpaceDepth"; }
void processVert( Vector<ShaderComponent*> &componentList, const MaterialFeatureData &fd ) override;
void processPix( Vector<ShaderComponent*> &componentList, const MaterialFeatureData &fd ) override;
Resources getResources( const MaterialFeatureData &fd ) override;
String getName() override { return "Eye Space Depth (Out)"; }
Material::BlendOp getBlendOp() override { return Material::None; }
const char* getOutputVarName() const override { return "eyeSpaceDepth"; }
};
@ -49,12 +49,12 @@ class DepthOutGLSL : public ShaderFeatureGLSL
public:
// ShaderFeature
virtual void processVert( Vector<ShaderComponent*> &componentList, const MaterialFeatureData &fd );
virtual void processPix( Vector<ShaderComponent*> &componentList, const MaterialFeatureData &fd );
virtual Resources getResources( const MaterialFeatureData &fd );
virtual String getName() { return "Depth (Out)"; }
virtual Material::BlendOp getBlendOp() { return Material::None; }
virtual const char* getOutputVarName() const { return "IN_depth"; }
void processVert( Vector<ShaderComponent*> &componentList, const MaterialFeatureData &fd ) override;
void processPix( Vector<ShaderComponent*> &componentList, const MaterialFeatureData &fd ) override;
Resources getResources( const MaterialFeatureData &fd ) override;
String getName() override { return "Depth (Out)"; }
Material::BlendOp getBlendOp() override { return Material::None; }
const char* getOutputVarName() const override { return "IN_depth"; }
};
#endif // _DEPTH_GLSL_H_

View file

@ -37,11 +37,11 @@ class ParaboloidVertTransformGLSL : public ShaderFeatureGLSL
public:
// ShaderFeature
virtual void processVert( Vector<ShaderComponent*> &componentList, const MaterialFeatureData &fd );
virtual void processPix( Vector<ShaderComponent*> &componentList, const MaterialFeatureData &fd );
virtual Resources getResources( const MaterialFeatureData &fd );
virtual String getName() { return "Paraboloid Vert Transform"; }
virtual Material::BlendOp getBlendOp() { return Material::None; }
void processVert( Vector<ShaderComponent*> &componentList, const MaterialFeatureData &fd ) override;
void processPix( Vector<ShaderComponent*> &componentList, const MaterialFeatureData &fd ) override;
Resources getResources( const MaterialFeatureData &fd ) override;
String getName() override { return "Paraboloid Vert Transform"; }
Material::BlendOp getBlendOp() override { return Material::None; }
};

View file

@ -33,46 +33,46 @@ class VertPixelConnectorGLSL : public ShaderConnector
public:
// ShaderConnector
virtual Var* getElement( RegisterType type,
Var* getElement( RegisterType type,
U32 numElements = 1,
U32 numRegisters = -1 );
virtual void setName( const char *newName );
virtual void reset();
virtual void sortVars();
U32 numRegisters = -1 ) override;
void setName( const char *newName ) override;
void reset() override;
void sortVars() override;
virtual void print( Stream &stream) {} // TODO OPENGL temporal fix for dedicated build on Linux
virtual void print( Stream &stream, bool isVerterShader );
void print( Stream &stream, bool isVerterShader ) override;
void printStructDefines( Stream &stream, bool in );
virtual void printOnMain( Stream &stream, bool isVerterShader );
void printOnMain( Stream &stream, bool isVerterShader ) override;
};
class AppVertConnectorGLSL : public ShaderConnector
{
public:
virtual Var* getElement( RegisterType type,
Var* getElement( RegisterType type,
U32 numElements = 1,
U32 numRegisters = -1 );
virtual void setName( const char *newName );
virtual void reset();
virtual void sortVars();
U32 numRegisters = -1 ) override;
void setName( const char *newName ) override;
void reset() override;
void sortVars() override;
virtual void print( Stream &stream) {} // TODO OPENGL temporal fix for dedicated build on Linux
virtual void print( Stream &stream, bool isVerterShader );
virtual void printOnMain( Stream &stream, bool isVerterShader );
void print( Stream &stream, bool isVerterShader ) override;
void printOnMain( Stream &stream, bool isVerterShader ) override;
};
class VertexParamsDefGLSL : public ParamsDef
{
public:
virtual void print( Stream &stream, bool isVerterShader );
void print( Stream &stream, bool isVerterShader ) override;
};
class PixelParamsDefGLSL : public ParamsDef
{
public:
virtual void print( Stream &stream, bool isVerterShader );
void print( Stream &stream, bool isVerterShader ) override;
};
#endif // _SHADERCOMP_GLSL_H_

View file

@ -140,10 +140,10 @@ public:
Var* getInWorldNormal(Vector<ShaderComponent*>& componentList);
// ShaderFeature
Var* getVertTexCoord( const String &name );
LangElement* setupTexSpaceMat( Vector<ShaderComponent*> &componentList, Var **texSpaceMat );
LangElement* assignColor( LangElement *elem, Material::BlendOp blend, LangElement *lerpElem = NULL, ShaderFeature::OutputTarget outputTarget = ShaderFeature::DefaultTarget );
LangElement* expandNormalMap( LangElement *sampleNormalOp, LangElement *normalDecl, LangElement *normalVar, const MaterialFeatureData &fd );
Var* getVertTexCoord( const String &name ) override;
LangElement* setupTexSpaceMat( Vector<ShaderComponent*> &componentList, Var **texSpaceMat ) override;
LangElement* assignColor( LangElement *elem, Material::BlendOp blend, LangElement *lerpElem = NULL, ShaderFeature::OutputTarget outputTarget = ShaderFeature::DefaultTarget ) override;
LangElement* expandNormalMap( LangElement *sampleNormalOp, LangElement *normalDecl, LangElement *normalVar, const MaterialFeatureData &fd ) override;
};
@ -157,7 +157,7 @@ public:
: mName( name )
{}
virtual String getName() { return mName; }
String getName() override { return mName; }
};
class RenderTargetZeroGLSL : public ShaderFeatureGLSL
@ -175,12 +175,12 @@ public:
mFeatureName = buffer;
}
virtual String getName() { return mFeatureName; }
String getName() override { return mFeatureName; }
virtual void processPix( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd );
void processPix( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd ) override;
virtual U32 getOutputTargets( const MaterialFeatureData &fd ) const { return mOutputTargetMask; }
U32 getOutputTargets( const MaterialFeatureData &fd ) const override { return mOutputTargetMask; }
};
@ -188,20 +188,20 @@ public:
class VertPositionGLSL : public ShaderFeatureGLSL
{
public:
virtual void processVert( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd );
void processVert( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd ) override;
virtual String getName()
String getName() override
{
return "Vert Position";
}
virtual void determineFeature( Material *material,
void determineFeature( Material *material,
const GFXVertexFormat *vertexFormat,
U32 stageNum,
const FeatureType &type,
const FeatureSet &features,
MaterialFeatureData *outFeatureData );
MaterialFeatureData *outFeatureData ) override;
};
@ -218,17 +218,17 @@ public:
RTLightingFeatGLSL();
virtual void processVert( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd );
void processVert( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd ) override;
virtual void processPix( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd );
void processPix( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd ) override;
virtual Material::BlendOp getBlendOp(){ return Material::None; }
Material::BlendOp getBlendOp() override{ return Material::None; }
virtual Resources getResources( const MaterialFeatureData &fd );
Resources getResources( const MaterialFeatureData &fd ) override;
virtual String getName()
String getName() override
{
return "RT Lighting";
}
@ -244,25 +244,25 @@ protected:
ShaderIncludeDependency mTorqueDep;
public:
DiffuseMapFeatGLSL();
virtual void processVert( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd );
void processVert( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd ) override;
virtual void processPix( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd );
void processPix( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd ) override;
virtual U32 getOutputTargets(const MaterialFeatureData &fd) const;
U32 getOutputTargets(const MaterialFeatureData &fd) const override;
virtual Material::BlendOp getBlendOp(){ return Material::LerpAlpha; }
Material::BlendOp getBlendOp() override{ return Material::LerpAlpha; }
virtual Resources getResources( const MaterialFeatureData &fd );
Resources getResources( const MaterialFeatureData &fd ) override;
// Sets textures and texture flags for current pass
virtual void setTexData( Material::StageData &stageDat,
void setTexData( Material::StageData &stageDat,
const MaterialFeatureData &fd,
RenderPassData &passData,
U32 &texIndex );
U32 &texIndex ) override;
virtual String getName()
String getName() override
{
return "Base Texture";
}
@ -273,23 +273,23 @@ public:
class OverlayTexFeatGLSL : public ShaderFeatureGLSL
{
public:
virtual void processVert( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd );
void processVert( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd ) override;
virtual void processPix( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd );
void processPix( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd ) override;
virtual Material::BlendOp getBlendOp(){ return Material::LerpAlpha; }
Material::BlendOp getBlendOp() override{ return Material::LerpAlpha; }
virtual Resources getResources( const MaterialFeatureData &fd );
Resources getResources( const MaterialFeatureData &fd ) override;
// Sets textures and texture flags for current pass
virtual void setTexData( Material::StageData &stageDat,
void setTexData( Material::StageData &stageDat,
const MaterialFeatureData &fd,
RenderPassData &passData,
U32 &texIndex );
U32 &texIndex ) override;
virtual String getName()
String getName() override
{
return "Overlay Texture";
}
@ -300,14 +300,14 @@ public:
class DiffuseFeatureGLSL : public ShaderFeatureGLSL
{
public:
virtual void processPix( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd );
void processPix( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd ) override;
virtual Material::BlendOp getBlendOp(){ return Material::None; }
Material::BlendOp getBlendOp() override{ return Material::None; }
virtual U32 getOutputTargets(const MaterialFeatureData &fd) const;
U32 getOutputTargets(const MaterialFeatureData &fd) const override;
virtual String getName()
String getName() override
{
return "Diffuse Color";
}
@ -318,14 +318,14 @@ class DiffuseVertColorFeatureGLSL : public ShaderFeatureGLSL
{
public:
virtual void processVert( Vector< ShaderComponent* >& componentList,
const MaterialFeatureData& fd );
virtual void processPix( Vector< ShaderComponent* >&componentList,
const MaterialFeatureData& fd );
void processVert( Vector< ShaderComponent* >& componentList,
const MaterialFeatureData& fd ) override;
void processPix( Vector< ShaderComponent* >&componentList,
const MaterialFeatureData& fd ) override;
virtual Material::BlendOp getBlendOp(){ return Material::None; }
Material::BlendOp getBlendOp() override{ return Material::None; }
virtual String getName()
String getName() override
{
return "Diffuse Vertex Color";
}
@ -335,28 +335,28 @@ public:
class LightmapFeatGLSL : public ShaderFeatureGLSL
{
public:
virtual void processVert( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd );
void processVert( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd ) override;
virtual void processPix( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd );
void processPix( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd ) override;
virtual Material::BlendOp getBlendOp(){ return Material::LerpAlpha; }
Material::BlendOp getBlendOp() override{ return Material::LerpAlpha; }
virtual Resources getResources( const MaterialFeatureData &fd );
Resources getResources( const MaterialFeatureData &fd ) override;
// Sets textures and texture flags for current pass
virtual void setTexData( Material::StageData &stageDat,
void setTexData( Material::StageData &stageDat,
const MaterialFeatureData &fd,
RenderPassData &passData,
U32 &texIndex );
U32 &texIndex ) override;
virtual String getName()
String getName() override
{
return "Lightmap";
}
virtual U32 getOutputTargets( const MaterialFeatureData &fd ) const;
U32 getOutputTargets( const MaterialFeatureData &fd ) const override;
};
@ -364,28 +364,28 @@ public:
class TonemapFeatGLSL : public ShaderFeatureGLSL
{
public:
virtual void processVert( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd );
void processVert( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd ) override;
virtual void processPix( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd );
void processPix( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd ) override;
virtual Material::BlendOp getBlendOp(){ return Material::LerpAlpha; }
Material::BlendOp getBlendOp() override{ return Material::LerpAlpha; }
virtual Resources getResources( const MaterialFeatureData &fd );
Resources getResources( const MaterialFeatureData &fd ) override;
// Sets textures and texture flags for current pass
virtual void setTexData( Material::StageData &stageDat,
void setTexData( Material::StageData &stageDat,
const MaterialFeatureData &fd,
RenderPassData &passData,
U32 &texIndex );
U32 &texIndex ) override;
virtual String getName()
String getName() override
{
return "Tonemap";
}
virtual U32 getOutputTargets( const MaterialFeatureData &fd ) const;
U32 getOutputTargets( const MaterialFeatureData &fd ) const override;
};
@ -393,20 +393,20 @@ public:
class VertLitGLSL : public ShaderFeatureGLSL
{
public:
virtual void processVert( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd );
void processVert( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd ) override;
virtual void processPix( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd );
void processPix( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd ) override;
virtual Material::BlendOp getBlendOp(){ return Material::None; }
Material::BlendOp getBlendOp() override{ return Material::None; }
virtual String getName()
String getName() override
{
return "Vert Lit";
}
virtual U32 getOutputTargets( const MaterialFeatureData &fd ) const;
U32 getOutputTargets( const MaterialFeatureData &fd ) const override;
};
@ -414,23 +414,23 @@ public:
class DetailFeatGLSL : public ShaderFeatureGLSL
{
public:
virtual void processVert( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd );
void processVert( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd ) override;
virtual void processPix( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd );
void processPix( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd ) override;
virtual Resources getResources( const MaterialFeatureData &fd );
Resources getResources( const MaterialFeatureData &fd ) override;
virtual Material::BlendOp getBlendOp(){ return Material::Mul; }
Material::BlendOp getBlendOp() override{ return Material::Mul; }
// Sets textures and texture flags for current pass
virtual void setTexData( Material::StageData &stageDat,
void setTexData( Material::StageData &stageDat,
const MaterialFeatureData &fd,
RenderPassData &passData,
U32 &texIndex );
U32 &texIndex ) override;
virtual String getName()
String getName() override
{
return "Detail";
}
@ -441,21 +441,21 @@ public:
class ReflectCubeFeatGLSL : public ShaderFeatureGLSL
{
public:
virtual void processVert( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd );
void processVert( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd ) override;
virtual void processPix( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd );
void processPix( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd ) override;
virtual Resources getResources( const MaterialFeatureData &fd );
Resources getResources( const MaterialFeatureData &fd ) override;
// Sets textures and texture flags for current pass
virtual void setTexData( Material::StageData &stageDat,
void setTexData( Material::StageData &stageDat,
const MaterialFeatureData &fd,
RenderPassData &passData,
U32 &texIndex );
U32 &texIndex ) override;
virtual String getName()
String getName() override
{
return "Reflect Cube";
}
@ -472,17 +472,17 @@ protected:
public:
FogFeatGLSL();
virtual void processVert( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd );
void processVert( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd ) override;
virtual void processPix( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd );
void processPix( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd ) override;
virtual Resources getResources( const MaterialFeatureData &fd );
Resources getResources( const MaterialFeatureData &fd ) override;
virtual Material::BlendOp getBlendOp() { return Material::LerpAlpha; }
Material::BlendOp getBlendOp() override { return Material::LerpAlpha; }
virtual String getName()
String getName() override
{
return "Fog";
}
@ -493,9 +493,9 @@ public:
class TexAnimGLSL : public ShaderFeatureGLSL
{
public:
virtual Material::BlendOp getBlendOp() { return Material::None; }
Material::BlendOp getBlendOp() override { return Material::None; }
virtual String getName()
String getName() override
{
return "Texture Animation";
}
@ -513,17 +513,17 @@ public:
VisibilityFeatGLSL();
virtual void processVert( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd );
void processVert( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd ) override;
virtual void processPix( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd );
void processPix( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd ) override;
virtual Resources getResources( const MaterialFeatureData &fd );
Resources getResources( const MaterialFeatureData &fd ) override;
virtual Material::BlendOp getBlendOp() { return Material::None; }
Material::BlendOp getBlendOp() override { return Material::None; }
virtual String getName()
String getName() override
{
return "Visibility";
}
@ -534,12 +534,12 @@ public:
class AlphaTestGLSL : public ShaderFeatureGLSL
{
public:
virtual void processPix( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd );
void processPix( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd ) override;
virtual Material::BlendOp getBlendOp() { return Material::None; }
Material::BlendOp getBlendOp() override { return Material::None; }
virtual String getName()
String getName() override
{
return "Alpha Test";
}
@ -552,12 +552,12 @@ public:
class GlowMaskGLSL : public ShaderFeatureGLSL
{
public:
virtual void processPix( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd );
void processPix( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd ) override;
virtual Material::BlendOp getBlendOp() { return Material::None; }
Material::BlendOp getBlendOp() override { return Material::None; }
virtual String getName()
String getName() override
{
return "Glow Mask";
}
@ -578,12 +578,12 @@ public:
HDROutGLSL();
virtual void processPix( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd );
void processPix( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd ) override;
virtual Material::BlendOp getBlendOp() { return Material::None; }
Material::BlendOp getBlendOp() override { return Material::None; }
virtual String getName() { return "HDR Output"; }
String getName() override { return "HDR Output"; }
};
///
@ -597,35 +597,35 @@ public:
FoliageFeatureGLSL();
virtual void processVert( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd );
void processVert( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd ) override;
virtual void processPix( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd );
void processPix( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd ) override;
virtual String getName()
String getName() override
{
return "Foliage Feature";
}
virtual void determineFeature( Material *material,
void determineFeature( Material *material,
const GFXVertexFormat *vertexFormat,
U32 stageNum,
const FeatureType &type,
const FeatureSet &features,
MaterialFeatureData *outFeatureData );
MaterialFeatureData *outFeatureData ) override;
virtual ShaderFeatureConstHandles* createConstHandles( GFXShader *shader, SimObject *userObject );
ShaderFeatureConstHandles* createConstHandles( GFXShader *shader, SimObject *userObject ) override;
};
class ParticleNormalFeatureGLSL : public ShaderFeatureGLSL
{
public:
virtual void processVert( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd );
void processVert( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd ) override;
virtual String getName()
String getName() override
{
return "Particle Normal Generation Feature";
}
@ -645,20 +645,20 @@ public:
ImposterVertFeatureGLSL();
virtual void processVert( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd );
void processVert( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd ) override;
virtual void processPix( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd );
void processPix( Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd ) override;
virtual String getName() { return "Imposter Vert"; }
String getName() override { return "Imposter Vert"; }
virtual void determineFeature( Material *material,
void determineFeature( Material *material,
const GFXVertexFormat *vertexFormat,
U32 stageNum,
const FeatureType &type,
const FeatureSet &features,
MaterialFeatureData *outFeatureData );
MaterialFeatureData *outFeatureData ) override;
};
/// Hardware Skinning
@ -668,10 +668,10 @@ protected:
public:
virtual void processVert(Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd);
void processVert(Vector<ShaderComponent*> &componentList,
const MaterialFeatureData &fd) override;
virtual String getName() { return "Hardware Skinning"; }
String getName() override { return "Hardware Skinning"; }
};
/// Reflection Probes
@ -683,21 +683,21 @@ protected:
public:
ReflectionProbeFeatGLSL();
virtual void processVert(Vector<ShaderComponent*>& componentList,
const MaterialFeatureData& fd);
void processVert(Vector<ShaderComponent*>& componentList,
const MaterialFeatureData& fd) override;
virtual void processPix(Vector<ShaderComponent*>& componentList,
const MaterialFeatureData& fd);
void processPix(Vector<ShaderComponent*>& componentList,
const MaterialFeatureData& fd) override;
virtual Resources getResources(const MaterialFeatureData& fd);
Resources getResources(const MaterialFeatureData& fd) override;
// Sets textures and texture flags for current pass
virtual void setTexData(Material::StageData& stageDat,
void setTexData(Material::StageData& stageDat,
const MaterialFeatureData& fd,
RenderPassData& passData,
U32& texIndex);
U32& texIndex) override;
virtual String getName()
String getName() override
{
return "Reflection Probes";
}

View file

@ -36,12 +36,12 @@ public:
ShaderGenPrinterGLSL() { for (int i = 0; i < 3; i++) extraRTs[i] = false; }
// ShaderGenPrinter
virtual void printShaderHeader(Stream& stream);
virtual void printMainComment(Stream& stream);
virtual void printVertexShaderCloser(Stream& stream);
virtual void printPixelShaderOutputStruct(Stream& stream, const MaterialFeatureData &featureData);
virtual void printPixelShaderCloser(Stream& stream);
virtual void printLine(Stream& stream, const String& line);
void printShaderHeader(Stream& stream) override;
void printMainComment(Stream& stream) override;
void printVertexShaderCloser(Stream& stream) override;
void printPixelShaderOutputStruct(Stream& stream, const MaterialFeatureData &featureData) override;
void printPixelShaderCloser(Stream& stream) override;
void printLine(Stream& stream, const String& line) override;
};
class ShaderGenComponentFactoryGLSL : public ShaderGenComponentFactory
@ -53,10 +53,10 @@ public:
static const char* typeToString( GFXDeclType type );
// ShaderGenComponentFactory
virtual ShaderComponent* createVertexInputConnector( const GFXVertexFormat &vertexFormat );
virtual ShaderComponent* createVertexPixelConnector();
virtual ShaderComponent* createVertexParamsDef();
virtual ShaderComponent* createPixelParamsDef();
ShaderComponent* createVertexInputConnector( const GFXVertexFormat &vertexFormat ) override;
ShaderComponent* createVertexPixelConnector() override;
ShaderComponent* createVertexParamsDef() override;
ShaderComponent* createPixelParamsDef() override;
};
#endif