GUECS: Minimal components from zedcaster that will let me make a GUI for a game.
This commit is contained in:
parent
10ecf50bc0
commit
1be770d62d
28 changed files with 2528 additions and 30 deletions
28
shaders.hpp
Normal file
28
shaders.hpp
Normal file
|
@ -0,0 +1,28 @@
|
|||
#pragma once
|
||||
#include <cstdint>
|
||||
#include <vector>
|
||||
#include <string>
|
||||
#include <SFML/Graphics.hpp>
|
||||
#include <unordered_map>
|
||||
#include <memory>
|
||||
#include "matrix.hpp"
|
||||
#include <nlohmann/json.hpp>
|
||||
|
||||
namespace shaders {
|
||||
struct Record {
|
||||
std::string name;
|
||||
std::string file_name;
|
||||
std::shared_ptr<sf::Shader> ptr = nullptr;
|
||||
};
|
||||
|
||||
struct ShaderManager {
|
||||
std::unordered_map<std::string, Record> shaders;
|
||||
};
|
||||
|
||||
std::shared_ptr<sf::Shader> get(const std::string& name);
|
||||
void init();
|
||||
bool load_shader(std::string& name, nlohmann::json& settings);
|
||||
bool updated(int my_version);
|
||||
int reload();
|
||||
int version();
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue