Files
LifeProject/LifeGraphics/render/IShader.h
T
2025-05-13 02:46:21 +03:00

36 lines
707 B
C++

#ifndef IShader_h__
#define IShader_h__
#include "IResource.h"
namespace LifeGraphics
{
enum SHADER_TYPE
{
ST_VS = 0,
ST_PS = 1,
ST_GS = 2
};
class IShader : public IResource
{
public:
int Flags;
virtual ~IShader()
{
}
//public event ShaderCallback SetConstants;
//public delegate void ShaderCallback(IObject obj, IShader shader, int subset, ICamera camera);
// public void OnSetConstants(IObject obj, IShader shader, int subset, ICamera camera)
//{
//if (SetConstants != null)
//SetConstants(obj, shader, subset, camera);
// }
virtual void* Disassemble() = 0;
virtual SHADER_TYPE getShaderType() = 0;
virtual char* GetByteCode() = 0;
};
}
#endif // IShader_h__