1
0
mirror of https://github.com/blawar/GLideN64.git synced 2024-07-07 03:13:49 +00:00
GLideN64/src/Graphics/ShaderProgram.h
2017-02-12 22:21:20 +07:00

31 lines
916 B
C++

#pragma once
#include <Types.h>
#include "CombinerProgram.h"
namespace graphics {
class ShaderProgram : public CombinerProgram
{
public:
virtual ~ShaderProgram() {}
void update(bool _force) override {}
CombinerKey getKey() const override {return CombinerKey();}
bool usesTexture() const override {return true;}
virtual bool usesTile(u32 _t) const override {return _t == 0 ? true : false;}
virtual bool usesShade() const override {return false;}
virtual bool usesLOD() const override {return false;}
virtual bool usesHwLighting() const override {return false;}
virtual bool getBinaryForm(std::vector<char> & _buffer) override {return false;}
};
class TexrectDrawerShaderProgram : public ShaderProgram
{
public:
virtual void setTextureSize(u32 _width, u32 _height) = 0;
virtual void setTextureBounds(float _texBounds[4]) = 0;
virtual void setEnableAlphaTest(int _enable) = 0;
};
}