struct IRenderShaderResources { };
IShader.h
virtual ~IRenderShaderResources();
virtual void AddRef() = 0;
virtual IRenderShaderResources * Clone() = 0;
virtual void CloneConstants(const IRenderShaderResources* pSrc) = 0;
virtual void ConvertToInputResource(struct SInputShaderResources * pDst) = 0;
virtual void ExportModificators(IRenderShaderResources* pTrg, CRenderObject * pObj) = 0;
virtual float& GetAlphaRef() = 0;
virtual CCamera * GetCamera() = 0;
virtual SDetailDecalInfo * GetDetailDecalInfo() = 0;
virtual ColorF& GetDiffuseColor() = 0;
virtual float GetDiffuseColorAlpha() = 0;
virtual ColorF& GetEmissiveColor() = 0;
virtual float& GetGlow() = 0;
virtual void GetMemoryUsage(ICrySizer * pSizer) const = 0;
virtual uint8 GetMtlLayerNoDrawFlags() const = 0;
virtual float& GetOpacity() = 0;
virtual DynArrayRef<SShaderParam>& GetParameters() = 0;
virtual int GetResFlags() = 0;
virtual size_t GetResourceMemoryUsage(ICrySizer* pSizer) = 0;
virtual SSkyInfo * GetSkyInfo() = 0;
virtual ColorF& GetSpecularColor() = 0;
virtual float& GetSpecularShininess() = 0;
virtual SEfResTexture * GetTexture(int nSlot) const = 0;
virtual void Release() = 0;
virtual void SetCamera(CCamera * pCam) = 0;
virtual void SetInputLM(const CInputLightMaterial& lm) = 0;
virtual void SetMaterialName(const char * szName) = 0;
virtual void SetMtlLayerNoDrawFlags(uint8 nFlags) = 0;
virtual void SetShaderParams(struct SInputShaderResources * pDst, IShader * pSH) = 0;
virtual void ToInputLM(CInputLightMaterial& lm) = 0;
virtual void UpdateConstants(IShader * pSH) = 0;