Merge pull request #1234 from marauder2k9-torque/virtuals-override

Virtuals override
This commit is contained in:
Brian Roberts 2024-03-21 10:43:26 -05:00 committed by GitHub
commit 05a083ca6f
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
710 changed files with 6353 additions and 6324 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

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 ShaderFeatureHLSL
{
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 ShaderFeatureHLSL
{
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 ShaderFeatureHLSL
{
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 ShaderFeatureHLSL
{
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 ShaderFeatureHLSL
{
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 BumpFeatHLSL : public ShaderFeatureHLSL
public:
// ShaderFeatureHLSL
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:
ParallaxFeatHLSL();
// ShaderFeatureHLSL
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 NormalsOutFeatHLSL : public ShaderFeatureHLSL
public:
// ShaderFeatureHLSL
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_HLSL_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:
DebugVizHLSL();
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 EyeSpaceDepthOutHLSL : public ShaderFeatureHLSL
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 DepthOutHLSL : public ShaderFeatureHLSL
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_HLSL_H_

View file

@ -37,11 +37,11 @@ class ParaboloidVertTransformHLSL : public ShaderFeatureHLSL
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

@ -35,40 +35,40 @@ private:
public:
// ShaderConnector
virtual Var* getElement( RegisterType type,
Var* getElement( RegisterType type,
U32 numElements = 1,
U32 numRegisters = -1 );
U32 numRegisters = -1 ) override;
virtual Var* getIndexedElement( U32 index,
RegisterType type,
U32 numElements = 1,
U32 numRegisters = -1 );
virtual void setName( const char *newName );
virtual void reset();
virtual void sortVars();
void setName( const char *newName ) override;
void reset() override;
void sortVars() override;
virtual void print( Stream &stream, bool isVertexShader );
void print( Stream &stream, bool isVertexShader ) override;
};
class ParamsDefHLSL : public ParamsDef
{
protected:
virtual void assignConstantNumbers();
void assignConstantNumbers() override;
};
class VertexParamsDefHLSL : public ParamsDefHLSL
{
public:
virtual void print( Stream &stream, bool isVerterShader );
void print( Stream &stream, bool isVerterShader ) override;
};
class PixelParamsDefHLSL : public ParamsDefHLSL
{
public:
virtual void print( Stream &stream, bool isVerterShader );
void print( Stream &stream, bool isVerterShader ) override;
};
#endif // _SHADERCOMP_HLSL_H_

View file

@ -141,10 +141,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;
};
@ -158,7 +158,7 @@ public:
: mName( name )
{}
virtual String getName() { return mName; }
String getName() override { return mName; }
};
class RenderTargetZeroHLSL : public ShaderFeatureHLSL
@ -176,12 +176,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; }
};
@ -189,23 +189,23 @@ public:
class VertPositionHLSL : public ShaderFeatureHLSL
{
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 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;
};
@ -222,17 +222,17 @@ public:
RTLightingFeatHLSL();
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";
}
@ -248,25 +248,25 @@ protected:
public:
DiffuseMapFeatHLSL();
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";
}
@ -277,23 +277,23 @@ public:
class OverlayTexFeatHLSL : public ShaderFeatureHLSL
{
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";
}
@ -304,13 +304,13 @@ public:
class DiffuseFeatureHLSL : public ShaderFeatureHLSL
{
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;
virtual String getName()
U32 getOutputTargets(const MaterialFeatureData &fd) const override;
String getName() override
{
return "Diffuse Color";
}
@ -321,14 +321,14 @@ class DiffuseVertColorFeatureHLSL : public ShaderFeatureHLSL
{
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";
}
@ -338,28 +338,28 @@ public:
class LightmapFeatHLSL : public ShaderFeatureHLSL
{
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;
};
@ -367,28 +367,28 @@ public:
class TonemapFeatHLSL : public ShaderFeatureHLSL
{
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;
};
@ -396,20 +396,20 @@ public:
class VertLitHLSL : public ShaderFeatureHLSL
{
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;
};
@ -417,23 +417,23 @@ public:
class DetailFeatHLSL : public ShaderFeatureHLSL
{
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";
}
@ -444,21 +444,21 @@ public:
class ReflectCubeFeatHLSL : public ShaderFeatureHLSL
{
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";
}
@ -475,17 +475,17 @@ protected:
public:
FogFeatHLSL();
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";
}
@ -496,9 +496,9 @@ public:
class TexAnimHLSL : public ShaderFeatureHLSL
{
public:
virtual Material::BlendOp getBlendOp() { return Material::None; }
Material::BlendOp getBlendOp() override { return Material::None; }
virtual String getName()
String getName() override
{
return "Texture Animation";
}
@ -516,17 +516,17 @@ public:
VisibilityFeatHLSL();
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";
}
@ -537,12 +537,12 @@ public:
class AlphaTestHLSL : public ShaderFeatureHLSL
{
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";
}
@ -555,12 +555,12 @@ public:
class GlowMaskHLSL : public ShaderFeatureHLSL
{
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";
}
@ -581,12 +581,12 @@ public:
HDROutHLSL();
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"; }
};
///
@ -600,35 +600,35 @@ public:
FoliageFeatureHLSL();
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 ParticleNormalFeatureHLSL : public ShaderFeatureHLSL
{
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";
}
@ -648,20 +648,20 @@ public:
ImposterVertFeatureHLSL();
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
@ -671,10 +671,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
@ -686,21 +686,21 @@ protected:
public:
ReflectionProbeFeatHLSL();
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

@ -33,12 +33,12 @@ class ShaderGenPrinterHLSL : public ShaderGenPrinter
public:
// 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 ShaderGenComponentFactoryHLSL : public ShaderGenComponentFactory
@ -50,10 +50,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;
};

View file

@ -51,7 +51,7 @@ public:
ConditionerFeature( const GFXFormat bufferFormat );
virtual ~ConditionerFeature();
virtual Material::BlendOp getBlendOp()
Material::BlendOp getBlendOp() override
{
return Material::None;
}
@ -60,10 +60,10 @@ public:
virtual bool setBufferFormat(const GFXFormat bufferFormat) { bool ret = mBufferFormat == bufferFormat; mBufferFormat = bufferFormat; return ret; }
// zero-out these methods
virtual Var* getVertTexCoord( const String &name ) { AssertFatal( false, "don't use this." ); return NULL; }
virtual LangElement *setupTexSpaceMat( Vector<ShaderComponent*> &componentList, Var **texSpaceMat ) { AssertFatal( false, "don't use this." ); return NULL; }
virtual LangElement *expandNormalMap( LangElement *sampleNormalOp, LangElement *normalDecl, LangElement *normalVar, const MaterialFeatureData &fd ) { AssertFatal( false, "don't use this." ); return NULL; }
virtual LangElement *assignColor( LangElement *elem, Material::BlendOp blend, LangElement *lerpElem = NULL, ShaderFeature::OutputTarget outputTarget = ShaderFeature::DefaultTarget ) { AssertFatal( false, "don't use this." ); return NULL; }
Var* getVertTexCoord( const String &name ) override { AssertFatal( false, "don't use this." ); return NULL; }
LangElement *setupTexSpaceMat( Vector<ShaderComponent*> &componentList, Var **texSpaceMat ) override { AssertFatal( false, "don't use this." ); return NULL; }
LangElement *expandNormalMap( LangElement *sampleNormalOp, LangElement *normalDecl, LangElement *normalVar, const MaterialFeatureData &fd ) override { AssertFatal( false, "don't use this." ); return NULL; }
LangElement *assignColor( LangElement *elem, Material::BlendOp blend, LangElement *lerpElem = NULL, ShaderFeature::OutputTarget outputTarget = ShaderFeature::DefaultTarget ) override { AssertFatal( false, "don't use this." ); return NULL; }
// conditioned output
virtual LangElement *assignOutput( Var *unconditionedOutput, ShaderFeature::OutputTarget outputTarget = ShaderFeature::DefaultTarget );
@ -128,7 +128,7 @@ public:
ConditionerMethodDependency( ConditionerFeature *conditioner, const ConditionerFeature::MethodType methodType ) :
mConditioner(conditioner), mMethodType(methodType) {}
virtual void print( Stream &s ) const;
void print( Stream &s ) const override;
// Auto insert information into a macro
virtual void createMethodMacro( const String &methodName, Vector<GFXShaderMacro> &macros );

View file

@ -65,8 +65,8 @@ public:
static void initPersistFields();
// Handle when we are added to the scene and removed from the scene
bool onAdd();
void onRemove();
bool onAdd() override;
void onRemove() override;
//shadergen setup
void addVariable(String name, String type, String defaultValue);

View file

@ -136,7 +136,7 @@ struct Var : public LangElement
void setConnectName(const char *newName );
void setType(const char *newType );
virtual void print( Stream &stream );
void print( Stream &stream ) override;
// Construct a uniform / shader const var
void setUniform(const String& constType, const String& constName, ConstantSortPosition sortPos);
@ -176,7 +176,7 @@ public:
}
void addStatement( LangElement *elem );
virtual void print( Stream &stream );
void print( Stream &stream ) override;
};

View file

@ -91,7 +91,7 @@ public:
virtual void reset() = 0;
virtual void sortVars() = 0;
virtual void print( Stream &stream, bool isVerterShader ) = 0;
void print( Stream &stream, bool isVerterShader ) override = 0;
};
/// This is to provide common functionalty needed by vertex and pixel main defs

View file

@ -59,8 +59,8 @@ public:
ShaderIncludeDependency( const Torque::Path &pathToInclude );
virtual bool operator==( const ShaderDependency &cmpTo ) const;
virtual void print( Stream &s ) const;
bool operator==( const ShaderDependency &cmpTo ) const override;
void print( Stream &s ) const override;
};
#endif // _SHADER_DEPENDENCY_H_

View file

@ -89,7 +89,7 @@ class DecOp : public ShaderOp
public:
DecOp( Var *in1 );
virtual void print( Stream &stream );
void print( Stream &stream ) override;
};
@ -107,7 +107,7 @@ class EchoOp : public ShaderOp
public:
EchoOp( const char * statement );
~EchoOp();
virtual void print( Stream &stream );
void print( Stream &stream ) override;
};
//----------------------------------------------------------------------------
@ -122,7 +122,7 @@ class IndexOp : public ShaderOp
public:
IndexOp( Var* var, U32 index );
virtual void print( Stream &stream );
void print( Stream &stream ) override;
};
@ -159,7 +159,7 @@ class GenOp : public ShaderOp
public:
GenOp( const char * statement, ... );
virtual void print( Stream &stream );
void print( Stream &stream ) override;
};