Started moving SFML specific stuff into the sfml/ directory.

This commit is contained in:
Zed A. Shaw 2025-05-05 12:42:26 -04:00
parent df024adccd
commit 58880c2a6a
18 changed files with 27 additions and 42 deletions

27
sfml/shaders.hpp Normal file
View file

@ -0,0 +1,27 @@
#pragma once
#include <cstdint>
#include <vector>
#include <string>
#include <SFML/Graphics.hpp>
#include <unordered_map>
#include <memory>
#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();
}