Sfoglia il codice sorgente

resource: add source texture as dependency

Daniele Bartolini 6 anni fa
parent
commit
9ae74a4dc4

+ 5 - 0
src/resource/compile_options.cpp

@@ -120,6 +120,11 @@ Buffer CompileOptions::read(const char* path)
 	return buf;
 }
 
+void CompileOptions::fake_read(const char* path)
+{
+	add_dependency(path);
+}
+
 void CompileOptions::get_absolute_path(const char* path, DynamicString& abs)
 {
 	TempAllocator256 ta;

+ 3 - 0
src/resource/compile_options.h

@@ -99,6 +99,9 @@ struct CompileOptions
 	///
 	Buffer read(const char* path);
 
+	/// Registers @a path as dependency. Reads nothing.
+	void fake_read(const char* path);
+
 	///
 	void get_absolute_path(const char* path, DynamicString& abs);
 

+ 1 - 0
src/resource/texture_resource.cpp

@@ -42,6 +42,7 @@ namespace texture_resource_internal
 		DynamicString name(ta);
 		sjson::parse_string(object["source"], name);
 		DATA_COMPILER_ASSERT_FILE_EXISTS(name.c_str(), opts);
+		opts.fake_read(name.c_str());
 
 		const bool generate_mips = sjson::parse_bool(object["generate_mips"]);
 		const bool normal_map    = sjson::parse_bool(object["normal_map"]);