Files
UnrealEngineUWP/Engine/Source/Runtime/Android/AndroidRuntimeSettings/Classes/AndroidRuntimeSettings.h
Chris Babcock 2b886e2c93 Copying //UE4/Dev-Mobile to //UE4/Main (Source: //UE4/Dev-Mobile @ 2945914)
==========================
MAJOR FEATURES + CHANGES
==========================

Change 2911743 on 2016/03/16 by Allan.Bentham

	Fix broken tonemapper when using 32bpp encoded HDR. Fixes UE-28359
	Cleaned up some ronin integration hacks from ronin.

Change 2912053 on 2016/03/16 by Peter.Sauerbrei

	disable Vulkan in Win32 builds for now
	#codereview rolando.caloca
	#jira UE-28465

Change 2914512 on 2016/03/18 by Dmitriy.Dyomin

	Fixed crash on Nexus5 with Android 4.4.2 when TonemapperFilm is enabled

Change 2914944 on 2016/03/18 by Allan.Bentham

	Fix es2 tonemap flip. Fixes UE-25148

Change 2915248 on 2016/03/18 by Chris.Babcock

	Updates to support NDK r11
	#jira UE-28529
	#ue4
	#android

Change 2919192 on 2016/03/22 by Chris.Babcock

	NDK level set above 19 forces minSdkVersion to 21 or above to prevent installing on unsupported devices
	#jira UE-28408
	#ue4
	#android
	#codereview Jack.Porter

Change 2919591 on 2016/03/23 by Allan.Bentham

	Merge ronin's Gaussian DoF to 4.11's dof changes.

	Gaussian DoF will use a single recombine pass with ES31 devices or if no separate translucency is used on SM4+.
	Added permutation to exclude separate translucency from Gaussian recombine shader when not in use.

	#codereview martin.mittring

Change 2920758 on 2016/03/24 by Dmitriy.Dyomin

	Fixed: shifting lighting samples octree
	https://udn.unrealengine.com/questions/276026/lighting-samples-visualization-not-working-with-le.html

Change 2920793 on 2016/03/24 by Dmitriy.Dyomin

	Fixed: When sub-level set to be unloaded but with visbility state set to true, ULevelStreaming::IsStreamingStatePending returns wrong value
	#jira UE-26426

Change 2920981 on 2016/03/24 by Dmitriy.Dyomin

	GPU particles support for iOS Metal (A8+ only)
	#jira UE-11067
	#jira UE-28514
	#codereview Jack.Porter

Change 2921383 on 2016/03/24 by Allan.Bentham

	Fix inverted image on device when framebuffer fetch/bViewRectSource is not used.
	#codereview jack.porter

Change 2925694 on 2016/03/29 by Dmitriy.Dyomin

	Fixed: GPU particles and bloom on S7 Mali

Change 2927065 on 2016/03/29 by Chris.Babcock

	Set the DT_SONAME field in linker (stops warning toast)
	#ue4
	#android
	#codereview Jack.Porter

Change 2927375 on 2016/03/30 by Jack.Porter

	Fixed localization for placement mode Cube, Sphere, Cylinder and Cone

Change 2928643 on 2016/03/30 by Jack.Porter

	Fixed bug introdued by Ronin merge with DepthOfFieldScale setting being locked for BokehDOF

	#code_review: allan.bentham

Change 2932773 on 2016/04/04 by Jack.Porter

	Reapply android Vulkan version fixes

Change 2932853 on 2016/04/05 by Jack.Porter

	Enable VULKAN_CLEAR_SURFACE_ON_CREATE on Android to prevent assertion

Change 2932998 on 2016/04/05 by Jack.Porter

	Native web browser widget on iOS

	#jira UEMOB-20

Change 2933420 on 2016/04/05 by Chris.Babcock

	Removed hard-coded bUseUnityBuild in UBT for Android (contributed by kosz78)
	#jira UE-29066
	#pr #2236
	#ue4
	#android

Change 2934315 on 2016/04/05 by Chris.Babcock

	Allow Android to act as server with OnlineSubsystemNull (contributed by psychogony)
	#jira UE-23937
	#PR #1820
	#ue4
	#android
	#codereview Ryan.Gerleve

Change 2935038 on 2016/04/06 by Chris.Babcock

	Fix OpenGLES31 compile error
	#ue4
	#android
	#codereview Jack.Porter

Change 2936288 on 2016/04/07 by Allan.Bentham

	Planar reflection captures for mobile. (UE-27426)
	Added mobile planar reflection flag to material.

	#codereview jack.porter, daniel.wright

Change 2936297 on 2016/04/07 by Allan.Bentham

	Missed file. Planar reflection captures for mobile. (UE-27426)
	#codereview jack.porter, daniel.wright

Change 2937763 on 2016/04/08 by Dmitriy.Dyomin

	Fix InstancedStaticMesh batches for ES2 (contributed by Grimmick)
	GitHub #2031
	#jira UE-26576
	#codereview Jack.Porter

Change 2937863 on 2016/04/08 by Jack.Porter

	Merged Ronin CLs 2840392, 2860028

	Allow vertex texture fetches on ES2 (requires absolute mip level)

Change 2938461 on 2016/04/08 by Chris.Babcock

	Write Android uninstall batch files
	#ue4
	#android

Change 2939679 on 2016/04/11 by Allan.Bentham

	Remove bStationaryLightUsesCSMForMovableShadows from light component's UI.
	renamed proxy equivalent and infer its state from Inset Shadows For Movable Objects

	#codereview jack.porter, daniel.wright

Change 2939887 on 2016/04/11 by Chris.Babcock

	Android ARM64 libraries
	#jira UEPLAT-1268
	#ue4
	#android

Change 2940125 on 2016/04/11 by Chris.Babcock

	Added requirements to Arm64 and x86_64 tooltips

Change 2941051 on 2016/04/12 by Allan.Bentham

	Fix for inverted RG channels when using filmic tonemapper with ES2.
	#codereview jack.porter

Change 2942523 on 2016/04/13 by Chris.Babcock

	Add cxa_demangle build.cs instead of hiding dependency in UEBuildAndroid.cs
	#ue4
	#android
	#codereview Josh.Adams

Change 2942578 on 2016/04/13 by Chris.Babcock

	Add cxademangle dependency to Core for Android
	#ue4
	#android
	#codereview Josh.Adams

Change 2942997 on 2016/04/13 by Chris.Babcock

	Run Ant with -quiet first and run again without if there is an error for the log
	#ue4
	#android
	#codereview Josh.Adams

Change 2943320 on 2016/04/14 by Jack.Porter

	Fixed planar reflection merge errors

Change 2943352 on 2016/04/14 by Jack.Porter

	Fix NAME_VULKAN_ES3_1_ANDROID shader format name

	#codereview: Rolando.Coloca

Change 2943367 on 2016/04/14 by Dmitriy.Dyomin

	Added cvars to add or strip specific GL extensions from a driver reported extensions string
	#jira UE-29467

Change 2943425 on 2016/04/14 by Dmitriy.Dyomin

	Better logging of MobileHDR mode

Change 2943461 on 2016/04/14 by Dmitriy.Dyomin

	Fixing HDR rendering and bloom on Galaxy S7

Change 2943493 on 2016/04/14 by Dmitriy.Dyomin

	Better HDR fix for devices with ES3 support

Change 2943855 on 2016/04/14 by Allan.Bentham

	Mobile planar reflections.
	 - currently only supports opaque materials
	#codereview jack.porter

Change 2944721 on 2016/04/14 by Chris.Babcock

	Allow Vulkan-only Android builds
	#ue4
	#android
	#codereview Allan.Bentham,Jack.Porter

Change 2944771 on 2016/04/14 by Dmitriy.Dyomin

	Fixed: mesh particles crash in ES2

Change 2944827 on 2016/04/15 by Dmitriy.Dyomin

	Fixed: GPU particles not working on S6 with Android 6.0.1

Change 2944836 on 2016/04/15 by Jack.Porter

	Disable FX system calls in forward renderer when particles showflag is off

Change 2944840 on 2016/04/15 by Jack.Porter

	Re-enabled non-radial TDeferredLightVS on ES2 for planar and put  #if FEATURE_LEVEL >= FEATURE_LEVEL_SM4  around the radial shader code which was tripping up ES2.

	#codereview: Allan.Bentham, Chris.Babcock, Daniel.Wright

Change 2944914 on 2016/04/15 by Jack.Porter

	Device profiles to detect Galaxy S7 Mali and Adreno variants in Vulkan mode

Change 2945020 on 2016/04/15 by Gareth.Martin

	Cloning changes across from Dev-Landscape to Dev-Mobile due to feature deadline for 4.12.

	Change 2943560 on 2016/04/14 by Gareth.Martin

	        Added ability to expand landscape bounds
	        #jira UE-28928
	        #jira UE-25230

	Change 2943538 on 2016/04/14 by Gareth.Martin

	        Fix a crash with saving a level >2GB in size.
	        There may still be other crashes with >2GB levels.

	Change 2943477 on 2016/04/14 by Gareth.Martin

	        Fixed LODFalloff setting on landscape getting reset when using the "Change Landscape Component Size" tool
	        Also moved all the LOD settings together in LandscapeProxy.h because it was messy

	Change 2942113 on 2016/04/13 by Gareth.Martin

	        Updating comment to clarify behaviour of Foliage Align-To-Normal when Random-Yaw is disabled.

	Change 2941030 on 2016/04/12 by Gareth.Martin

	        Cleanup and commenting

	Change 2940994 on 2016/04/12 by Gareth.Martin

	        Implement random scale option for Landscape Grass.
	        #jira UE-25743

	Change 2940993 on 2016/04/12 by Gareth.Martin

	        Remove unused BuildFlatTree function from HierarchicalInstancedStaticMeshComponent

	Change 2940150 on 2016/04/11 by Gareth.Martin

	        Harden UHierarchicalInstancedStaticMeshComponent::UpdateInstanceTransform

	Change 2940101 on 2016/04/11 by Gareth.Martin

	        Additional checks for bad static mesh when building the HISMC tree

Change 2945560 on 2016/04/15 by Rolando.Caloca

	DM - Fix for newer Vulkan sdks

Change 2945638 on 2016/04/15 by Chris.Babcock

	Fix permissions on uninstall script on Mac
	#jira UE-29236
	#ue4
	#android
	#lockdown Jack.Porter

Change 2945856 on 2016/04/15 by Rolando.Caloca

	DM - vk - Fix mapped allocations on mobile

#lockdown nick.penwarden

[CL 2945995 by Chris Babcock in Main branch]
2016-04-15 18:19:26 -04:00

328 lines
16 KiB
C++

// Copyright 1998-2016 Epic Games, Inc. All Rights Reserved.
#pragma once
#include "AndroidRuntimeSettings.generated.h"
UENUM()
namespace EAndroidScreenOrientation
{
// IF THIS CHANGES, MAKE SURE TO UPDATE UEDeployAndroid.cs, ConvertOrientationIniValue()!
enum Type
{
/** Portrait orientation (the display is taller than it is wide). */
Portrait,
/** Portrait orientation rotated 180 degrees. */
ReversePortrait,
/** Use either portrait or reverse portrait orientation, where supported by the device, based on the device orientation sensor. */
SensorPortrait,
/** Landscape orientation (the display is wider than it is tall). */
Landscape,
/** Landscape orientation rotated 180 degrees. */
ReverseLandscape,
/** Use either landscape or reverse landscape orientation, based on the device orientation sensor. */
SensorLandscape,
/** Use any orientation the device normally supports, based on the device orientation sensor. */
Sensor,
/** Use any orientation (including ones the device wouldn't choose in Sensor mode), based on the device orientation sensor. */
FullSensor,
};
}
/** Depth buffer precision preferences */
UENUM()
namespace EAndroidDepthBufferPreference
{
// IF THIS CHANGES, MAKE SURE TO UPDATE UEDeployAndroid.cs, ConvertDepthBufferIniValue()!
enum Type
{
Default = 0 UMETA(DisplayName = "Default"),
Bits16 = 16 UMETA(DisplayName = "16-bit"),
Bits24 = 24 UMETA(DisplayName = "24-bit"),
Bits32 = 32 UMETA(DisplayName = "32-bit"),
};
}
/**
* Holds the game-specific achievement name and corresponding ID from Google Play services.
*/
USTRUCT()
struct FGooglePlayAchievementMapping
{
GENERATED_USTRUCT_BODY()
/** The game-specific achievement name (the one passed in to WriteAchievement calls). */
UPROPERTY(EditAnywhere, Category = GooglePlayServices)
FString Name;
/** The ID of the corresponding achievement, generated by the Google Play developer console. */
UPROPERTY(EditAnywhere, Category = GooglePlayServices)
FString AchievementID;
};
/**
* Holds the game-specific leaderboard name and corresponding ID from Google Play services.
*/
USTRUCT()
struct FGooglePlayLeaderboardMapping
{
GENERATED_USTRUCT_BODY()
/** The game-specific leaderboard name (the one passed in to WriteLeaderboards calls). */
UPROPERTY(EditAnywhere, Category = GooglePlayServices)
FString Name;
/** The ID of the corresponding leaderboard, generated by the Google Play developer console. */
UPROPERTY(EditAnywhere, Category = GooglePlayServices)
FString LeaderboardID;
};
UENUM()
namespace EAndroidAudio
{
enum Type
{
Default = 0 UMETA(DisplayName = "Default", ToolTip = "This option selects the default encoder."),
OGG = 1 UMETA(DisplayName = "Ogg Vorbis", ToolTip = "Selects Ogg Vorbis encoding."),
ADPCM = 2 UMETA(DisplayName = "ADPCM", ToolTip = "This option selects ADPCM lossless encoding.")
};
}
/**
* Implements the settings for the Android runtime platform.
*/
UCLASS(config=Engine, defaultconfig)
class ANDROIDRUNTIMESETTINGS_API UAndroidRuntimeSettings : public UObject
{
public:
GENERATED_UCLASS_BODY()
// The official name of the product (same as the name you use on the Play Store web site). Note: Must have at least 2 sections separated by a period and be unique!
UPROPERTY(GlobalConfig, EditAnywhere, Category = APKPackaging, Meta = (DisplayName = "Android Package Name ('com.Company.Project', [PROJECT] is replaced with project name)"))
FString PackageName;
// The version number used to indicate newer versions in the Store
UPROPERTY(GlobalConfig, EditAnywhere, Category = APKPackaging, Meta = (DisplayName = "Store Version (1-2147483647)", ClampMin="1", ClampMax="2147483647"))
int32 StoreVersion;
// The visual application name displayed for end users
UPROPERTY(GlobalConfig, EditAnywhere, Category = APKPackaging, Meta = (DisplayName = "Application Display Name (app_name), project name if blank"))
FString ApplicationDisplayName;
// The visual version displayed for end users
UPROPERTY(GlobalConfig, EditAnywhere, Category = APKPackaging, Meta = (DisplayName = "Version Display Name (usually x.y)"))
FString VersionDisplayName;
// What OS version the app is allowed to be installed on (do not set this lower than 9)
UPROPERTY(GlobalConfig, EditAnywhere, Category = APKPackaging, Meta = (DisplayName = "Minimum SDK Version (9=Gingerbread, 14=Ice Cream Sandwich, 21=Lollipop)"))
int32 MinSDKVersion;
// What OS version the app is expected to run on (do not set this lower than 9, set to 19 for GearVR)
UPROPERTY(GlobalConfig, EditAnywhere, Category = APKPackaging, Meta = (DisplayName = "Target SDK Version (9=Gingerbread, 14=Ice Cream Sandwich, 21=Lollipop)"))
int32 TargetSDKVersion;
// Should the data be placed into the .apk file instead of a separate .obb file. Amazon requires this to be enabled, but Google Play Store will not allow .apk files larger than 50MB, so only small games will work with this enabled.
UPROPERTY(GlobalConfig, EditAnywhere, Category = APKPackaging, Meta = (DisplayName = "Package game data inside .apk?"))
bool bPackageDataInsideApk;
// Disable the verification of an OBB file when it is downloaded or on first start when in a distribution build.
UPROPERTY(GlobalConfig, EditAnywhere, Category = APKPackaging, Meta = (DisplayName = "Disable verify OBB on first start/update."))
bool bDisableVerifyOBBOnStartUp;
// The permitted orientation of the application on the device
UPROPERTY(GlobalConfig, EditAnywhere, Category = APKPackaging)
TEnumAsByte<EAndroidScreenOrientation::Type> Orientation;
// Should the software navigation buttons be hidden or not
UPROPERTY(GlobalConfig, EditAnywhere, Category = APKPackaging, Meta = (DisplayName = "Enable FullScreen Immersive on KitKat and above devices."))
bool bFullScreen;
// The preferred depth buffer bitcount for Android
UPROPERTY(GlobalConfig, EditAnywhere, Category = APKPackaging, Meta = (DisplayName = "Preferred Depth Buffer format"))
TEnumAsByte<EAndroidDepthBufferPreference::Type> DepthBufferPreference;
// Any extra tags for the <manifest> node
UPROPERTY(GlobalConfig, EditAnywhere, Category = AdvancedAPKPackaging, Meta = (DisplayName = "Extra Tags for <manifest> node"))
TArray<FString> ExtraManifestNodeTags;
// Any extra tags for the <application> node
UPROPERTY(GlobalConfig, EditAnywhere, Category = AdvancedAPKPackaging, Meta = (DisplayName = "Extra Tags for <application> node"))
TArray<FString> ExtraApplicationNodeTags;
// Any extra tags for the com.epicgames.UE4.GameActivity <activity> node
// Any extra settings for the <application> section (an optional file <Project>/Build/Android/ManifestApplicationAdditions.txt will also be included)
UPROPERTY(GlobalConfig, EditAnywhere, Category = AdvancedAPKPackaging, Meta = (DisplayName = "Extra Settings for <application> section (\\n to separate lines)"))
FString ExtraApplicationSettings;
UPROPERTY(GlobalConfig, EditAnywhere, Category = AdvancedAPKPackaging, Meta = (DisplayName = "Extra Tags for UE4.GameActivity <activity> node"))
TArray<FString> ExtraActivityNodeTags;
// Any extra settings for the main <activity> section (an optional file <Project>/Build/Android/ManifestApplicationActivtyAdditions.txt will also be included)
UPROPERTY(GlobalConfig, EditAnywhere, Category = AdvancedAPKPackaging, Meta = (DisplayName = "Extra Settings for <activity> section (\\n to separate lines)"))
FString ExtraActivitySettings;
// Any extra permissions your app needs (an optional file <Project>/Build/Android/ManifestRequirementsAdditions.txt will also be included,
// or an optional file <Project>/Build/Android/ManifestRequirementsOverride.txt will replace the entire <!-- Requirements --> section)
UPROPERTY(GlobalConfig, EditAnywhere, Category = AdvancedAPKPackaging, Meta = (DisplayName = "Extra Permissions (e.g. 'android.permission.INTERNET')"))
TArray<FString> ExtraPermissions;
// Configure AndroidManifest.xml for GearVR
UPROPERTY(GlobalConfig, EditAnywhere, Category = AdvancedAPKPackaging, Meta = (DisplayName = "Configure the AndroidManifest for deployment to GearVR"))
bool bPackageForGearVR;
// Removes Oculus Signature Files (osig) from APK if GearVR APK signed for distribution and enables entitlement checker
UPROPERTY(GlobalConfig, EditAnywhere, Category = AdvancedAPKPackaging, Meta = (DisplayName = "Remove Oculus Signature Files from Distribution APK"))
bool bRemoveOSIG;
// This is the file that keytool outputs, specified with the -keystore parameter (file should be in <Project>/Build/Android)
UPROPERTY(GlobalConfig, EditAnywhere, Category = DistributionSigning, Meta = (DisplayName = "Key Store (output of keytool, placed in <Project>/Build/Android)"))
FString KeyStore;
// This is the name of the key that you specified with the -alias parameter to keytool
UPROPERTY(GlobalConfig, EditAnywhere, Category = DistributionSigning, Meta = (DisplayName = "Key Alias (-alias parameter to keytool)"))
FString KeyAlias;
// This is the password that you specified FOR THE KEYSTORE NOT THE KEY, when running keytool (either with -storepass or by typing it in).
UPROPERTY(GlobalConfig, EditAnywhere, Category = DistributionSigning, Meta = (DisplayName = "Key Store Password (-storepass parameter to keytool)"))
FString KeyStorePassword;
// This is the password for the key that you may have specified with keytool, if it's different from the keystore password. Leave blank to use same as Keystore
UPROPERTY(GlobalConfig, EditAnywhere, Category = DistributionSigning, Meta = (DisplayName = "Key Password (leave blank to use Key Store Password)"))
FString KeyPassword;
// Enable ArmV7 support? (this will be used if all type are unchecked)
UPROPERTY(GlobalConfig, EditAnywhere, Category = Build, meta = (DisplayName = "Support armv7 [aka armeabi-v7a]"))
bool bBuildForArmV7;
// Enable Arm64 support?
UPROPERTY(GlobalConfig, EditAnywhere, Category = Build, meta = (DisplayName = "Support arm64 [aka arm64-v8a]"))
bool bBuildForArm64;
// Enable x86 support? [CURRENTLY FOR FULL SOURCE GAMES ONLY]
UPROPERTY(GlobalConfig, EditAnywhere, Category = Build, meta = (DisplayName = "Support x86"))
bool bBuildForX86;
// Enable x86-64 support? [CURRENTLY FOR FULL SOURCE GAMES ONLY]
UPROPERTY(GlobalConfig, EditAnywhere, Category = Build, meta = (DisplayName = "Support x86_64 [aka x64]"))
bool bBuildForX8664;
// Enable ES2 support? [CURRENTLY FOR FULL SOURCE GAMES ONLY]
UPROPERTY(GlobalConfig, EditAnywhere, Category = Build, meta = (DisplayName = "Support OpenGL ES2"))
bool bBuildForES2;
// Enable ES31 support? [CURRENTLY FOR FULL SOURCE GAMES ONLY]
UPROPERTY(GlobalConfig, EditAnywhere, Category = Build, meta = (DisplayName = "Support OpenGL ES31 + AEP"))
bool bBuildForES31;
// Enable Vulkan support? [CURRENTLY FOR FULL SOURCE GAMES ONLY]
UPROPERTY(GlobalConfig, EditAnywhere, Category = Build, meta = (DisplayName = "Support Vulkan"))
bool bSupportsVulkan;
// If selected, the checked architectures will be split into separate .apk files [CURRENTLY FOR FULL SOURCE GAMES ONLY]
// @todo android fat binary: Currently, there isn't much utility in merging multiple .so's into a single .apk except for debugging,
// but we can't properly handle multiple GPU architectures in a single .apk, so we are disabling the feature for now
// The user will need to manually select the apk to run in their Visual Studio debugger settings (see Override APK in TADP, for instance)
// UPROPERTY(GlobalConfig, EditAnywhere, Category = Build)
// bool bSplitIntoSeparateApks;
// Should Google Play support be enabled?
UPROPERTY(GlobalConfig, EditAnywhere, Category = GooglePlayServices)
bool bEnableGooglePlaySupport;
// The app id obtained from the Google Play Developer Console
UPROPERTY(GlobalConfig, EditAnywhere, Category = GooglePlayServices)
FString GamesAppID;
// Mapping of game achievement names to IDs generated by Google Play.
UPROPERTY(GlobalConfig, EditAnywhere, Category = GooglePlayServices)
TArray<FGooglePlayAchievementMapping> AchievementMap;
// Mapping of game leaderboard names to IDs generated by Google Play.
UPROPERTY(GlobalConfig, EditAnywhere, Category = GooglePlayServices)
TArray<FGooglePlayLeaderboardMapping> LeaderboardMap;
// The unique identifier for the ad obtained from AdMob.
UPROPERTY(GlobalConfig, EditAnywhere, Category = GooglePlayServices)
FString AdMobAdUnitID;
// Identifiers for ads obtained from AdMob
UPROPERTY(GlobalConfig, EditAnywhere, Category = GooglePlayServices)
TArray<FString> AdMobAdUnitIDs;
// The unique identifier for this application (needed for IAP)
UPROPERTY(GlobalConfig, EditAnywhere, Category = GooglePlayServices)
FString GooglePlayLicenseKey;
/** Show the launch image as a startup slash screen */
UPROPERTY(GlobalConfig, EditAnywhere, Category = LaunchImages, meta = (DisplayName = "Show launch image"))
bool bShowLaunchImage;
/** Android Audio encoding options */
UPROPERTY(GlobalConfig, EditAnywhere, Category = DataCooker, meta = (DisplayName = "Audio encoding"))
TEnumAsByte<EAndroidAudio::Type> AndroidAudio;
/** Include ETC1 textures when packaging with the Android (Multi) variant. ETC1 will be included if no other formats are selected. */
UPROPERTY(GlobalConfig, EditAnywhere, Category = MultiTextureFormats, meta = (DisplayName = "Include ETC1 textures"))
bool bMultiTargetFormat_ETC1;
/** Include ETC2 textures when packaging with the Android (Multi) variant. */
UPROPERTY(GlobalConfig, EditAnywhere, Category = MultiTextureFormats, meta = (DisplayName = "Include ETC2 textures"))
bool bMultiTargetFormat_ETC2;
/** Include DXT textures when packaging with the Android (Multi) variant. */
UPROPERTY(GlobalConfig, EditAnywhere, Category = MultiTextureFormats, meta = (DisplayName = "Include DXT textures"))
bool bMultiTargetFormat_DXT;
/** Include PVRTC textures when packaging with the Android (Multi) variant. */
UPROPERTY(GlobalConfig, EditAnywhere, Category = MultiTextureFormats, meta = (DisplayName = "Include PVRTC textures"))
bool bMultiTargetFormat_PVRTC;
/** Include ATC textures when packaging with the Android (Multi) variant. */
UPROPERTY(GlobalConfig, EditAnywhere, Category = MultiTextureFormats, meta = (DisplayName = "Include ATC textures"))
bool bMultiTargetFormat_ATC;
/** Include ASTC textures when packaging with the Android (Multi) variant. */
UPROPERTY(GlobalConfig, EditAnywhere, Category = MultiTextureFormats, meta = (DisplayName = "Include ASTC textures"))
bool bMultiTargetFormat_ASTC;
/** Priority for the ETC1 texture format when launching on device or packaging using Android_Multi. The highest priority format supported by the device will be used. Default value is 0.1. */
UPROPERTY(GlobalConfig, EditAnywhere, Category = TextureFormatPriorities, meta = (DisplayName = "ETC1 texture format priority"))
float TextureFormatPriority_ETC1;
/** Priority for the ETC2 texture format when launching on device or packaging using Android_Multi. The highest priority format supported by the device will be used. Default value is 0.2. */
UPROPERTY(GlobalConfig, EditAnywhere, Category = TextureFormatPriorities, meta = (DisplayName = "ETC2 texture format priority"))
float TextureFormatPriority_ETC2;
/** Priority for the DXT texture format when launching on device or packaging using Android_Multi. The highest priority format supported by the device will be used. Default value is 0.6. */
UPROPERTY(GlobalConfig, EditAnywhere, Category = TextureFormatPriorities, meta = (DisplayName = "DXT texture format priority"))
float TextureFormatPriority_DXT;
/** Priority for the PVRTC texture format when launching on device or packaging using Android_Multi. The highest priority format supported by the device will be used. Default value is 0.8. */
UPROPERTY(GlobalConfig, EditAnywhere, Category = TextureFormatPriorities, meta = (DisplayName = "PVRTC texture format priority"))
float TextureFormatPriority_PVRTC;
/** Priority for the ATC texture format when launching on device or packaging using Android_Multi. The highest priority format supported by the device will be used. Default value is 0.5. */
UPROPERTY(GlobalConfig, EditAnywhere, Category = TextureFormatPriorities, meta = (DisplayName = "ATC texture format priority"))
float TextureFormatPriority_ATC;
/** Priority for the ASTC texture format when launching on device or packaging using Android_Multi. The highest priority format supported by the device will be used. Default value is 0.9. */
UPROPERTY(GlobalConfig, EditAnywhere, Category = TextureFormatPriorities, meta = (DisplayName = "ASTC texture format priority"))
float TextureFormatPriority_ASTC;
#if WITH_EDITOR
// UObject interface
virtual void PostEditChangeProperty(struct FPropertyChangedEvent& PropertyChangedEvent) override;
virtual void PostInitProperties() override;
// End of UObject interface
#endif
};