diff --git a/.github/workflows/docker.yml b/.github/workflows/docker.yml index e4bc3d10..372c139f 100644 --- a/.github/workflows/docker.yml +++ b/.github/workflows/docker.yml @@ -8,13 +8,13 @@ jobs: strategy: matrix: include: - - unity_docker_image: unityci/editor:2021.3.22f1-webgl-1 + - unity_docker_image: unityci/editor:2022.3.12f1-webgl-3.0.0 service_name: asset-bundle-converter platform_target: webgl - - unity_docker_image: unityci/editor:2021.3.22f1-windows-mono-1 + - unity_docker_image: unityci/editor:2022.3.12f1-windows-mono-3.0.0 service_name: asset-bundle-converter-windows platform_target: windows - - unity_docker_image: unityci/editor:2021.3.22f1-mac-mono-1 + - unity_docker_image: unityci/editor:2022.3.12f1-mac-mono-3.0.0 service_name: asset-bundle-converter-mac platform_target: mac diff --git a/.github/workflows/manual-build-conversion.yml b/.github/workflows/manual-build-conversion.yml index 539f7b82..45674c0c 100644 --- a/.github/workflows/manual-build-conversion.yml +++ b/.github/workflows/manual-build-conversion.yml @@ -23,13 +23,13 @@ jobs: strategy: matrix: include: - - unity_docker_image: unityci/editor:2021.3.22f1-webgl-1 + - unity_docker_image: unityci/editor:2022.3.12f1-webgl-3.0.0 service_name: asset-bundle-converter platform_target: webgl - - unity_docker_image: unityci/editor:2021.3.22f1-windows-mono-1 + - unity_docker_image: unityci/editor:2022.3.12f1-windows-mono-3.0.0 service_name: asset-bundle-converter-windows platform_target: windows - - unity_docker_image: unityci/editor:2021.3.22f1-mac-mono-1 + - unity_docker_image: unityci/editor:2022.3.12f1-mac-mono-3.0.0 service_name: asset-bundle-converter-mac platform_target: mac diff --git a/Dockerfile b/Dockerfile index a65b1ece..a4760262 100644 --- a/Dockerfile +++ b/Dockerfile @@ -46,9 +46,9 @@ ENV NODE_PATH $NVM_DIR/versions/node/$NODE_VERSION/lib/node_modules ENV PATH $NVM_DIR/versions/node/$NODE_VERSION/bin:$PATH # Change this value ONLY if we have done breaking changes for every material, doing so is VERY costly -ENV AB_VERSION v11 -ENV AB_VERSION_WINDOWS v14 -ENV AB_VERSION_MAC v15 +ENV AB_VERSION v12 +ENV AB_VERSION_WINDOWS v15 +ENV AB_VERSION_MAC v16 # NODE_ENV is used to configure some runtime options, like JSON logger ENV NODE_ENV production diff --git a/asset-bundle-converter/Assets/AssetBundleConverter/AssetBundleConverter.asmdef b/asset-bundle-converter/Assets/AssetBundleConverter/AssetBundleConverter.asmdef index 4804214e..d6c8405d 100644 --- a/asset-bundle-converter/Assets/AssetBundleConverter/AssetBundleConverter.asmdef +++ b/asset-bundle-converter/Assets/AssetBundleConverter/AssetBundleConverter.asmdef @@ -15,7 +15,8 @@ "GUID:9887bf5401cdc9140916d3edbea10b69", "GUID:f51ebe6a0ceec4240a699833d6309b23", "GUID:5c1ff9bd975acec488150743d53a93ca", - "GUID:c5ecc461727906345a35491a0440694f" + "GUID:c5ecc461727906345a35491a0440694f", + "GUID:15fc0a57446b3144c949da3e2b9737a9" ], "includePlatforms": [ "Editor" @@ -24,7 +25,6 @@ "allowUnsafeCode": false, "overrideReferences": true, "precompiledReferences": [ - "Newtonsoft.Json.dll", "Sentry.dll", "Unity.Plastic.Newtonsoft.Json.dll" ], diff --git a/asset-bundle-converter/Assets/AssetBundleConverter/AssetBundleConverter.cs b/asset-bundle-converter/Assets/AssetBundleConverter/AssetBundleConverter.cs index 78e522fb..e274e466 100644 --- a/asset-bundle-converter/Assets/AssetBundleConverter/AssetBundleConverter.cs +++ b/asset-bundle-converter/Assets/AssetBundleConverter/AssetBundleConverter.cs @@ -15,6 +15,7 @@ using UnityEngine; using UnityEngine.Networking; using UnityEngine.Profiling; +using UnityEngine.Rendering.Universal; using Debug = UnityEngine.Debug; using Environment = AssetBundleConverter.Environment; using Object = UnityEngine.Object; @@ -145,6 +146,7 @@ public async Task ConvertAsync(IReadOnlyList raw // First step: initialize directories to download the original assets and to store the results InitializeDirectoryPaths(settings.clearDirectoriesOnStart, settings.clearDirectoriesOnStart); + AdjustRenderingMode(settings.buildTarget); env.assetDatabase.Refresh(); await env.editor.Delay(TimeSpan.FromSeconds(0.1f)); @@ -205,7 +207,6 @@ public async Task ConvertAsync(IReadOnlyList raw bundlesEndTime = EditorApplication.timeSinceStartup; } - if (isExitForced) return; @@ -219,6 +220,21 @@ public async Task ConvertAsync(IReadOnlyList raw OnFinish(); } + private void AdjustRenderingMode(BuildTarget targetPlatform) + { + var universalRendererData = Resources.FindObjectsOfTypeAll().First(); + var rendererDataPath = AssetDatabase.GetAssetPath(universalRendererData); + + universalRendererData.renderingMode = targetPlatform switch + { + BuildTarget.StandaloneWindows64 or BuildTarget.StandaloneOSX => RenderingMode.ForwardPlus, + BuildTarget.WebGL => RenderingMode.Forward, + _ => universalRendererData.renderingMode + }; + + AssetDatabase.ImportAsset(rendererDataPath); + } + private void MarkAndBuildForTarget(BuildTarget target) { @@ -437,23 +453,12 @@ private void CreateMaterialAsset(Material originalMaterial, string materialRoot, string materialPath = PathUtils.GetRelativePathTo(Application.dataPath, string.Concat(materialRoot, matName, ".mat")); - var previousMat = env.assetDatabase.LoadAssetAtPath(materialPath); - - if (previousMat != null) - env.assetDatabase.DeleteAsset(materialPath); - - Profiler.BeginSample("ExtractEmbedMaterials.CreateAsset"); - env.assetDatabase.CreateAsset(Object.Instantiate(originalMaterial), materialPath); - //env.assetDatabase.SaveAssets(); - Profiler.EndSample(); - - var newMaterial = env.assetDatabase.LoadAssetAtPath(materialPath); + var newMaterial = Object.Instantiate(originalMaterial); var shader = newMaterial.shader; if (settings.stripShaders) - env.assetDatabase.MarkAssetBundle(env.assetDatabase, shader, - shader.name + "_IGNORE" + PlatformUtils.GetPlatform()); + env.assetDatabase.AssignAssetBundle(shader); var textureProperties = GetTextureProperties(shader); @@ -461,33 +466,25 @@ private void CreateMaterialAsset(Material originalMaterial, string materialRoot, for (var i = 0; i < textureProperties.Count; ++i) { int propertyId = textureProperties[i]; - var tex = originalMaterial.GetTexture(propertyId) as Texture2D; - - // we ensure that the property has a valid material - if (!tex) continue; // we reassign the texture reference - string texName = Utils.NicifyName(tex.name); - texName = Path.GetFileNameWithoutExtension(texName).ToLowerInvariant(); - var prevTexture = newMaterial.GetTexture(propertyId); - if (texNameMap.ContainsKey(texName)) - newMaterial.SetTexture(propertyId, texNameMap[texName]); - else - { - if (prevTexture == null) - { - var message = - $"Failed to set texture \"{texName}\" to material \"{matName}\". This will cause white materials"; - log.Error(message); - errorReporter.ReportError(message, settings); - ForceExit((int)ErrorCodes.EMBED_MATERIAL_FAILURE); - return; - } - } + // after copying a material it should hold the reference to the original texture + if (!prevTexture) continue; + + string texName = Utils.NicifyName(prevTexture.name); + texName = Path.GetFileNameWithoutExtension(texName).ToLowerInvariant(); + + if (texNameMap.TryGetValue(texName, out Texture2D tex)) + newMaterial.SetTexture(propertyId, tex); } + Profiler.BeginSample("ExtractEmbedMaterials.CreateAsset"); + env.assetDatabase.CreateAsset(newMaterial, materialPath); + //env.assetDatabase.SaveAssets(); + Profiler.EndSample(); + Profiler.EndSample(); EditorUtility.SetDirty(newMaterial); @@ -727,7 +724,7 @@ public virtual bool BuildAssetBundles(BuildTarget target, out IAssetBundleManife // 1. Convert flagged folders to asset bundles only to automatically get dependencies for the metadata manifest = env.buildPipeline.BuildAssetBundles(settings.finalAssetBundlePath, - BuildAssetBundleOptions.UncompressedAssetBundle | BuildAssetBundleOptions.ForceRebuildAssetBundle, + BuildAssetBundleOptions.UncompressedAssetBundle | BuildAssetBundleOptions.ForceRebuildAssetBundle | BuildAssetBundleOptions.AssetBundleStripUnityVersion, target); if (manifest == null) @@ -752,7 +749,7 @@ public virtual bool BuildAssetBundles(BuildTarget target, out IAssetBundleManife // 3. Convert flagged folders to asset bundles again but this time they have the metadata file inside manifest = env.buildPipeline.BuildAssetBundles(settings.finalAssetBundlePath, - BuildAssetBundleOptions.UncompressedAssetBundle | BuildAssetBundleOptions.ForceRebuildAssetBundle, + BuildAssetBundleOptions.UncompressedAssetBundle | BuildAssetBundleOptions.ForceRebuildAssetBundle | BuildAssetBundleOptions.AssetBundleStripUnityVersion, target); var afterSecondBuild = EditorApplication.timeSinceStartup; @@ -1138,7 +1135,7 @@ void FinallyImportAsset() } private IGltfImport CreateGltfImport(AssetPath filePath) => - env.gltfImporter.GetImporter(filePath, contentTable, settings.shaderType); + env.gltfImporter.GetImporter(filePath, contentTable, settings.shaderType, settings.buildTarget); private void ReduceTextureSizeIfNeeded(string texturePath, float maxSize) { diff --git a/asset-bundle-converter/Assets/AssetBundleConverter/AssetBundleSceneConversionWindow.cs b/asset-bundle-converter/Assets/AssetBundleConverter/AssetBundleSceneConversionWindow.cs index ae44e6d7..7f647032 100644 --- a/asset-bundle-converter/Assets/AssetBundleConverter/AssetBundleSceneConversionWindow.cs +++ b/asset-bundle-converter/Assets/AssetBundleConverter/AssetBundleSceneConversionWindow.cs @@ -40,6 +40,8 @@ public class AssetBundleSceneConversionWindow : EditorWindow private string entityId = "QmYy2TMDEfag99yZV4ZdpjievYUfdQgBVfFHKCDAge3zQi"; private string wearablesCollectionId = "urn:decentraland:off-chain:base-avatars"; private string debugEntity = "bafkreib66ufmbowp4ee2u3kdu6t52kouie7kd7tfrlv3l5kejz6yjcaq5i"; + + // The empty scenes url should be like "https://cdn.decentraland.org/@dcl/explorer/1.0.152291-20231017100112.commit-07d38e3/loader/empty-scenes/contents/" private string mappingName = "../mappings.json"; private string batchBaseUrl = ""; private string batchSceneId = ""; diff --git a/asset-bundle-converter/Assets/AssetBundleConverter/Editor/CustomGltfImporter.cs b/asset-bundle-converter/Assets/AssetBundleConverter/Editor/CustomGltfImporter.cs index bdaad8a3..cf084d78 100644 --- a/asset-bundle-converter/Assets/AssetBundleConverter/Editor/CustomGltfImporter.cs +++ b/asset-bundle-converter/Assets/AssetBundleConverter/Editor/CustomGltfImporter.cs @@ -73,7 +73,7 @@ public override void OnImportAsset(AssetImportContext ctx) } if (!useOriginalMaterials) - SetupCustomMaterialGenerator(new AssetBundleConverterMaterialGenerator()); + SetupCustomMaterialGenerator(new AssetBundleConverterMaterialGenerator(AssetBundleConverterMaterialGenerator.UseNewShader(EditorUserBuildSettings.activeBuildTarget))); try { base.OnImportAsset(ctx); } catch (Exception e) diff --git a/asset-bundle-converter/Assets/AssetBundleConverter/Tests/AssetBundleConverterShould.cs b/asset-bundle-converter/Assets/AssetBundleConverter/Tests/AssetBundleConverterShould.cs index 73c0d9e2..bb0dc8c8 100644 --- a/asset-bundle-converter/Assets/AssetBundleConverter/Tests/AssetBundleConverterShould.cs +++ b/asset-bundle-converter/Assets/AssetBundleConverter/Tests/AssetBundleConverterShould.cs @@ -149,7 +149,7 @@ public async Task GltfAssetIsProcessed() buildPipeline.BuildAssetBundles(Arg.Any(), Arg.Any(), Arg.Any()).Returns(Substitute.For()); var gltf = Substitute.For(); - gltfImporter.GetImporter(Arg.Any(), Arg.Any>(), Arg.Any()).Returns(gltf); + gltfImporter.GetImporter(Arg.Any(), Arg.Any>(), Arg.Any(), Arg.Any()).Returns(gltf); gltfImporter.ConfigureImporter(Arg.Any(), Arg.Any(), Arg.Any(), Arg.Any(), Arg.Any()).Returns(true); assetDatabase.LoadAssetAtPath(PathUtils.FullPathToAssetPath(assetPath.finalPath)).Returns(dummyGo); @@ -170,7 +170,7 @@ public async Task GltfAssetIsProcessed() file.Received().WriteAllBytes(Arg.Is(assetPath.finalPath), Arg.Any()); // Ensure that the importer is being created - gltfImporter.Received().GetImporter(Arg.Any(), Arg.Any>(), Arg.Any()); + gltfImporter.Received().GetImporter(Arg.Any(), Arg.Any>(), Arg.Any(), Arg.Any()); // Ensure that the gltf import is being loaded await gltf.Received().Load(Arg.Any(), Arg.Any()); @@ -275,7 +275,7 @@ private IGltfImport ConfigureGltf(ContentServerUtils.MappingPair mappingPair) webRequest.Get(exampleBaseURL).Returns(new DownloadHandlerMock()); buildPipeline.BuildAssetBundles(Arg.Any(), Arg.Any(), Arg.Any()).Returns(Substitute.For()); var gltf = Substitute.For(); - gltfImporter.GetImporter(Arg.Any(), Arg.Any>(), Arg.Any()).Returns(gltf); + gltfImporter.GetImporter(Arg.Any(), Arg.Any>(), Arg.Any(), Arg.Any()).Returns(gltf); gltfImporter.ConfigureImporter(Arg.Any(), Arg.Any(), Arg.Any(), Arg.Any(), Arg.Any()).Returns(true); assetDatabase.LoadAssetAtPath(PathUtils.FullPathToAssetPath(assetPath.finalPath)).Returns(dummyGo); return gltf; diff --git a/asset-bundle-converter/Assets/AssetBundleConverter/Utils.cs b/asset-bundle-converter/Assets/AssetBundleConverter/Utils.cs index 1328e372..d5329332 100644 --- a/asset-bundle-converter/Assets/AssetBundleConverter/Utils.cs +++ b/asset-bundle-converter/Assets/AssetBundleConverter/Utils.cs @@ -241,6 +241,25 @@ internal static void MarkFolderForAssetBundleBuild(string fullPath, string abNam importer.SetAssetBundleNameAndVariant(abName, ""); } + internal static void AssignShaderBundle(IAssetDatabase db, Shader shader) + { + var abName = shader.name + "_IGNORE" + PlatformUtils.GetPlatform(); + + string assetPath = PathUtils.GetRelativePathTo(Application.dataPath, db.GetAssetPath(shader)); + + var importer = AssetImporter.GetAtPath(assetPath); + + if (importer) + importer.SetAssetBundleNameAndVariant(abName, ""); + + // find a variants collection + var variantsPath = assetPath.Replace(".shader", "Variants.shadervariants"); + + importer = AssetImporter.GetAtPath(variantsPath); + if (importer) + importer.SetAssetBundleNameAndVariant(abName, ""); + } + internal static bool MarkAssetForAssetBundleBuild(IAssetDatabase assetDb, Object asset, string abName) { string assetPath = PathUtils.GetRelativePathTo(Application.dataPath, assetDb.GetAssetPath(asset)); diff --git a/asset-bundle-converter/Assets/AssetBundleConverter/Wrappers/Implementations/Default/AssetBundleConverterMaterialGenerator.cs b/asset-bundle-converter/Assets/AssetBundleConverter/Wrappers/Implementations/Default/AssetBundleConverterMaterialGenerator.cs index 89fc3127..d06ce61c 100644 --- a/asset-bundle-converter/Assets/AssetBundleConverter/Wrappers/Implementations/Default/AssetBundleConverterMaterialGenerator.cs +++ b/asset-bundle-converter/Assets/AssetBundleConverter/Wrappers/Implementations/Default/AssetBundleConverterMaterialGenerator.cs @@ -1,9 +1,40 @@ using DCL.GLTFast.Wrappers; +using DCL.Shaders; +using GLTFast; +using UnityEditor; +using UnityEngine; namespace AssetBundleConverter.Wrappers.Implementations.Default { public class AssetBundleConverterMaterialGenerator : DecentralandMaterialGenerator { - public AssetBundleConverterMaterialGenerator() : base("DCL/Universal Render Pipeline/Lit") { } + private readonly bool useSceneShader; + + public AssetBundleConverterMaterialGenerator(bool useSceneShader) : base(GetShaderName(useSceneShader)) + { + this.useSceneShader = useSceneShader; + } + + public static bool UseNewShader(BuildTarget buildTarget) => + buildTarget != BuildTarget.WebGL; + + private static string GetShaderName(bool useSceneShader) => + useSceneShader ? "DCL/Scene" : "DCL/Universal Render Pipeline/Lit"; + + public override Material GenerateMaterial(int materialIndex, GLTFast.Schema.Material gltfMaterial, IGltfReadable gltf, bool pointsSupport = false) + { + var mat = base.GenerateMaterial(materialIndex, gltfMaterial, gltf, pointsSupport); + + if (useSceneShader) + { + // Enable Forward+ and soft shadows + mat.EnableKeyword(ShaderUtils.FW_PLUS); + mat.EnableKeyword(ShaderUtils.FW_PLUS_LIGHT_SHADOWS); + mat.EnableKeyword(ShaderUtils.FW_PLUS_SHADOWS_CASCADE); + mat.EnableKeyword(ShaderUtils.FW_PLUS_SHADOWS_SOFT); + } + + return mat; + } } -} \ No newline at end of file +} diff --git a/asset-bundle-converter/Assets/AssetBundleConverter/Wrappers/Implementations/Default/AssetDatabase.cs b/asset-bundle-converter/Assets/AssetBundleConverter/Wrappers/Implementations/Default/AssetDatabase.cs index c89a6af4..09ce72f3 100644 --- a/asset-bundle-converter/Assets/AssetBundleConverter/Wrappers/Implementations/Default/AssetDatabase.cs +++ b/asset-bundle-converter/Assets/AssetBundleConverter/Wrappers/Implementations/Default/AssetDatabase.cs @@ -82,9 +82,14 @@ public void CreateAsset(Object obj, string path) UnityEditor.AssetDatabase.CreateAsset(obj, path); } - public void MarkAssetBundle(IAssetDatabase assetDb, Object asset, string abName) + public void AssignAssetBundle(Shader shader) { - Utils.MarkAssetForAssetBundleBuild(assetDb, asset, abName); + Utils.AssignShaderBundle(this, shader); + } + + public void MarkAssetBundle(Object asset, string abName) + { + Utils.MarkAssetForAssetBundleBuild(this, asset, abName); } } } diff --git a/asset-bundle-converter/Assets/AssetBundleConverter/Wrappers/Implementations/Default/DefaultGltfImporter.cs b/asset-bundle-converter/Assets/AssetBundleConverter/Wrappers/Implementations/Default/DefaultGltfImporter.cs index 68dd8df2..cb2606f2 100644 --- a/asset-bundle-converter/Assets/AssetBundleConverter/Wrappers/Implementations/Default/DefaultGltfImporter.cs +++ b/asset-bundle-converter/Assets/AssetBundleConverter/Wrappers/Implementations/Default/DefaultGltfImporter.cs @@ -1,5 +1,4 @@ - -using AssetBundleConverter.Editor; +using AssetBundleConverter.Editor; using AssetBundleConverter.Wrappers.Interfaces; using DCL; using DCL.ABConverter; @@ -7,9 +6,7 @@ using GLTFast.Logging; using GLTFast.Materials; using System.Collections.Generic; -using System.Linq; using UnityEditor; -using UnityEngine; namespace AssetBundleConverter.Wrappers.Implementations.Default { @@ -26,9 +23,9 @@ public DefaultGltfImporter(IAssetDatabase assetDatabase) this.assetDatabase = assetDatabase; } - public IGltfImport GetImporter(AssetPath filePath, Dictionary contentTable, ShaderType shaderType) + public IGltfImport GetImporter(AssetPath filePath, Dictionary contentTable, ShaderType shaderType, BuildTarget buildTarget) { - getNewMaterialGenerator = GetNewMaterialGenerator(shaderType); + getNewMaterialGenerator = GetNewMaterialGenerator(shaderType, buildTarget); return new GltfImportWrapper( new GltFastFileProvider(filePath.fileRootPath, filePath.hash, contentTable), @@ -37,13 +34,10 @@ public IGltfImport GetImporter(AssetPath filePath, Dictionary co gltfLogger); } - private IMaterialGenerator GetNewMaterialGenerator(ShaderType shaderType) - { - if (shaderType == ShaderType.Dcl) - return new AssetBundleConverterMaterialGenerator(); - - return null; - } + private static IMaterialGenerator GetNewMaterialGenerator(ShaderType shaderType, BuildTarget buildTarget) => + shaderType == ShaderType.Dcl + ? new AssetBundleConverterMaterialGenerator(AssetBundleConverterMaterialGenerator.UseNewShader(buildTarget)) + : null; public bool ConfigureImporter(string relativePath, ContentMap[] contentMap, string fileRootPath, string hash, ShaderType shaderType ) { diff --git a/asset-bundle-converter/Assets/AssetBundleConverter/Wrappers/Implementations/Default/GltfImportWrapper.cs b/asset-bundle-converter/Assets/AssetBundleConverter/Wrappers/Implementations/Default/GltfImportWrapper.cs index 657e66bf..13d6f276 100644 --- a/asset-bundle-converter/Assets/AssetBundleConverter/Wrappers/Implementations/Default/GltfImportWrapper.cs +++ b/asset-bundle-converter/Assets/AssetBundleConverter/Wrappers/Implementations/Default/GltfImportWrapper.cs @@ -10,13 +10,15 @@ namespace AssetBundleConverter.Wrappers.Implementations.Default { public class GltfImportWrapper : IGltfImport { - private GltfImport importer; - private ConsoleLogger logger; - private IMaterialGenerator materialGenerator; + private readonly GltfImport importer; + private readonly ConsoleLogger logger; + private readonly IMaterialGenerator materialGenerator; + private readonly GltFastFileProvider fileProvider; public GltfImportWrapper(GltFastFileProvider gltFastFileProvider, UninterruptedDeferAgent uninterruptedDeferAgent, IMaterialGenerator materialGenerator, ConsoleLogger consoleLogger) { logger = consoleLogger; + fileProvider = gltFastFileProvider; this.materialGenerator = materialGenerator; importer = new GltfImport(gltFastFileProvider, uninterruptedDeferAgent, this.materialGenerator, logger); } diff --git a/asset-bundle-converter/Assets/AssetBundleConverter/Wrappers/Interfaces/IAssetDatabase.cs b/asset-bundle-converter/Assets/AssetBundleConverter/Wrappers/Interfaces/IAssetDatabase.cs index a3372b06..7e141c92 100644 --- a/asset-bundle-converter/Assets/AssetBundleConverter/Wrappers/Interfaces/IAssetDatabase.cs +++ b/asset-bundle-converter/Assets/AssetBundleConverter/Wrappers/Interfaces/IAssetDatabase.cs @@ -23,7 +23,7 @@ public interface IAssetDatabase void SaveImporter(AssetImporter gltfImporter); void CreateAsset(Object obj, string path); - - void MarkAssetBundle(IAssetDatabase assetDb, Object asset, string abName); + void AssignAssetBundle(Shader shader); + void MarkAssetBundle(Object asset, string abName); } } diff --git a/asset-bundle-converter/Assets/AssetBundleConverter/Wrappers/Interfaces/IGltfImporter.cs b/asset-bundle-converter/Assets/AssetBundleConverter/Wrappers/Interfaces/IGltfImporter.cs index f72654ca..27113238 100644 --- a/asset-bundle-converter/Assets/AssetBundleConverter/Wrappers/Interfaces/IGltfImporter.cs +++ b/asset-bundle-converter/Assets/AssetBundleConverter/Wrappers/Interfaces/IGltfImporter.cs @@ -1,12 +1,13 @@ using AssetBundleConverter.Editor; using DCL.ABConverter; using System.Collections.Generic; +using UnityEditor; namespace AssetBundleConverter.Wrappers.Interfaces { public interface IGltfImporter { - IGltfImport GetImporter(AssetPath filePath, Dictionary contentTable, ShaderType shaderType); + IGltfImport GetImporter(AssetPath filePath, Dictionary contentTable, ShaderType shaderType, BuildTarget buildTarget); bool ConfigureImporter(string relativePath, ContentMap[] contentMap, string fileRootPath, string hash, ShaderType shaderType); } diff --git a/asset-bundle-converter/Assets/Renderer/NewShaderVariants.shadervariants b/asset-bundle-converter/Assets/Renderer/NewShaderVariants.shadervariants index 76d4b769..487b15cb 100644 --- a/asset-bundle-converter/Assets/Renderer/NewShaderVariants.shadervariants +++ b/asset-bundle-converter/Assets/Renderer/NewShaderVariants.shadervariants @@ -11,3 +11,71 @@ ShaderVariantCollection: - first: {fileID: 4800000, guid: 3b75227de96217540aae9be81fbd99f6, type: 3} second: variants: [] + - first: {fileID: 4800000, guid: 56a9743f8d94f684190dc11bb521fb78, type: 3} + second: + variants: + - keywords: _ADDITIONAL_LIGHT_SHADOWS _EMISSION _ENVIRONMENTREFLECTIONS_OFF + _FORWARD_PLUS _MAIN_LIGHT_SHADOWS_CASCADE _NORMALMAP _OCCLUSIONMAP _SHADOWS_SOFT + passType: 13 + - keywords: _ADDITIONAL_LIGHT_SHADOWS _EMISSION _ENVIRONMENTREFLECTIONS_OFF + _FORWARD_PLUS _MAIN_LIGHT_SHADOWS_CASCADE _NORMALMAP _OCCLUSIONMAP _SHADOWS_SOFT + _SPECULARHIGHLIGHTS_OFF + passType: 13 + - keywords: _ADDITIONAL_LIGHT_SHADOWS _EMISSION _ENVIRONMENTREFLECTIONS_OFF + _FORWARD_PLUS _MAIN_LIGHT_SHADOWS_CASCADE _NORMALMAP _OCCLUSIONMAP _SHADOWS_SOFT + _SPECULARHIGHLIGHTS_OFF _SPECULAR_SETUP + passType: 13 + - keywords: _ADDITIONAL_LIGHT_SHADOWS _EMISSION _ENVIRONMENTREFLECTIONS_OFF + _FORWARD_PLUS _MAIN_LIGHT_SHADOWS_CASCADE _NORMALMAP _OCCLUSIONMAP _SHADOWS_SOFT + _SPECULAR_SETUP + passType: 13 + - keywords: _ADDITIONAL_LIGHT_SHADOWS _EMISSION _ENVIRONMENTREFLECTIONS_OFF + _FORWARD_PLUS _MAIN_LIGHT_SHADOWS_CASCADE _NORMALMAP _SHADOWS_SOFT + passType: 13 + - keywords: _ADDITIONAL_LIGHT_SHADOWS _EMISSION _ENVIRONMENTREFLECTIONS_OFF + _FORWARD_PLUS _MAIN_LIGHT_SHADOWS_CASCADE _NORMALMAP _SHADOWS_SOFT _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A + passType: 13 + - keywords: _ADDITIONAL_LIGHT_SHADOWS _EMISSION _ENVIRONMENTREFLECTIONS_OFF + _FORWARD_PLUS _MAIN_LIGHT_SHADOWS_CASCADE _NORMALMAP _SHADOWS_SOFT _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A + _SPECULAR_SETUP + passType: 13 + - keywords: _ADDITIONAL_LIGHT_SHADOWS _EMISSION _ENVIRONMENTREFLECTIONS_OFF + _FORWARD_PLUS _MAIN_LIGHT_SHADOWS_CASCADE _NORMALMAP _SHADOWS_SOFT _SPECULARHIGHLIGHTS_OFF + passType: 13 + - keywords: _ADDITIONAL_LIGHT_SHADOWS _EMISSION _ENVIRONMENTREFLECTIONS_OFF + _FORWARD_PLUS _MAIN_LIGHT_SHADOWS_CASCADE _NORMALMAP _SHADOWS_SOFT _SPECULARHIGHLIGHTS_OFF + _SPECULAR_SETUP + passType: 13 + - keywords: _ADDITIONAL_LIGHT_SHADOWS _EMISSION _ENVIRONMENTREFLECTIONS_OFF + _FORWARD_PLUS _MAIN_LIGHT_SHADOWS_CASCADE _NORMALMAP _SHADOWS_SOFT _SPECULAR_SETUP + passType: 13 + - keywords: _ADDITIONAL_LIGHT_SHADOWS _EMISSION _FORWARD_PLUS _MAIN_LIGHT_SHADOWS_CASCADE + _NORMALMAP _OCCLUSIONMAP _SHADOWS_SOFT + passType: 13 + - keywords: _ADDITIONAL_LIGHT_SHADOWS _EMISSION _FORWARD_PLUS _MAIN_LIGHT_SHADOWS_CASCADE + _NORMALMAP _OCCLUSIONMAP _SHADOWS_SOFT _SPECULARHIGHLIGHTS_OFF + passType: 13 + - keywords: _ADDITIONAL_LIGHT_SHADOWS _EMISSION _FORWARD_PLUS _MAIN_LIGHT_SHADOWS_CASCADE + _NORMALMAP _OCCLUSIONMAP _SHADOWS_SOFT _SPECULARHIGHLIGHTS_OFF _SPECULAR_SETUP + passType: 13 + - keywords: _ADDITIONAL_LIGHT_SHADOWS _EMISSION _FORWARD_PLUS _MAIN_LIGHT_SHADOWS_CASCADE + _NORMALMAP _OCCLUSIONMAP _SHADOWS_SOFT _SPECULAR_SETUP + passType: 13 + - keywords: _ADDITIONAL_LIGHT_SHADOWS _EMISSION _FORWARD_PLUS _MAIN_LIGHT_SHADOWS_CASCADE + _NORMALMAP _SHADOWS_SOFT + passType: 13 + - keywords: _ADDITIONAL_LIGHT_SHADOWS _EMISSION _FORWARD_PLUS _MAIN_LIGHT_SHADOWS_CASCADE + _NORMALMAP _SHADOWS_SOFT _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A + passType: 13 + - keywords: _ADDITIONAL_LIGHT_SHADOWS _EMISSION _FORWARD_PLUS _MAIN_LIGHT_SHADOWS_CASCADE + _NORMALMAP _SHADOWS_SOFT _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A _SPECULARHIGHLIGHTS_OFF + passType: 13 + - keywords: _ADDITIONAL_LIGHT_SHADOWS _EMISSION _FORWARD_PLUS _MAIN_LIGHT_SHADOWS_CASCADE + _NORMALMAP _SHADOWS_SOFT _SMOOTHNESS_TEXTURE_ALBEDO_CHANNEL_A _SPECULAR_SETUP + passType: 13 + - keywords: _ADDITIONAL_LIGHT_SHADOWS _EMISSION _FORWARD_PLUS _MAIN_LIGHT_SHADOWS_CASCADE + _NORMALMAP _SHADOWS_SOFT _SPECULARHIGHLIGHTS_OFF + passType: 13 + - keywords: _ADDITIONAL_LIGHT_SHADOWS _EMISSION _FORWARD_PLUS _MAIN_LIGHT_SHADOWS_CASCADE + _NORMALMAP _SHADOWS_SOFT _SPECULARHIGHLIGHTS_OFF _SPECULAR_SETUP + passType: 13 diff --git a/asset-bundle-converter/Assets/Renderer/UniversalRenderPipelineAsset.asset b/asset-bundle-converter/Assets/Renderer/UniversalRenderPipelineAsset.asset index 0d67ab45..2ba44f6d 100644 --- a/asset-bundle-converter/Assets/Renderer/UniversalRenderPipelineAsset.asset +++ b/asset-bundle-converter/Assets/Renderer/UniversalRenderPipelineAsset.asset @@ -12,8 +12,8 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: bf2edee5c58d82540a51f03df9d42094, type: 3} m_Name: UniversalRenderPipelineAsset m_EditorClassIdentifier: - k_AssetVersion: 9 - k_AssetPreviousVersion: 9 + k_AssetVersion: 11 + k_AssetPreviousVersion: 11 m_RendererType: 1 m_RendererData: {fileID: 0} m_RendererDataList: @@ -23,52 +23,92 @@ MonoBehaviour: m_RequireOpaqueTexture: 1 m_OpaqueDownsampling: 0 m_SupportsTerrainHoles: 0 - m_StoreActionsOptimization: 0 m_SupportsHDR: 1 + m_HDRColorBufferPrecision: 0 m_MSAA: 8 m_RenderScale: 1 m_UpscalingFilter: 0 m_FsrOverrideSharpness: 0 m_FsrSharpness: 0.92 + m_EnableLODCrossFade: 1 + m_LODCrossFadeDitheringType: 1 + m_ShEvalMode: 3 m_MainLightRenderingMode: 1 m_MainLightShadowsSupported: 1 m_MainLightShadowmapResolution: 2048 m_AdditionalLightsRenderingMode: 1 m_AdditionalLightsPerObjectLimit: 4 - m_AdditionalLightShadowsSupported: 0 - m_AdditionalLightsShadowmapResolution: 512 + m_AdditionalLightShadowsSupported: 1 + m_AdditionalLightsShadowmapResolution: 4096 m_AdditionalLightsShadowResolutionTierLow: 128 m_AdditionalLightsShadowResolutionTierMedium: 256 m_AdditionalLightsShadowResolutionTierHigh: 512 m_ReflectionProbeBlending: 0 m_ReflectionProbeBoxProjection: 0 - m_ShadowDistance: 50 - m_ShadowCascadeCount: 1 + m_ShadowDistance: 200 + m_ShadowCascadeCount: 4 m_Cascade2Split: 0.25 m_Cascade3Split: {x: 0.1, y: 0.3} - m_Cascade4Split: {x: 0.067, y: 0.2, z: 0.467} - m_CascadeBorder: 0.1 + m_Cascade4Split: {x: 0.049999997, y: 0.14999999, z: 0.29999998} + m_CascadeBorder: 0.42857143 m_ShadowDepthBias: 1 m_ShadowNormalBias: 1 - m_SoftShadowsSupported: 0 + m_AnyShadowsSupported: 1 + m_SoftShadowsSupported: 1 m_ConservativeEnclosingSphere: 0 m_NumIterationsEnclosingSphere: 64 + m_SoftShadowQuality: 3 m_AdditionalLightsCookieResolution: 2048 m_AdditionalLightsCookieFormat: 3 m_UseSRPBatcher: 1 m_SupportsDynamicBatching: 0 - m_MixedLightingSupported: 1 + m_MixedLightingSupported: 0 + m_SupportsLightCookies: 1 m_SupportsLightLayers: 0 m_DebugLevel: 0 + m_StoreActionsOptimization: 0 + m_EnableRenderGraph: 0 m_UseAdaptivePerformance: 1 m_ColorGradingMode: 0 m_ColorGradingLutSize: 32 m_UseFastSRGBLinearConversion: 0 + m_SupportDataDrivenLensFlare: 1 m_ShadowType: 1 m_LocalShadowsSupported: 0 m_LocalShadowsAtlasResolution: 256 m_MaxPixelLights: 0 m_ShadowAtlasResolution: 256 - m_ShaderVariantLogLevel: 0 m_VolumeFrameworkUpdateMode: 0 + m_Textures: + blueNoise64LTex: {fileID: 2800000, guid: e3d24661c1e055f45a7560c033dbb837, type: 3} + bayerMatrixTex: {fileID: 2800000, guid: f9ee4ed84c1d10c49aabb9b210b0fc44, type: 3} + m_PrefilteringModeMainLightShadows: 3 + m_PrefilteringModeAdditionalLight: 0 + m_PrefilteringModeAdditionalLightShadows: 2 + m_PrefilterXRKeywords: 1 + m_PrefilteringModeForwardPlus: 2 + m_PrefilteringModeDeferredRendering: 0 + m_PrefilteringModeScreenSpaceOcclusion: 0 + m_PrefilterDebugKeywords: 1 + m_PrefilterWriteRenderingLayers: 1 + m_PrefilterHDROutput: 1 + m_PrefilterSSAODepthNormals: 1 + m_PrefilterSSAOSourceDepthLow: 1 + m_PrefilterSSAOSourceDepthMedium: 1 + m_PrefilterSSAOSourceDepthHigh: 1 + m_PrefilterSSAOInterleaved: 1 + m_PrefilterSSAOBlueNoise: 1 + m_PrefilterSSAOSampleCountLow: 1 + m_PrefilterSSAOSampleCountMedium: 1 + m_PrefilterSSAOSampleCountHigh: 1 + m_PrefilterDBufferMRT1: 1 + m_PrefilterDBufferMRT2: 1 + m_PrefilterDBufferMRT3: 1 + m_PrefilterSoftShadowsQualityLow: 1 + m_PrefilterSoftShadowsQualityMedium: 1 + m_PrefilterSoftShadowsQualityHigh: 1 + m_PrefilterSoftShadows: 0 + m_PrefilterScreenCoord: 1 + m_PrefilterNativeRenderPass: 1 + m_ShaderVariantLogLevel: 0 m_ShadowCascades: 0 diff --git a/asset-bundle-converter/Assets/Renderer/UniversalRenderPipelineAsset_Renderer.asset b/asset-bundle-converter/Assets/Renderer/UniversalRenderPipelineAsset_Renderer.asset index 5bbc64de..1add8a01 100644 --- a/asset-bundle-converter/Assets/Renderer/UniversalRenderPipelineAsset_Renderer.asset +++ b/asset-bundle-converter/Assets/Renderer/UniversalRenderPipelineAsset_Renderer.asset @@ -14,11 +14,11 @@ MonoBehaviour: m_EditorClassIdentifier: debugShaders: debugReplacementPS: {fileID: 4800000, guid: cf852408f2e174538bcd9b7fda1c5ae7, type: 3} + hdrDebugViewPS: {fileID: 4800000, guid: 573620ae32aec764abd4d728906d2587, type: 3} m_RendererFeatures: [] m_RendererFeatureMap: m_UseNativeRenderPass: 0 postProcessData: {fileID: 11400000, guid: 41439944d30ece34e96484bdb6645b55, type: 2} - xrSystemData: {fileID: 11400000, guid: 60e1133243b97e347b653163a8c01b64, type: 2} shaders: blitPS: {fileID: 4800000, guid: c17132b1f77d20942aa75f8429c0f8bc, type: 3} copyDepthPS: {fileID: 4800000, guid: d6dae50ee9e1bfa4db75f19f99355220, type: 3} @@ -26,11 +26,14 @@ MonoBehaviour: samplingPS: {fileID: 4800000, guid: 04c410c9937594faa893a11dceb85f7e, type: 3} stencilDeferredPS: {fileID: 4800000, guid: e9155b26e1bc55942a41e518703fe304, type: 3} fallbackErrorPS: {fileID: 4800000, guid: e6e9a19c3678ded42a3bc431ebef7dbd, type: 3} + fallbackLoadingPS: {fileID: 4800000, guid: 7f888aff2ac86494babad1c2c5daeee2, type: 3} materialErrorPS: {fileID: 4800000, guid: 5fd9a8feb75a4b5894c241777f519d4e, type: 3} coreBlitPS: {fileID: 4800000, guid: 93446b5c5339d4f00b85c159e1159b7c, type: 3} coreBlitColorAndDepthPS: {fileID: 4800000, guid: d104b2fc1ca6445babb8e90b0758136b, type: 3} + blitHDROverlay: {fileID: 4800000, guid: a89bee29cffa951418fc1e2da94d1959, type: 3} cameraMotionVector: {fileID: 4800000, guid: c56b7e0d4c7cb484e959caeeedae9bbf, type: 3} objectMotionVector: {fileID: 4800000, guid: 7b3ede40266cd49a395def176e1bc486, type: 3} + dataDrivenLensFlare: {fileID: 4800000, guid: 6cda457ac28612740adb23da5d39ea92, type: 3} m_AssetVersion: 2 m_OpaqueLayerMask: serializedVersion: 2 @@ -46,10 +49,8 @@ MonoBehaviour: failOperation: 0 zFailOperation: 0 m_ShadowTransparentReceive: 1 - m_RenderingMode: 0 + m_RenderingMode: 2 m_DepthPrimingMode: 0 m_CopyDepthMode: 0 m_AccurateGbufferNormals: 0 - m_ClusteredRendering: 0 - m_TileSize: 32 m_IntermediateTextureMode: 1 diff --git a/asset-bundle-converter/Assets/UniversalRenderPipelineGlobalSettings.asset b/asset-bundle-converter/Assets/UniversalRenderPipelineGlobalSettings.asset index a996a2e6..cc13891e 100644 --- a/asset-bundle-converter/Assets/UniversalRenderPipelineGlobalSettings.asset +++ b/asset-bundle-converter/Assets/UniversalRenderPipelineGlobalSettings.asset @@ -12,7 +12,10 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 2ec995e51a6e251468d2a3fd8a686257, type: 3} m_Name: UniversalRenderPipelineGlobalSettings m_EditorClassIdentifier: - k_AssetVersion: 2 + k_AssetVersion: 3 + m_RenderingLayerNames: + - Default + m_ValidRenderingLayers: 255 lightLayerName0: Light Layer default lightLayerName1: Light Layer 1 lightLayerName2: Light Layer 2 @@ -22,6 +25,10 @@ MonoBehaviour: lightLayerName6: Light Layer 6 lightLayerName7: Light Layer 7 m_StripDebugVariants: 1 - m_StripUnusedPostProcessingVariants: 0 + m_StripUnusedPostProcessingVariants: 1 m_StripUnusedVariants: 1 + m_StripUnusedLODCrossFadeVariants: 1 + m_StripScreenCoordOverrideVariants: 1 supportRuntimeDebugDisplay: 0 + m_ShaderVariantLogLevel: 0 + m_ExportShaderVariants: 1 diff --git a/asset-bundle-converter/Assets/git-submodules/unity-shared-dependencies b/asset-bundle-converter/Assets/git-submodules/unity-shared-dependencies index b40c694f..6b28bf13 160000 --- a/asset-bundle-converter/Assets/git-submodules/unity-shared-dependencies +++ b/asset-bundle-converter/Assets/git-submodules/unity-shared-dependencies @@ -1 +1 @@ -Subproject commit b40c694fbe1136431fcf0b895ba0f5f55e7bff6b +Subproject commit 6b28bf1324d077dbe5939b7cb3057db20aed5b07 diff --git a/asset-bundle-converter/Packages/manifest.json b/asset-bundle-converter/Packages/manifest.json index c6b0a99f..953e56e8 100644 --- a/asset-bundle-converter/Packages/manifest.json +++ b/asset-bundle-converter/Packages/manifest.json @@ -3,13 +3,14 @@ "com.atteneder.draco": "4.0.2", "com.atteneder.ktx": "2.2.3", "com.cysharp.unitask": "https://github.com/Cysharp/UniTask.git?path=src/UniTask/Assets/Plugins/UniTask", - "com.unity.collab-proxy": "2.0.1", - "com.unity.ide.rider": "3.0.21", - "com.unity.ide.visualstudio": "2.0.17", + "com.unity.ai.navigation": "1.1.5", + "com.unity.collab-proxy": "2.2.0", + "com.unity.ide.rider": "3.0.25", + "com.unity.ide.visualstudio": "2.0.21", "com.unity.ide.vscode": "1.2.5", "com.unity.meshopt.decompress": "0.1.0-preview.5", - "com.unity.render-pipelines.universal": "12.1.10", - "com.unity.scriptablebuildpipeline": "1.20.2", + "com.unity.render-pipelines.universal": "14.0.9", + "com.unity.scriptablebuildpipeline": "1.21.20", "com.unity.test-framework": "2.0.1-pre.18", "io.sentry.unity": "https://github.com/getsentry/unity.git", "net.tnrd.nsubstitute": "https://github.com/decentraland/Unity3D-NSubstitute.git", diff --git a/asset-bundle-converter/Packages/packages-lock.json b/asset-bundle-converter/Packages/packages-lock.json index 31b8ee16..b0cc7426 100644 --- a/asset-bundle-converter/Packages/packages-lock.json +++ b/asset-bundle-converter/Packages/packages-lock.json @@ -25,8 +25,17 @@ "dependencies": {}, "hash": "305695ad5d194dda0d6b00777c2459202a1ef4ea" }, + "com.unity.ai.navigation": { + "version": "1.1.5", + "depth": 0, + "source": "registry", + "dependencies": { + "com.unity.modules.ai": "1.0.0" + }, + "url": "https://packages.unity.com" + }, "com.unity.burst": { - "version": "1.8.2", + "version": "1.8.9", "depth": 1, "source": "registry", "dependencies": { @@ -35,7 +44,7 @@ "url": "https://packages.unity.com" }, "com.unity.collab-proxy": { - "version": "2.0.1", + "version": "2.2.0", "depth": 0, "source": "registry", "dependencies": {}, @@ -49,7 +58,7 @@ "url": "https://packages.unity.com" }, "com.unity.ide.rider": { - "version": "3.0.21", + "version": "3.0.25", "depth": 0, "source": "registry", "dependencies": { @@ -58,7 +67,7 @@ "url": "https://packages.unity.com" }, "com.unity.ide.visualstudio": { - "version": "2.0.17", + "version": "2.0.21", "depth": 0, "source": "registry", "dependencies": { @@ -91,47 +100,48 @@ "url": "https://packages.unity.com" }, "com.unity.render-pipelines.core": { - "version": "12.1.10", + "version": "14.0.9", "depth": 1, "source": "builtin", "dependencies": { "com.unity.ugui": "1.0.0", "com.unity.modules.physics": "1.0.0", + "com.unity.modules.terrain": "1.0.0", "com.unity.modules.jsonserialize": "1.0.0" } }, "com.unity.render-pipelines.universal": { - "version": "12.1.10", + "version": "14.0.9", "depth": 0, "source": "builtin", "dependencies": { "com.unity.mathematics": "1.2.1", - "com.unity.burst": "1.8.2", - "com.unity.render-pipelines.core": "12.1.10", - "com.unity.shadergraph": "12.1.10" + "com.unity.burst": "1.8.9", + "com.unity.render-pipelines.core": "14.0.9", + "com.unity.shadergraph": "14.0.9" } }, "com.unity.scriptablebuildpipeline": { - "version": "1.20.2", + "version": "1.21.20", "depth": 0, "source": "registry", "dependencies": {}, "url": "https://packages.unity.com" }, "com.unity.searcher": { - "version": "4.9.1", + "version": "4.9.2", "depth": 2, "source": "registry", "dependencies": {}, "url": "https://packages.unity.com" }, "com.unity.shadergraph": { - "version": "12.1.10", + "version": "14.0.9", "depth": 1, "source": "builtin", "dependencies": { - "com.unity.render-pipelines.core": "12.1.10", - "com.unity.searcher": "4.9.1" + "com.unity.render-pipelines.core": "14.0.9", + "com.unity.searcher": "4.9.2" } }, "com.unity.test-framework": { @@ -168,6 +178,12 @@ "dependencies": {}, "hash": "cdd11bb74398afae73e71b6fe01114f597a6ce08" }, + "com.unity.modules.ai": { + "version": "1.0.0", + "depth": 1, + "source": "builtin", + "dependencies": {} + }, "com.unity.modules.animation": { "version": "1.0.0", "depth": 0, @@ -247,6 +263,12 @@ "com.unity.modules.imageconversion": "1.0.0" } }, + "com.unity.modules.terrain": { + "version": "1.0.0", + "depth": 2, + "source": "builtin", + "dependencies": {} + }, "com.unity.modules.ui": { "version": "1.0.0", "depth": 0, diff --git a/asset-bundle-converter/ProjectSettings/GraphicsSettings.asset b/asset-bundle-converter/ProjectSettings/GraphicsSettings.asset index 9707b566..e1d68385 100644 --- a/asset-bundle-converter/ProjectSettings/GraphicsSettings.asset +++ b/asset-bundle-converter/ProjectSettings/GraphicsSettings.asset @@ -3,7 +3,7 @@ --- !u!30 &1 GraphicsSettings: m_ObjectHideFlags: 0 - serializedVersion: 14 + serializedVersion: 15 m_Deferred: m_Mode: 1 m_Shader: {fileID: 69, guid: 0000000000000000f000000000000000, type: 0} @@ -13,9 +13,6 @@ GraphicsSettings: m_ScreenSpaceShadows: m_Mode: 1 m_Shader: {fileID: 64, guid: 0000000000000000f000000000000000, type: 0} - m_LegacyDeferred: - m_Mode: 1 - m_Shader: {fileID: 63, guid: 0000000000000000f000000000000000, type: 0} m_DepthNormals: m_Mode: 1 m_Shader: {fileID: 62, guid: 0000000000000000f000000000000000, type: 0} @@ -49,10 +46,11 @@ GraphicsSettings: m_LightmapStripping: 1 m_FogStripping: 1 m_InstancingStripping: 0 + m_BrgStripping: 0 m_LightmapKeepPlain: 0 m_LightmapKeepDirCombined: 0 m_LightmapKeepDynamicPlain: 0 - m_LightmapKeepDynamicDirCombined: 1 + m_LightmapKeepDynamicDirCombined: 0 m_LightmapKeepShadowMask: 0 m_LightmapKeepSubtractive: 0 m_FogKeepLinear: 1 @@ -65,5 +63,6 @@ GraphicsSettings: m_LogWhenShaderIsCompiled: 0 m_SRPDefaultSettings: UnityEngine.Rendering.Universal.UniversalRenderPipeline: {fileID: 11400000, guid: 235a1eb1677011447b7e019d325a8a0e, type: 2} - m_CameraRelativeLightCulling: 0 - m_CameraRelativeShadowCulling: 0 + m_LightProbeOutsideHullStrategy: 0 + m_CameraRelativeLightCulling: 1 + m_CameraRelativeShadowCulling: 1 diff --git a/asset-bundle-converter/ProjectSettings/ProjectSettings.asset b/asset-bundle-converter/ProjectSettings/ProjectSettings.asset index b296ea3d..2473f577 100644 --- a/asset-bundle-converter/ProjectSettings/ProjectSettings.asset +++ b/asset-bundle-converter/ProjectSettings/ProjectSettings.asset @@ -3,7 +3,7 @@ --- !u!129 &1 PlayerSettings: m_ObjectHideFlags: 0 - serializedVersion: 23 + serializedVersion: 24 productGUID: cf441fa258fb0da419b72dd5903be8db AndroidProfiler: 0 AndroidFilterTouchesWhenObscured: 0 @@ -177,10 +177,10 @@ PlayerSettings: StripUnusedMeshComponents: 0 VertexChannelCompressionMask: 4054 iPhoneSdkVersion: 988 - iOSTargetOSVersionString: 11.0 + iOSTargetOSVersionString: 12.0 tvOSSdkVersion: 0 tvOSRequireExtendedGameController: 0 - tvOSTargetOSVersionString: 11.0 + tvOSTargetOSVersionString: 12.0 uIPrerenderedIcon: 0 uIRequiresPersistentWiFi: 0 uIRequiresFullScreen: 1 @@ -450,7 +450,6 @@ PlayerSettings: switchReleaseVersion: 0 switchDisplayVersion: 1.0.0 switchStartupUserAccount: 0 - switchTouchScreenUsage: 0 switchSupportedLanguagesMask: 0 switchLogoType: 0 switchApplicationErrorCodeCategory: @@ -492,6 +491,7 @@ PlayerSettings: switchNativeFsCacheSize: 32 switchIsHoldTypeHorizontal: 0 switchSupportedNpadCount: 8 + switchEnableTouchScreen: 1 switchSocketConfigEnabled: 0 switchTcpInitialSendBufferSize: 32 switchTcpInitialReceiveBufferSize: 64 @@ -504,6 +504,7 @@ PlayerSettings: switchNetworkInterfaceManagerInitializeEnabled: 1 switchPlayerConnectionEnabled: 1 switchUseNewStyleFilepaths: 0 + switchUseLegacyFmodPriorities: 1 switchUseMicroSleepForYield: 1 switchEnableRamDiskSupport: 0 switchMicroSleepForYieldTime: 25 @@ -612,13 +613,26 @@ PlayerSettings: scriptingBackend: {} il2cppCompilerConfiguration: WebGL: 2 - managedStrippingLevel: {} + managedStrippingLevel: + EmbeddedLinux: 1 + GameCoreScarlett: 1 + GameCoreXboxOne: 1 + Lumin: 1 + Nintendo Switch: 1 + PS4: 1 + PS5: 1 + Stadia: 1 + WebGL: 1 + Windows Store Apps: 1 + XboxOne: 1 + iPhone: 1 + tvOS: 1 incrementalIl2cppBuild: {} suppressCommonWarnings: 1 allowUnsafeCode: 0 useDeterministicCompilation: 1 enableRoslynAnalyzers: 1 - selectedPlatform: 2 + selectedPlatform: 0 additionalIl2CppArgs: scriptingRuntimeVersion: 1 gcIncremental: 1 diff --git a/asset-bundle-converter/ProjectSettings/ProjectVersion.txt b/asset-bundle-converter/ProjectSettings/ProjectVersion.txt index f8251a7a..e4eac159 100644 --- a/asset-bundle-converter/ProjectSettings/ProjectVersion.txt +++ b/asset-bundle-converter/ProjectSettings/ProjectVersion.txt @@ -1,2 +1,2 @@ -m_EditorVersion: 2021.3.22f1 -m_EditorVersionWithRevision: 2021.3.22f1 (b6c551784ba3) +m_EditorVersion: 2022.3.12f1 +m_EditorVersionWithRevision: 2022.3.12f1 (4fe6e059c7ef) diff --git a/asset-bundle-converter/ProjectSettings/QualitySettings.asset b/asset-bundle-converter/ProjectSettings/QualitySettings.asset index 46bbdd1f..3125f3b3 100644 --- a/asset-bundle-converter/ProjectSettings/QualitySettings.asset +++ b/asset-bundle-converter/ProjectSettings/QualitySettings.asset @@ -6,7 +6,7 @@ QualitySettings: serializedVersion: 5 m_CurrentQuality: 5 m_QualitySettings: - - serializedVersion: 2 + - serializedVersion: 3 name: Very Low pixelLightCount: 0 shadows: 0 @@ -19,16 +19,19 @@ QualitySettings: shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} shadowmaskMode: 0 skinWeights: 1 - textureQuality: 1 + globalTextureMipmapLimit: 1 + textureMipmapLimitSettings: [] anisotropicTextures: 0 antiAliasing: 0 softParticles: 0 softVegetation: 0 realtimeReflectionProbes: 0 billboardsFaceCameraPosition: 0 + useLegacyDetailDistribution: 1 vSyncCount: 0 lodBias: 0.3 maximumLODLevel: 0 + enableLODCrossFade: 1 streamingMipmapsActive: 0 streamingMipmapsAddAllCameras: 1 streamingMipmapsMemoryBudget: 512 @@ -41,8 +44,17 @@ QualitySettings: asyncUploadPersistentBuffer: 1 resolutionScalingFixedDPIFactor: 1 customRenderPipeline: {fileID: 0} + terrainQualityOverrides: 0 + terrainPixelError: 1 + terrainDetailDensityScale: 1 + terrainBasemapDistance: 1000 + terrainDetailDistance: 80 + terrainTreeDistance: 5000 + terrainBillboardStart: 50 + terrainFadeLength: 5 + terrainMaxTrees: 50 excludedTargetPlatforms: [] - - serializedVersion: 2 + - serializedVersion: 3 name: Low pixelLightCount: 0 shadows: 0 @@ -55,16 +67,19 @@ QualitySettings: shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} shadowmaskMode: 0 skinWeights: 2 - textureQuality: 0 + globalTextureMipmapLimit: 0 + textureMipmapLimitSettings: [] anisotropicTextures: 0 antiAliasing: 0 softParticles: 0 softVegetation: 0 realtimeReflectionProbes: 0 billboardsFaceCameraPosition: 0 + useLegacyDetailDistribution: 1 vSyncCount: 0 lodBias: 0.4 maximumLODLevel: 0 + enableLODCrossFade: 1 streamingMipmapsActive: 0 streamingMipmapsAddAllCameras: 1 streamingMipmapsMemoryBudget: 512 @@ -77,8 +92,17 @@ QualitySettings: asyncUploadPersistentBuffer: 1 resolutionScalingFixedDPIFactor: 1 customRenderPipeline: {fileID: 0} + terrainQualityOverrides: 0 + terrainPixelError: 1 + terrainDetailDensityScale: 1 + terrainBasemapDistance: 1000 + terrainDetailDistance: 80 + terrainTreeDistance: 5000 + terrainBillboardStart: 50 + terrainFadeLength: 5 + terrainMaxTrees: 50 excludedTargetPlatforms: [] - - serializedVersion: 2 + - serializedVersion: 3 name: Medium pixelLightCount: 1 shadows: 1 @@ -91,16 +115,19 @@ QualitySettings: shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} shadowmaskMode: 0 skinWeights: 2 - textureQuality: 0 + globalTextureMipmapLimit: 0 + textureMipmapLimitSettings: [] anisotropicTextures: 1 antiAliasing: 0 softParticles: 0 softVegetation: 0 realtimeReflectionProbes: 0 billboardsFaceCameraPosition: 0 + useLegacyDetailDistribution: 1 vSyncCount: 1 lodBias: 0.7 maximumLODLevel: 0 + enableLODCrossFade: 1 streamingMipmapsActive: 0 streamingMipmapsAddAllCameras: 1 streamingMipmapsMemoryBudget: 512 @@ -113,8 +140,17 @@ QualitySettings: asyncUploadPersistentBuffer: 1 resolutionScalingFixedDPIFactor: 1 customRenderPipeline: {fileID: 0} + terrainQualityOverrides: 0 + terrainPixelError: 1 + terrainDetailDensityScale: 1 + terrainBasemapDistance: 1000 + terrainDetailDistance: 80 + terrainTreeDistance: 5000 + terrainBillboardStart: 50 + terrainFadeLength: 5 + terrainMaxTrees: 50 excludedTargetPlatforms: [] - - serializedVersion: 2 + - serializedVersion: 3 name: High pixelLightCount: 2 shadows: 2 @@ -127,16 +163,19 @@ QualitySettings: shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} shadowmaskMode: 1 skinWeights: 2 - textureQuality: 0 + globalTextureMipmapLimit: 0 + textureMipmapLimitSettings: [] anisotropicTextures: 2 antiAliasing: 8 softParticles: 0 softVegetation: 1 realtimeReflectionProbes: 1 billboardsFaceCameraPosition: 1 + useLegacyDetailDistribution: 1 vSyncCount: 1 lodBias: 1 maximumLODLevel: 0 + enableLODCrossFade: 1 streamingMipmapsActive: 0 streamingMipmapsAddAllCameras: 1 streamingMipmapsMemoryBudget: 512 @@ -149,8 +188,17 @@ QualitySettings: asyncUploadPersistentBuffer: 1 resolutionScalingFixedDPIFactor: 1 customRenderPipeline: {fileID: 0} + terrainQualityOverrides: 0 + terrainPixelError: 1 + terrainDetailDensityScale: 1 + terrainBasemapDistance: 1000 + terrainDetailDistance: 80 + terrainTreeDistance: 5000 + terrainBillboardStart: 50 + terrainFadeLength: 5 + terrainMaxTrees: 50 excludedTargetPlatforms: [] - - serializedVersion: 2 + - serializedVersion: 3 name: Very High pixelLightCount: 3 shadows: 2 @@ -163,16 +211,19 @@ QualitySettings: shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} shadowmaskMode: 1 skinWeights: 4 - textureQuality: 0 + globalTextureMipmapLimit: 0 + textureMipmapLimitSettings: [] anisotropicTextures: 2 antiAliasing: 2 softParticles: 1 softVegetation: 1 realtimeReflectionProbes: 1 billboardsFaceCameraPosition: 1 + useLegacyDetailDistribution: 1 vSyncCount: 1 lodBias: 1.5 maximumLODLevel: 0 + enableLODCrossFade: 1 streamingMipmapsActive: 0 streamingMipmapsAddAllCameras: 1 streamingMipmapsMemoryBudget: 512 @@ -185,8 +236,17 @@ QualitySettings: asyncUploadPersistentBuffer: 1 resolutionScalingFixedDPIFactor: 1 customRenderPipeline: {fileID: 0} + terrainQualityOverrides: 0 + terrainPixelError: 1 + terrainDetailDensityScale: 1 + terrainBasemapDistance: 1000 + terrainDetailDistance: 80 + terrainTreeDistance: 5000 + terrainBillboardStart: 50 + terrainFadeLength: 5 + terrainMaxTrees: 50 excludedTargetPlatforms: [] - - serializedVersion: 2 + - serializedVersion: 3 name: Ultra pixelLightCount: 4 shadows: 2 @@ -199,16 +259,19 @@ QualitySettings: shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} shadowmaskMode: 1 skinWeights: 4 - textureQuality: 0 + globalTextureMipmapLimit: 0 + textureMipmapLimitSettings: [] anisotropicTextures: 2 antiAliasing: 8 softParticles: 1 softVegetation: 1 realtimeReflectionProbes: 1 billboardsFaceCameraPosition: 1 + useLegacyDetailDistribution: 1 vSyncCount: 1 lodBias: 2 maximumLODLevel: 0 + enableLODCrossFade: 1 streamingMipmapsActive: 0 streamingMipmapsAddAllCameras: 1 streamingMipmapsMemoryBudget: 512 @@ -220,8 +283,18 @@ QualitySettings: asyncUploadBufferSize: 16 asyncUploadPersistentBuffer: 1 resolutionScalingFixedDPIFactor: 1 - customRenderPipeline: {fileID: 0} + customRenderPipeline: {fileID: 11400000, guid: f0dbb4c5151015844b60ed654cb78d6d, type: 2} + terrainQualityOverrides: 0 + terrainPixelError: 1 + terrainDetailDensityScale: 1 + terrainBasemapDistance: 1000 + terrainDetailDistance: 80 + terrainTreeDistance: 5000 + terrainBillboardStart: 50 + terrainFadeLength: 5 + terrainMaxTrees: 50 excludedTargetPlatforms: [] + m_TextureMipmapLimitGroupNames: [] m_PerPlatformDefaultQuality: Android: 2 Lumin: 5 diff --git a/asset-bundle-converter/ProjectSettings/ShaderGraphSettings.asset b/asset-bundle-converter/ProjectSettings/ShaderGraphSettings.asset index 9b28428b..3250b068 100644 --- a/asset-bundle-converter/ProjectSettings/ShaderGraphSettings.asset +++ b/asset-bundle-converter/ProjectSettings/ShaderGraphSettings.asset @@ -12,5 +12,6 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: de02f9e1d18f588468e474319d09a723, type: 3} m_Name: m_EditorClassIdentifier: + shaderVariantLimit: 128 customInterpolatorErrorThreshold: 32 customInterpolatorWarningThreshold: 16 diff --git a/asset-bundle-converter/ProjectSettings/URPProjectSettings.asset b/asset-bundle-converter/ProjectSettings/URPProjectSettings.asset index c1f118ad..cd7fd8c6 100644 --- a/asset-bundle-converter/ProjectSettings/URPProjectSettings.asset +++ b/asset-bundle-converter/ProjectSettings/URPProjectSettings.asset @@ -12,4 +12,4 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 247994e1f5a72c2419c26a37e9334c01, type: 3} m_Name: m_EditorClassIdentifier: - m_LastMaterialVersion: 5 + m_LastMaterialVersion: 7