The reload mechanism for shaders is a bit better, but still to make them unique.

This commit is contained in:
Zed A. Shaw 2025-04-14 13:16:19 -04:00
parent 08bc48df3d
commit 19b9a4affd
7 changed files with 68 additions and 44 deletions

View file

@ -7,16 +7,20 @@ using namespace fmt;
TEST_CASE("shader loading/init works", "[shaders]") {
shaders::init();
int version = shaders::version();
sf::Shader* ui_shader = shaders::get("ui_shader");
std::shared_ptr<sf::Shader> ui_shader = shaders::get("ui_shader");
auto other_test = shaders::get("ui_shader");
REQUIRE(ui_shader != nullptr);
REQUIRE(ui_shader == other_test);
REQUIRE(shaders::updated(version) == false);
shaders::reload();
int new_version = shaders::reload();
REQUIRE(version != shaders::version());
REQUIRE(version != new_version);
REQUIRE(shaders::version() == new_version);
REQUIRE(shaders::updated(version) == true);
version = new_version;
// auto after_reload = shaders::get("ui_shader");
// REQUIRE(ui_shader != after_reload);
// REQUIRE(other_test != after_reload);
}