From 697db443ac20f38dd3c81203de2814dda066f9cb Mon Sep 17 00:00:00 2001 From: Wojtek Figat Date: Thu, 11 Jan 2024 17:58:02 +0100 Subject: [PATCH 1/2] Skip astc on macOS x64 due to precompiled lib with too new clang ver --- .../Tools/TextureTool/TextureTool.Build.cs | 2 +- Source/ThirdParty/astc/astc.Build.cs | 16 ++++++++++++++++ 2 files changed, 17 insertions(+), 1 deletion(-) diff --git a/Source/Engine/Tools/TextureTool/TextureTool.Build.cs b/Source/Engine/Tools/TextureTool/TextureTool.Build.cs index a6a68617c..f40f28e64 100644 --- a/Source/Engine/Tools/TextureTool/TextureTool.Build.cs +++ b/Source/Engine/Tools/TextureTool/TextureTool.Build.cs @@ -58,7 +58,7 @@ public class TextureTool : EngineModule options.PrivateDependencies.Add("bc7enc16"); } } - if (options.Target.IsEditor && options.Platform.Target != TargetPlatform.Linux) // TODO: add ASTC for Editor on Linux + if (options.Target.IsEditor && astc.IsSupported(options)) { // ASTC for mobile (iOS and Android) options.SourceFiles.Add(Path.Combine(FolderPath, "TextureTool.astc.cpp")); diff --git a/Source/ThirdParty/astc/astc.Build.cs b/Source/ThirdParty/astc/astc.Build.cs index 237d0ac81..90494402b 100644 --- a/Source/ThirdParty/astc/astc.Build.cs +++ b/Source/ThirdParty/astc/astc.Build.cs @@ -8,6 +8,22 @@ using Flax.Build.NativeCpp; /// public class astc : DepsModule { + /// + /// Returns true if can use astc lib for a given build setup. + /// + public static bool IsSupported(BuildOptions options) + { + switch (options.Platform.Target) + { + case TargetPlatform.Windows: + return true; + case TargetPlatform.Mac: + return options.Architecture == TargetArchitecture.ARM64; + default: + return false; + } + } + /// public override void Init() { From 1da803c5fb486d747b0521043a8c369bf4c62996 Mon Sep 17 00:00:00 2001 From: Wojtek Figat Date: Thu, 11 Jan 2024 17:59:34 +0100 Subject: [PATCH 2/2] Fix compilation without GPU resources naming enabled --- Source/Engine/Graphics/Textures/StreamingTexture.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/Source/Engine/Graphics/Textures/StreamingTexture.cpp b/Source/Engine/Graphics/Textures/StreamingTexture.cpp index bb4273826..9dc1ef50c 100644 --- a/Source/Engine/Graphics/Textures/StreamingTexture.cpp +++ b/Source/Engine/Graphics/Textures/StreamingTexture.cpp @@ -297,7 +297,11 @@ Task* StreamingTexture::UpdateAllocation(int32 residency) if (texture->Init(desc)) { Streaming.Error = true; - LOG(Error, "Cannot allocate texture {0}.", texture->GetName()); +#if GPU_ENABLE_RESOURCE_NAMING + LOG(Error, "Cannot allocate texture {0}", texture->GetName()); +#else + LOG(Error, "Cannot allocate texture"); +#endif } if (allocatedResidency != 0) {