Browse Source

Cherry Picked From BBS - SHA 072d8845b9f113d64d0c7e0ed00fd1eb746f4f23

Windows only: Texture files defined in the AssetBuildConfiguration will now included their associated cached DDS file in the build. Previously all cached DDS files were included in the build.
Eugene 9 years ago
parent
commit
64a2a7feb5
2 changed files with 14 additions and 16 deletions
  1. 14 12
      Source/ToolCore/Build/BuildBase.cpp
  2. 0 4
      Source/ToolCore/Build/BuildWindows.cpp

+ 14 - 12
Source/ToolCore/Build/BuildBase.cpp

@@ -353,7 +353,7 @@ void BuildBase::BuildProjectResourceEntries()
             BuildFilteredProjectResourceEntries();
             BuildFilteredProjectResourceEntries();
             return;
             return;
         }
         }
-        buildLogOutput += "No build-tag parameter used.\n";
+        buildLogOutput += "No build-tag parameter used.";
     }
     }
     buildLogOutput += "\nBaseBuild::BuildProjectResourceEntries - No custom asset include configuration being used - ";
     buildLogOutput += "\nBaseBuild::BuildProjectResourceEntries - No custom asset include configuration being used - ";
     buildLogOutput += "AssetBuildConfig.json not loaded, OR no build-tag parameter used.";
     buildLogOutput += "AssetBuildConfig.json not loaded, OR no build-tag parameter used.";
@@ -394,10 +394,9 @@ void BuildBase::BuildFilteredProjectResourceEntries()
         if (itr->first_ == assetBuildTag_)
         if (itr->first_ == assetBuildTag_)
         {
         {
             assetBuildConfigFiles = itr->second_.GetStringVector();
             assetBuildConfigFiles = itr->second_.GetStringVector();
-
-            // remove case sensitivity 
             for (unsigned i = 0; i < assetBuildConfigFiles.Size(); ++i)
             for (unsigned i = 0; i < assetBuildConfigFiles.Size(); ++i)
             {
             {
+                // remove case sensitivity 
                 assetBuildConfigFiles[i] = assetBuildConfigFiles[i].ToLower();
                 assetBuildConfigFiles[i] = assetBuildConfigFiles[i].ToLower();
             }
             }
             break;
             break;
@@ -430,7 +429,6 @@ void BuildBase::BuildFilteredProjectResourceEntries()
 
 
             Vector<String> filesInFolder;
             Vector<String> filesInFolder;
             fileSystem->ScanDir(filesInFolder, project_->GetResourcePath() + folder, "*.*", SCAN_FILES, true);
             fileSystem->ScanDir(filesInFolder, project_->GetResourcePath() + folder, "*.*", SCAN_FILES, true);
-
             for (unsigned j = 0; j < filesInFolder.Size(); ++j)
             for (unsigned j = 0; j < filesInFolder.Size(); ++j)
             {
             {
                 String path = filesInFolder[j];
                 String path = filesInFolder[j];
@@ -512,7 +510,6 @@ void BuildBase::BuildFilteredProjectResourceEntries()
     AssetDatabase* db = GetSubsystem<AssetDatabase>();
     AssetDatabase* db = GetSubsystem<AssetDatabase>();
     String cachePath = db->GetCachePath();
     String cachePath = db->GetCachePath();
     fileSystem->ScanDir(filesInCacheFolder, cachePath, "*.*", SCAN_FILES, false);
     fileSystem->ScanDir(filesInCacheFolder, cachePath, "*.*", SCAN_FILES, false);
-
     for (unsigned i = 0; i < filesWithGUIDtoInclude.Size(); ++i)
     for (unsigned i = 0; i < filesWithGUIDtoInclude.Size(); ++i)
     {
     {
         String &guid = filesWithGUIDtoInclude[i];
         String &guid = filesWithGUIDtoInclude[i];
@@ -529,15 +526,20 @@ void BuildBase::BuildFilteredProjectResourceEntries()
         }
         }
     }
     }
 
 
-    // Add the DDS files when building in windows
+    // include a texture file's cached .dds file when building in windows
 #ifdef ATOMIC_PLATFORM_DESKTOP
 #ifdef ATOMIC_PLATFORM_DESKTOP
-    Vector<String> filesInCacheDDSfolder;
-    fileSystem->ScanDir(filesInCacheDDSfolder, cachePath + "DDS/", "*.dds", SCAN_FILES, true);
-
-    for (unsigned i = 0; i < filesInCacheDDSfolder.Size(); ++i)
+    for (StringVector::ConstIterator it = resourceFilesToInclude.Begin(); it != resourceFilesToInclude.End(); ++it)
     {
     {
-        String& file = filesInCacheDDSfolder[i];
-        cacheFilesToInclude.Push("DDS/" + filesInCacheDDSfolder[i]);
+        if (!CheckIncludeResourceFile(project_->GetResourcePath(), *it))
+        {
+            FileSystem* fileSystem = GetSubsystem<FileSystem>();
+            String associatedDDSpath = "DDS/" + *it + ".dds";
+            String compressedPath = cachePath + associatedDDSpath;
+            if (fileSystem->FileExists(compressedPath))
+            {
+                cacheFilesToInclude.Push(associatedDDSpath);
+            }
+        }
     }
     }
 #endif
 #endif
 
 

+ 0 - 4
Source/ToolCore/Build/BuildWindows.cpp

@@ -84,10 +84,6 @@ bool BuildWindows::CheckIncludeResourceFile(const String& resourceDir, const Str
             if (fileSystem->FileExists(compressedPath))
             if (fileSystem->FileExists(compressedPath))
                 return false;
                 return false;
         }
         }
-        else if (ext == ".psd")
-        {
-            return false;
-        }
     }
     }
     // #623 END TODO
     // #623 END TODO