Import art/VFX asset packs + game-feel systems; normalize texture extensions to lowercase for LFS
Add BefourStudios SciFi environment packs, Gabriel Aguiar VFX, and the ShaderCrew Toon Shader embedded packages, plus combat/enemy/wave/death gameplay systems and supporting vault docs/screenshots. Rename 11 vendor textures from uppercase .PNG/.HDR to lowercase so the case-sensitive Git LFS filters (*.png/*.hdr) match on case-sensitive filesystems (Linux CI, case-sensitive macOS), not just locally where core.ignorecase=true masks the gap. Each .meta moved with its asset so GUID references are preserved. All ~1000 binaries tracked via LFS. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
+206
@@ -0,0 +1,206 @@
|
||||
#if UNITY_EDITOR
|
||||
using System;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using UnityEditor;
|
||||
using UnityEditor.PackageManager;
|
||||
using UnityEngine;
|
||||
|
||||
namespace ShaderCrew.TheToonShader
|
||||
{
|
||||
[InitializeOnLoad]
|
||||
public static class TheToonShaderPackageInitializer
|
||||
{
|
||||
//private const string CurrentPackageVersion = "1.3.1";
|
||||
private const string VersionKey = "IsTheToonShaderPackageInitialized";
|
||||
|
||||
static TheToonShaderPackageInitializer()
|
||||
{
|
||||
EditorApplication.delayCall += RunInitialization;
|
||||
Events.registeredPackages += OnPackagesRegistered;
|
||||
}
|
||||
|
||||
private static void RunInitialization()
|
||||
{
|
||||
string storedVersion = EditorPrefs.GetString(VersionKey + Application.productName, "");
|
||||
if (storedVersion != TheToonShaderConstants.THETOONSHADER_VERSION_3D)
|
||||
{
|
||||
#if !__SHADERCREW_DEV_ENV__
|
||||
EditorPrefs.SetString(VersionKey + Application.productName, TheToonShaderConstants.THETOONSHADER_VERSION_3D);
|
||||
DoTildeShaderFolderAdjustments();
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
private static void OnPackagesRegistered(PackageRegistrationEventArgs args)
|
||||
{
|
||||
//if(args.added != null)
|
||||
//{
|
||||
// foreach (UnityEditor.PackageManager.PackageInfo item in args.added)
|
||||
// {
|
||||
// Debug.Log(item.name);
|
||||
// }
|
||||
//}
|
||||
if (args.added != null && args.added.Any(pkg => pkg.name == "com.shadercrew.the-toon-shader.3d") ||
|
||||
args.changedFrom != null && args.changedFrom.Any(pkg => pkg.name == "com.shadercrew.the-toon-shader.3d") ||
|
||||
args.added != null && args.added.Any(pkg => pkg.name == "com.shadercrew.seethroughshader.3d") ||
|
||||
args.removed != null && args.removed.Any(pkg => pkg.name == "com.shadercrew.seethroughshader.3d"))
|
||||
{
|
||||
#if !__SHADERCREW_DEV_ENV__
|
||||
DoTildeShaderFolderAdjustments();
|
||||
#endif
|
||||
}
|
||||
}
|
||||
private static void DoTildeShaderFolderAdjustments()
|
||||
{
|
||||
|
||||
string shaderPackageFolder = "Packages/com.shadercrew.the-toon-shader.3d/";
|
||||
|
||||
string nativeShaderFolderURP = shaderPackageFolder + "Scripts/Shaders/Native/URP";
|
||||
string nativeShaderFolderURPTilde = nativeShaderFolderURP + "~";
|
||||
|
||||
|
||||
#if USING_URP
|
||||
RenameFolder(nativeShaderFolderURPTilde, nativeShaderFolderURP);
|
||||
|
||||
string nativeShaderFolderURP2020 = nativeShaderFolderURP + "/2020";
|
||||
string nativeShaderFolderURP2020Tilde = nativeShaderFolderURP2020 + "~";
|
||||
|
||||
string nativeShaderFolderURP2021 = nativeShaderFolderURP + "/2021";
|
||||
string nativeShaderFolderURP2021Tilde = nativeShaderFolderURP2021 + "~";
|
||||
|
||||
string nativeShaderFolderURP2022 = nativeShaderFolderURP + "/2022";
|
||||
string nativeShaderFolderURP2022Tilde = nativeShaderFolderURP2022 + "~";
|
||||
|
||||
string nativeShaderFolderURPUnity6 = nativeShaderFolderURP + "/Unity6";
|
||||
string nativeShaderFolderURPUnity6Tilde = nativeShaderFolderURPUnity6 + "~";
|
||||
|
||||
string nativeShaderFolderURPUnity6_3 = nativeShaderFolderURP + "/Unity6_3";
|
||||
string nativeShaderFolderURPUnity6_3Tilde = nativeShaderFolderURPUnity6_3 + "~";
|
||||
|
||||
|
||||
#if UNITY_2020_1_OR_NEWER && !UNITY_2021_1_OR_NEWER
|
||||
RenameFolder(nativeShaderFolderURP2020Tilde, nativeShaderFolderURP2020);
|
||||
#else
|
||||
RenameFolder(nativeShaderFolderURP2020, nativeShaderFolderURP2020Tilde);
|
||||
#endif
|
||||
|
||||
#if UNITY_2021_1_OR_NEWER && !UNITY_2022_1_OR_NEWER
|
||||
RenameFolder(nativeShaderFolderURP2021Tilde, nativeShaderFolderURP2021);
|
||||
#else
|
||||
RenameFolder(nativeShaderFolderURP2021, nativeShaderFolderURP2021Tilde);
|
||||
#endif
|
||||
|
||||
#if UNITY_2022_1_OR_NEWER && !UNITY_2023_1_OR_NEWER
|
||||
RenameFolder(nativeShaderFolderURP2022Tilde, nativeShaderFolderURP2022);
|
||||
#else
|
||||
RenameFolder(nativeShaderFolderURP2022, nativeShaderFolderURP2022Tilde);
|
||||
#endif
|
||||
|
||||
#if UNITY_2023_1_OR_NEWER && !UNITY_6000_3_OR_NEWER
|
||||
RenameFolder(nativeShaderFolderURPUnity6Tilde, nativeShaderFolderURPUnity6);
|
||||
#else
|
||||
RenameFolder(nativeShaderFolderURPUnity6, nativeShaderFolderURPUnity6Tilde);
|
||||
#endif
|
||||
|
||||
#if UNITY_6000_3_OR_NEWER
|
||||
RenameFolder(nativeShaderFolderURPUnity6_3Tilde, nativeShaderFolderURPUnity6_3);
|
||||
#else
|
||||
RenameFolder(nativeShaderFolderURPUnity6_3, nativeShaderFolderURPUnity6_3Tilde);
|
||||
#endif
|
||||
|
||||
#else
|
||||
RenameFolder(nativeShaderFolderURP, nativeShaderFolderURPTilde);
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
string stsShaderFolder = shaderPackageFolder + "Scripts/Shaders/STS";
|
||||
string stsShaderFolderTilde = stsShaderFolder + "~";
|
||||
|
||||
string stsShaderFolderURP = shaderPackageFolder + "Scripts/Shaders/STS/URP";
|
||||
string stsShaderFolderURPTilde = stsShaderFolderURP + "~";
|
||||
|
||||
#if USING_SEE_THROUGH_SHADER
|
||||
RenameFolder(stsShaderFolderTilde, stsShaderFolder);
|
||||
|
||||
|
||||
#if USING_URP
|
||||
RenameFolder(stsShaderFolderURPTilde, stsShaderFolderURP);
|
||||
|
||||
string stsShaderFolderURP2020 = stsShaderFolderURP + "/2020";
|
||||
string stsShaderFolderURP2020Tilde = stsShaderFolderURP2020 + "~";
|
||||
|
||||
string stsShaderFolderURP2021 = stsShaderFolderURP + "/2021";
|
||||
string stsShaderFolderURP2021Tilde = stsShaderFolderURP2021 + "~";
|
||||
|
||||
string stsShaderFolderURP2022 = stsShaderFolderURP + "/2022";
|
||||
string stsShaderFolderURP2022Tilde = stsShaderFolderURP2022 + "~";
|
||||
|
||||
string stsShaderFolderURPUnity6 = stsShaderFolderURP + "/Unity6";
|
||||
string stsShaderFolderURPUnity6Tilde = stsShaderFolderURPUnity6 + "~";
|
||||
|
||||
string stsShaderFolderURPUnity6_3 = stsShaderFolderURP + "/Unity6_3";
|
||||
string stsShaderFolderURPUnity6_3Tilde = stsShaderFolderURPUnity6_3 + "~";
|
||||
|
||||
|
||||
#if UNITY_2020_1_OR_NEWER && !UNITY_2021_1_OR_NEWER
|
||||
RenameFolder(stsShaderFolderURP2020Tilde, stsShaderFolderURP2020);
|
||||
#else
|
||||
RenameFolder(stsShaderFolderURP2020, stsShaderFolderURP2020Tilde);
|
||||
#endif
|
||||
|
||||
#if UNITY_2021_1_OR_NEWER && !UNITY_2022_1_OR_NEWER
|
||||
RenameFolder(stsShaderFolderURP2021Tilde, stsShaderFolderURP2021);
|
||||
#else
|
||||
RenameFolder(stsShaderFolderURP2021, stsShaderFolderURP2021Tilde);
|
||||
#endif
|
||||
|
||||
#if UNITY_2022_1_OR_NEWER && !UNITY_2023_1_OR_NEWER
|
||||
RenameFolder(stsShaderFolderURP2022Tilde, stsShaderFolderURP2022);
|
||||
#else
|
||||
RenameFolder(stsShaderFolderURP2022, stsShaderFolderURP2022Tilde);
|
||||
#endif
|
||||
|
||||
#if UNITY_2023_1_OR_NEWER && !UNITY_6000_3_OR_NEWER
|
||||
RenameFolder(stsShaderFolderURPUnity6Tilde, stsShaderFolderURPUnity6);
|
||||
#else
|
||||
RenameFolder(stsShaderFolderURPUnity6, stsShaderFolderURPUnity6Tilde);
|
||||
#endif
|
||||
|
||||
#if UNITY_6000_3_OR_NEWER
|
||||
RenameFolder(stsShaderFolderURPUnity6_3Tilde, stsShaderFolderURPUnity6_3);
|
||||
#else
|
||||
RenameFolder(stsShaderFolderURPUnity6_3, stsShaderFolderURPUnity6_3Tilde);
|
||||
#endif
|
||||
|
||||
#else
|
||||
RenameFolder(stsShaderFolderURP, stsShaderFolderURPTilde);
|
||||
#endif
|
||||
#else
|
||||
RenameFolder(stsShaderFolder, stsShaderFolderTilde);
|
||||
#endif
|
||||
}
|
||||
|
||||
private static void RenameFolder(string oldName, string newName)
|
||||
{
|
||||
if (Directory.Exists(oldName))
|
||||
{
|
||||
Directory.Move(oldName, newName);
|
||||
string meta = oldName + ".meta";
|
||||
if (File.Exists(meta))
|
||||
{
|
||||
File.Delete(meta);
|
||||
}
|
||||
AssetDatabase.Refresh();
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
#endif
|
||||
Reference in New Issue
Block a user