// Copyright Epic Games, Inc. All Rights Reserved. /*============================================================================= LinuxTargetSettings.h: Declares the ULinuxTargetSettings class. =============================================================================*/ #pragma once #include "CoreMinimal.h" #include "UObject/ObjectMacros.h" #include "UObject/Object.h" #include "LinuxTargetSettings.generated.h" /** * Implements the settings for the Linux target platform. */ UCLASS(MinimalAPI, config=Engine, defaultconfig) class ULinuxTargetSettings : public UObject { public: GENERATED_UCLASS_BODY() /** Which of the currently enabled spatialization plugins to use. */ UPROPERTY(config, EditAnywhere, Category = "Audio") FString SpatializationPlugin; /** Which of the currently enabled source data override plugins to use. */ UPROPERTY(config, EditAnywhere, Category = "Audio") FString SourceDataOverridePlugin; /** Which of the currently enabled reverb plugins to use. */ UPROPERTY(config, EditAnywhere, Category = "Audio") FString ReverbPlugin; /** Which of the currently enabled occlusion plugins to use. */ UPROPERTY(config, EditAnywhere, Category = "Audio") FString OcclusionPlugin; /** Quality Level to COOK SoundCues at (if set, all other levels will be stripped by the cooker). */ UPROPERTY(config, EditAnywhere, Category = "Audio|CookOverrides", meta = (DisplayName = "Sound Cue Cook Quality")) int32 SoundCueCookQualityIndex = INDEX_NONE; /** * The collection of RHI's we want to support on this platform. * This is not always the full list of RHI we can support. */ UPROPERTY(EditAnywhere, config, Category=Rendering) TArray TargetedRHIs; /** Whether to include Nanite Fallback Meshes in cooked builds for Linux. Can be overriden for specific assets in Static Mesh Editor. */ UPROPERTY(config, EditAnywhere, Category = "Renderer", meta = (DisplayName = "Generate Nanite Fallback Meshes", ConfigRestartRequired = true)) bool bGenerateNaniteFallbackMeshes = true; void virtual OverrideConfigSection(FString& InOutSectionName) override { InOutSectionName = TEXT("/Script/LinuxTargetPlatform.LinuxTargetSettings"); } };