Browse Source

Recompile HLSL shaders if the description XML is newer than shader binaries or source code.

Lasse Öörni 13 năm trước cách đây
mục cha
commit
7a68764bae
1 tập tin đã thay đổi với 5 bổ sung1 xóa
  1. 5 1
      Engine/Graphics/Direct3D9/D3D9Shader.cpp

+ 5 - 1
Engine/Graphics/Direct3D9/D3D9Shader.cpp

@@ -83,7 +83,7 @@ bool Shader::Load(Deserializer& source)
                 String hlslFileName = path + fileName + ".hlsl";
                 sourceModifiedTime_ = fileSystem->GetLastModifiedTime(hlslFileName);
                 
-                // Check also timestamps of any included files
+                // Check also timestamps of any included files and the shader description file
                 if (sourceModifiedTime_)
                 {
                     SharedPtr<File> file(new File(context_, hlslFileName));
@@ -98,6 +98,10 @@ bool Shader::Load(Deserializer& source)
                                 sourceModifiedTime_ = includeFileTime;
                         }
                     }
+                    
+                    unsigned descriptionFileTime = fileSystem->GetLastModifiedTime(fullFileName_);
+                    if (descriptionFileTime > sourceModifiedTime_)
+                        sourceModifiedTime_ = descriptionFileTime;
                 }
                 else
                 {