summary refs log tree commit diff
path: root/src/GFX/Shading/Uniform.hpp
blob: 6edff7f0a1fecdb310a3f3000e909a770aa6eaf3 (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
#pragma once

#include <string>
#include "../../Common/Sizes.hpp"
#include "../../Math/Common.hpp"

namespace MC::GFX::Shading {

class Uniform {
public:
    Uniform() = default;

    Uniform(std::string name, U32 index)
        : m_name(std::move(name)), m_index(index) {}

    void set(F32 value) const;
    void set(const Matrix<4, 4, F32>& value) const;
    void set(const Vector<3, F32>& value) const;

private:
    std::string m_name;
    U32 m_index;
};

}