Fix Graphics module warnings to be sent once

This commit is contained in:
Wojtek Figat
2021-02-23 18:10:57 +01:00
parent 6f40c66b31
commit 12725ca4e1

View File

@@ -32,6 +32,9 @@ public abstract class GraphicsDeviceBaseModule : EngineModule
/// </summary>
public class Graphics : EngineModule
{
private static bool _lodMissingVulkanSDK;
private static bool _lodMissingWindowsSDK;
/// <inheritdoc />
public override void Setup(BuildOptions options)
{
@@ -45,12 +48,12 @@ public class Graphics : EngineModule
if (VulkanSdk.Instance.IsValid)
options.PrivateDependencies.Add("GraphicsDeviceVulkan");
else
Log.Warning("Building for Windows without Vulkan rendering backend (Vulkan SDK is missing)");
Log.WarningOnce("Building for Windows without Vulkan rendering backend (Vulkan SDK is missing)", ref _lodMissingVulkanSDK);
var windowsToolchain = options.Toolchain as Flax.Build.Platforms.WindowsToolchain;
if (windowsToolchain != null && windowsToolchain.SDK != Flax.Build.Platforms.WindowsPlatformSDK.v8_1)
options.PrivateDependencies.Add("GraphicsDeviceDX12");
else
Log.Warning("Building for Windows without DirectX 12 rendering backend (Windows 10 SDK is required)");
Log.WarningOnce("Building for Windows without DirectX 12 rendering backend (Windows 10 SDK is required)", ref _lodMissingWindowsSDK);
break;
case TargetPlatform.XboxOne:
case TargetPlatform.UWP:
@@ -64,7 +67,7 @@ public class Graphics : EngineModule
if (VulkanSdk.Instance.IsValid)
options.PrivateDependencies.Add("GraphicsDeviceVulkan");
else
Log.Warning("Building for Linux without Vulkan rendering backend (Vulkan SDK is missing)");
Log.WarningOnce("Building for Linux without Vulkan rendering backend (Vulkan SDK is missing)", ref _lodMissingVulkanSDK);
break;
case TargetPlatform.PS4:
options.PrivateDependencies.Add("GraphicsDevicePS4");