blob: 67838dcf8828b4e6893d5885e8aa2ff002deac8f (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
#pragma once
#include <optional>
#include <string>
#include "Shader.hpp"
#include "Uniform.hpp"
namespace MC::GFX::Shading {
class Program {
public:
Program() : m_program(0) {}
Program(Shader vertex, Shader fragment);
U32 get() const;
std::optional<Uniform> uniform(std::string const& name) const;
void bind() const;
void unbind() const;
private:
U32 m_program;
};
}
|