[DeviceProfiles]
; Add a new mobile type as a base for IOS and Android and several performance buckets
+DeviceProfileNameAndTypes=Mobile,Mobile
+DeviceProfileNameAndTypes=IOS_Low,IOS
+DeviceProfileNameAndTypes=IOS_Mid,IOS
+DeviceProfileNameAndTypes=IOS_High,IOS
+DeviceProfileNameAndTypes=IOS_Epic,IOS

[/Script/Engine.TextureLODSettings]
; This section overrides the default texture groups, in this case it defines the UI With Mips category named in DefaultEngine.ini
; Any changes here are inherited by any device profiles that do not override lod groups
; If a platform overrides a group in the engine BasePlatformDeviceProfiles.ini file, they must be also be overridden here in that same profile
+TextureLODGroups=(Group=TEXTUREGROUP_Project01,MinLODSize=32,MaxLODSize=2048,LODBias=0,MipFilter=point,MipGenSettings=TMGS_SimpleAverage)


; Default settings for all mobile devices

[Mobile DeviceProfile]
DeviceType=Mobile
BaseProfileName=
+TextureLODGroups=(Group=TEXTUREGROUP_World,LODBias=0,LODBias_Smaller=-1,LODBias_Smallest=-1,NumStreamedMips=-1,MipGenSettings=TMGS_SimpleAverage,MinLODSize=1,MaxLODSize=1024,MaxLODSize_Smaller=-1,MaxLODSize_Smallest=-1,MaxLODSize_VT=0,OptionalLODBias=0,OptionalMaxLODSize=4096,MinMagFilter="aniso",MipFilter="point",MipLoadOptions=AllMips,HighPriorityLoad=False,DuplicateNonOptionalMips=False,Downscale=1.000000,DownscaleOptions=SimpleAverage,VirtualTextureTileCountBias=0,VirtualTextureTileSizeBias=0,LossyCompressionAmount=TLCA_Default)
+TextureLODGroups=(Group=TEXTUREGROUP_WorldNormalMap,LODBias=0,LODBias_Smaller=-1,LODBias_Smallest=-1,NumStreamedMips=-1,MipGenSettings=TMGS_SimpleAverage,MinLODSize=1,MaxLODSize=1024,MaxLODSize_Smaller=-1,MaxLODSize_Smallest=-1,MaxLODSize_VT=0,OptionalLODBias=0,OptionalMaxLODSize=4096,MinMagFilter="aniso",MipFilter="point",MipLoadOptions=AllMips,HighPriorityLoad=False,DuplicateNonOptionalMips=False,Downscale=1.000000,DownscaleOptions=SimpleAverage,VirtualTextureTileCountBias=0,VirtualTextureTileSizeBias=0,LossyCompressionAmount=TLCA_Default)
+TextureLODGroups=(Group=TEXTUREGROUP_WorldSpecular,LODBias=0,LODBias_Smaller=-1,LODBias_Smallest=-1,NumStreamedMips=-1,MipGenSettings=TMGS_SimpleAverage,MinLODSize=1,MaxLODSize=1024,MaxLODSize_Smaller=-1,MaxLODSize_Smallest=-1,MaxLODSize_VT=0,OptionalLODBias=0,OptionalMaxLODSize=4096,MinMagFilter="aniso",MipFilter="point",MipLoadOptions=AllMips,HighPriorityLoad=False,DuplicateNonOptionalMips=False,Downscale=1.000000,DownscaleOptions=SimpleAverage,VirtualTextureTileCountBias=0,VirtualTextureTileSizeBias=0,LossyCompressionAmount=TLCA_Default)
+TextureLODGroups=(Group=TEXTUREGROUP_Character,LODBias=0,LODBias_Smaller=-1,LODBias_Smallest=-1,NumStreamedMips=-1,MipGenSettings=TMGS_SimpleAverage,MinLODSize=1,MaxLODSize=1024,MaxLODSize_Smaller=-1,MaxLODSize_Smallest=-1,MaxLODSize_VT=0,OptionalLODBias=0,OptionalMaxLODSize=4096,MinMagFilter="aniso",MipFilter="point",MipLoadOptions=AllMips,HighPriorityLoad=False,DuplicateNonOptionalMips=False,Downscale=1.000000,DownscaleOptions=SimpleAverage,VirtualTextureTileCountBias=0,VirtualTextureTileSizeBias=0,LossyCompressionAmount=TLCA_Default)
+TextureLODGroups=(Group=TEXTUREGROUP_CharacterNormalMap,LODBias=0,LODBias_Smaller=-1,LODBias_Smallest=-1,NumStreamedMips=-1,MipGenSettings=TMGS_SimpleAverage,MinLODSize=1,MaxLODSize=1024,MaxLODSize_Smaller=-1,MaxLODSize_Smallest=-1,MaxLODSize_VT=0,OptionalLODBias=0,OptionalMaxLODSize=4096,MinMagFilter="aniso",MipFilter="point",MipLoadOptions=AllMips,HighPriorityLoad=False,DuplicateNonOptionalMips=False,Downscale=1.000000,DownscaleOptions=SimpleAverage,VirtualTextureTileCountBias=0,VirtualTextureTileSizeBias=0,LossyCompressionAmount=TLCA_Default)
+TextureLODGroups=(Group=TEXTUREGROUP_CharacterSpecular,LODBias=0,LODBias_Smaller=-1,LODBias_Smallest=-1,NumStreamedMips=-1,MipGenSettings=TMGS_SimpleAverage,MinLODSize=1,MaxLODSize=1024,MaxLODSize_Smaller=-1,MaxLODSize_Smallest=-1,MaxLODSize_VT=0,OptionalLODBias=0,OptionalMaxLODSize=4096,MinMagFilter="aniso",MipFilter="point",MipLoadOptions=AllMips,HighPriorityLoad=False,DuplicateNonOptionalMips=False,Downscale=1.000000,DownscaleOptions=SimpleAverage,VirtualTextureTileCountBias=0,VirtualTextureTileSizeBias=0,LossyCompressionAmount=TLCA_Default)
+TextureLODGroups=(Group=TEXTUREGROUP_Weapon,LODBias=0,LODBias_Smaller=-1,LODBias_Smallest=-1,NumStreamedMips=-1,MipGenSettings=TMGS_SimpleAverage,MinLODSize=1,MaxLODSize=1024,MaxLODSize_Smaller=-1,MaxLODSize_Smallest=-1,MaxLODSize_VT=0,OptionalLODBias=0,OptionalMaxLODSize=4096,MinMagFilter="aniso",MipFilter="point",MipLoadOptions=AllMips,HighPriorityLoad=False,DuplicateNonOptionalMips=False,Downscale=1.000000,DownscaleOptions=SimpleAverage,VirtualTextureTileCountBias=0,VirtualTextureTileSizeBias=0,LossyCompressionAmount=TLCA_Default)
+TextureLODGroups=(Group=TEXTUREGROUP_WeaponNormalMap,LODBias=0,LODBias_Smaller=-1,LODBias_Smallest=-1,NumStreamedMips=-1,MipGenSettings=TMGS_SimpleAverage,MinLODSize=1,MaxLODSize=1024,MaxLODSize_Smaller=-1,MaxLODSize_Smallest=-1,MaxLODSize_VT=0,OptionalLODBias=0,OptionalMaxLODSize=4096,MinMagFilter="aniso",MipFilter="point",MipLoadOptions=AllMips,HighPriorityLoad=False,DuplicateNonOptionalMips=False,Downscale=1.000000,DownscaleOptions=SimpleAverage,VirtualTextureTileCountBias=0,VirtualTextureTileSizeBias=0,LossyCompressionAmount=TLCA_Default)
+TextureLODGroups=(Group=TEXTUREGROUP_WeaponSpecular,LODBias=0,LODBias_Smaller=-1,LODBias_Smallest=-1,NumStreamedMips=-1,MipGenSettings=TMGS_SimpleAverage,MinLODSize=1,MaxLODSize=1024,MaxLODSize_Smaller=-1,MaxLODSize_Smallest=-1,MaxLODSize_VT=0,OptionalLODBias=0,OptionalMaxLODSize=4096,MinMagFilter="aniso",MipFilter="point",MipLoadOptions=AllMips,HighPriorityLoad=False,DuplicateNonOptionalMips=False,Downscale=1.000000,DownscaleOptions=SimpleAverage,VirtualTextureTileCountBias=0,VirtualTextureTileSizeBias=0,LossyCompressionAmount=TLCA_Default)
+TextureLODGroups=(Group=TEXTUREGROUP_Vehicle,LODBias=0,LODBias_Smaller=-1,LODBias_Smallest=-1,NumStreamedMips=-1,MipGenSettings=TMGS_SimpleAverage,MinLODSize=1,MaxLODSize=1024,MaxLODSize_Smaller=-1,MaxLODSize_Smallest=-1,MaxLODSize_VT=0,OptionalLODBias=0,OptionalMaxLODSize=4096,MinMagFilter="aniso",MipFilter="point",MipLoadOptions=AllMips,HighPriorityLoad=False,DuplicateNonOptionalMips=False,Downscale=1.000000,DownscaleOptions=SimpleAverage,VirtualTextureTileCountBias=0,VirtualTextureTileSizeBias=0,LossyCompressionAmount=TLCA_Default)
+TextureLODGroups=(Group=TEXTUREGROUP_VehicleNormalMap,LODBias=0,LODBias_Smaller=-1,LODBias_Smallest=-1,NumStreamedMips=-1,MipGenSettings=TMGS_SimpleAverage,MinLODSize=1,MaxLODSize=1024,MaxLODSize_Smaller=-1,MaxLODSize_Smallest=-1,MaxLODSize_VT=0,OptionalLODBias=0,OptionalMaxLODSize=4096,MinMagFilter="aniso",MipFilter="point",MipLoadOptions=AllMips,HighPriorityLoad=False,DuplicateNonOptionalMips=False,Downscale=1.000000,DownscaleOptions=SimpleAverage,VirtualTextureTileCountBias=0,VirtualTextureTileSizeBias=0,LossyCompressionAmount=TLCA_Default)
+TextureLODGroups=(Group=TEXTUREGROUP_VehicleSpecular,LODBias=0,LODBias_Smaller=-1,LODBias_Smallest=-1,NumStreamedMips=-1,MipGenSettings=TMGS_SimpleAverage,MinLODSize=1,MaxLODSize=1024,MaxLODSize_Smaller=-1,MaxLODSize_Smallest=-1,MaxLODSize_VT=0,OptionalLODBias=0,OptionalMaxLODSize=4096,MinMagFilter="aniso",MipFilter="point",MipLoadOptions=AllMips,HighPriorityLoad=False,DuplicateNonOptionalMips=False,Downscale=1.000000,DownscaleOptions=SimpleAverage,VirtualTextureTileCountBias=0,VirtualTextureTileSizeBias=0,LossyCompressionAmount=TLCA_Default)
+TextureLODGroups=(Group=TEXTUREGROUP_Project01,LODBias=0,LODBias_Smaller=-1,LODBias_Smallest=-1,NumStreamedMips=-1,MipGenSettings=TMGS_SimpleAverage,MinLODSize=32,MaxLODSize=1024,MaxLODSize_Smaller=-1,MaxLODSize_Smallest=-1,MaxLODSize_VT=0,OptionalLODBias=0,OptionalMaxLODSize=4096,MinMagFilter="Aniso",MipFilter="point",MipLoadOptions=AllMips,HighPriorityLoad=False,DuplicateNonOptionalMips=False,Downscale=1.000000,DownscaleOptions=SimpleAverage,VirtualTextureTileCountBias=0,VirtualTextureTileSizeBias=0,LossyCompressionAmount=TLCA_Default)

; Settings for GPU particles
+CVars=FX.AllowGPUParticles=1
; Max 256k partices
+CVars=fx.GPUSimulationTextureSizeX=512
+CVars=fx.GPUSimulationTextureSizeY=512

; Scalability Groups
+CVars=sg.ViewDistanceQuality=0
+CVars=sg.AntiAliasingQuality=0
+CVars=sg.ShadowQuality=0
+CVars=sg.PostProcessQuality=0
+CVars=sg.TextureQuality=0
+CVars=sg.EffectsQuality=0
+CVars=sg.FoliageQuality=0
; Dump shaders for non-active material qualities on load
+CVars=r.DiscardUnusedQuality=1
; Settings we want disabled globally / not set by scalability
+CVars=r.DetailMode=0
; Cook out  emitters that don't match the device's detail mode
+CVars=fx.PruneEmittersOnCookByDetailMode=1
+CVars=r.CookOutUnusedDetailModeComponents=1

; Default all devices to 30fps vsync
+CVars=r.VSync=1
+CVars=Lyra.DeviceProfile.Mobile.DefaultFrameRate=30

; Animation - Frame Stripping on mobile to save memory
+CVars=a.StripFramesOnCompression=1
+CVars=a.StripOddFramesWhenFrameStripping=1
+CVars=r.RenderTargetPoolMin=150
; Allow time-critical textures to be streamed in quickly on platforms with long streaming update cycle
+CVars=r.Streaming.AllowFastForceResident=1
+CVars=r.Streaming.PoolSizeForMeshes=25
; Do not use Slate background blur on mobile
+CVars=Slate.ForceBackgroundBlurLowQualityOverride=1
; Use default setting (1) on mobile, engine will add additional buffering when required
+CVars=r.NumBufferedOcclusionQueries=1

[IOS DeviceProfile]
DeviceType=IOS
BaseProfileName=Mobile

; Use MSAA instead of default FXAA on all iOS
+CVars=r.Mobile.AntiAliasing=3

; Dynamic res/temporal upsampling for 30FPS, 900p output res
+CVars=r.DynamicRes.TargetedGPUHeadRoomPercentage=5.0
+CVars=r.DynamicRes.MinScreenPercentage=50
+CVars=r.DynamicRes.OperationMode=1
+CVars=r.SecondaryScreenPercentage.GameViewport=83.33

; ------------------------------------------------------------------------------
; iOS: Scalability buckets for low/med/high
; ------------------------------------------------------------------------------

[IOS_Low DeviceProfile]
BaseProfileName=IOS
+CVars=sg.ViewDistanceQuality=0
+CVars=sg.AntiAliasingQuality=0
+CVars=sg.ShadowQuality=0
+CVars=sg.PostProcessQuality=0
+CVars=sg.TextureQuality=0
+CVars=sg.EffectsQuality=0
+CVars=sg.FoliageQuality=0
+CVars=r.RenderTargetPoolMin=75
+CVars=r.NumBufferedOcclusionQueries=2
+CVars=s.PriorityAsyncLoadingExtraTime=15.0

[IOS_Mid DeviceProfile]
BaseProfileName=IOS
+CVars=sg.ViewDistanceQuality=1
+CVars=sg.AntiAliasingQuality=1
+CVars=sg.ShadowQuality=1
+CVars=sg.PostProcessQuality=1
+CVars=sg.TextureQuality=1
+CVars=sg.EffectsQuality=1
+CVars=sg.FoliageQuality=1
+CVars=sg.ShadowQuality.Frontend=0
+CVars=r.RenderTargetPoolMin=100

+CVars=r.MobileContentScaleFactor=1.5
+CVars=r.Streaming.PoolSize=85
+CVars=grass.densityScale=0
+CVars=grass.DiscardDataOnLoad=1
+CVars=foliage.densityScale=0
+CVars=foliage.DiscardDataOnLoad=1
+CVars=Lyra.DeviceProfile.Mobile.MaxFrameRate=60
+CVars=Lyra.DeviceProfile.Mobile.OverallQualityLimits=60:1

; Anim dynamics is enabled, but only on LOD0
+CVars=p.AnimDynamics=1
+CVars=p.AnimDynamicsLODThreshold=0
; Rigid body is actually enabled in IOS_Mid
+CVars=p.RigidBodyLODThreshold=0

[IOS_High DeviceProfile]
BaseProfileName=IOS
+CVars=sg.ViewDistanceQuality=2
+CVars=sg.AntiAliasingQuality=2
+CVars=sg.ShadowQuality=2
+CVars=sg.PostProcessQuality=2
+CVars=sg.TextureQuality=2
+CVars=sg.EffectsQuality=2
+CVars=sg.FoliageQuality=2
+CVars=sg.ShadowQuality.Frontend=0
+CVars=r.RenderTargetPoolMin=150
+CVars=Lyra.DeviceProfile.Mobile.MaxFrameRate=60
+CVars=Lyra.DeviceProfile.Mobile.OverallQualityLimits=60:1
+CVars=p.RigidBodyNode=1

[IOS_Epic DeviceProfile]
BaseProfileName=IOS
+CVars=sg.ViewDistanceQuality=3
+CVars=sg.AntiAliasingQuality=3
+CVars=sg.ShadowQuality=3
+CVars=sg.PostProcessQuality=3
+CVars=sg.TextureQuality=3
+CVars=sg.EffectsQuality=3
+CVars=sg.FoliageQuality=3
+CVars=sg.ShadowQuality.Frontend=0
+CVars=r.RenderTargetPoolMin=200
+CVars=p.RigidBodyNode=1
+CVars=Lyra.DeviceProfile.Mobile.MaxFrameRate=60
+CVars=Lyra.DeviceProfile.Mobile.OverallQualityLimits=60:2

; ------------------------------------------------------------------------------
; iOS: Low spec devices
; ------------------------------------------------------------------------------

[iPhone6S DeviceProfile]
BaseProfileName=IOS_Low
+CVars=r.MobileContentScaleFactor=1.5
+CVars=sg.ResolutionQuality=70

[iPhone6SPlus DeviceProfile]
BaseProfileName=IOS_Low
+CVars=r.MobileContentScaleFactor=1.28

[iPhoneSE DeviceProfile]
BaseProfileName=IOS_Low
+CVars=r.MobileContentScaleFactor=1.5

[iPad5 DeviceProfile]
BaseProfileName=IOS_Low
+CVars=r.MobileContentScaleFactor=1.0
+CVars=sg.ResolutionQuality=85

[iPadAir2 DeviceProfile]
BaseProfileName=IOS_Low
+CVars=r.MobileContentScaleFactor=1.0
+CVars=sg.ResolutionQuality=75
+CVars=r.Mobile.AntiAliasing=1

[iPadMini4 DeviceProfile]
BaseProfileName=IOS_Low
+CVars=r.MobileContentScaleFactor=1.0
+CVars=r.Mobile.AntiAliasing=1

[AppleTV DeviceProfile]
BaseProfileName=IOS_Low
+CVars=r.MobileContentScaleFactor=1.0
+CVars=ios.PhysicalScreenDensity=0
+CVars=r.Mobile.AntiAliasing=1

; ------------------------------------------------------------------------------
; iOS: Mid spec devices
; ------------------------------------------------------------------------------
 
[iPodTouch7 DeviceProfile]
BaseProfileName=IOS_Mid
+CVars=r.MobileContentScaleFactor=1.6

[iPhone7 DeviceProfile]
BaseProfileName=IOS_Low
+CVars=r.MobileContentScaleFactor=1.6

[iPhone7Plus DeviceProfile]
BaseProfileName=IOS_Low
+CVars=r.MobileContentScaleFactor=1.5

[iPadPro129 DeviceProfile]
BaseProfileName=IOS_Mid
+CVars=r.MobileContentScaleFactor=1.0

[iPadPro97 DeviceProfile]
BaseProfileName=IOS_Mid
+CVars=r.MobileContentScaleFactor=1.25

[iPad6 DeviceProfile]
BaseProfileName=IOS_Low
+CVars=r.MobileContentScaleFactor=1.0

[AppleTV4K DeviceProfile]
BaseProfileName=IOS_Mid
+CVars=r.MobileContentScaleFactor=1.0
+CVars=ios.PhysicalScreenDensity=0


; ------------------------------------------------------------------------------
; iOS: High spec devices
; ------------------------------------------------------------------------------

[iPhone8 DeviceProfile]
BaseProfileName=IOS_Low
+CVars=r.MobileContentScaleFactor=1.6
+CVars=Lyra.DeviceProfile.Mobile.MaxFrameRate=60
+CVars=Lyra.DeviceProfile.Mobile.OverallQualityLimits=60:0

[iPhone8Plus DeviceProfile]
BaseProfileName=IOS_High
+CVars=r.MobileContentScaleFactor=1.956
+CVars=Lyra.DeviceProfile.Mobile.OverallQualityLimits=60:1

[iPadPro2_129 DeviceProfile]
BaseProfileName=IOS_High
+CVars=r.MobileContentScaleFactor=1.23

[iPadPro105 DeviceProfile]
BaseProfileName=IOS_High
+CVars=r.MobileContentScaleFactor=1.3

[iPhoneX DeviceProfile]
BaseProfileName=IOS_Mid
+CVars=r.MobileContentScaleFactor=1.775
; non-notch side
+CVars=SafeZone.Landscape.Left=15
+CVars=SafeZone.Landscape.Top=5
; notch side
+CVars=SafeZone.Landscape.Right=26
+CVars=SafeZone.Landscape.Bottom=15
+CVars=Lyra.DeviceProfile.Mobile.ResolutionQualityLimits=60:75

[iPad7 DeviceProfile]
BaseProfileName=IOS_High
+CVars=r.MobileContentScaleFactor=1.23
+CVars=Lyra.DeviceProfile.Mobile.DefaultFrameRate=60

[iPad8 DeviceProfile]
BaseProfileName=IOS_High
+CVars=r.MobileContentScaleFactor=1.23
+CVars=Lyra.DeviceProfile.Mobile.DefaultFrameRate=60

[iPad9 DeviceProfile]
BaseProfileName=IOS_High
+CVars=r.MobileContentScaleFactor=1.23
+CVars=Lyra.DeviceProfile.Mobile.DefaultFrameRate=60

; ------------------------------------------------------------------------------
; iOS: Epic spec devices
; ------------------------------------------------------------------------------

[iPadPro11 DeviceProfile]
BaseProfileName=IOS_Epic
+CVars=r.MobileContentScaleFactor=2.0
+CVars=Lyra.DeviceProfile.Mobile.MaxFrameRate=120
+CVars=Lyra.DeviceProfile.Mobile.OverallQualityLimits=120:1
+CVars=Lyra.DeviceProfile.Mobile.ResolutionQualityLimits=120:50
+CVars=Lyra.DeviceProfile.Mobile.DefaultFrameRate=60

[iPadPro2_11 DeviceProfile]
BaseProfileName=IOS_Epic
+CVars=r.MobileContentScaleFactor=2.0
+CVars=Lyra.DeviceProfile.Mobile.MaxFrameRate=120
+CVars=Lyra.DeviceProfile.Mobile.OverallQualityLimits=120:1
+CVars=Lyra.DeviceProfile.Mobile.ResolutionQualityLimits=120:50
+CVars=Lyra.DeviceProfile.Mobile.DefaultFrameRate=60

[iPadPro3_11 DeviceProfile]
BaseProfileName=IOS_Epic
+CVars=r.MobileContentScaleFactor=2.0
+CVars=Lyra.DeviceProfile.Mobile.MaxFrameRate=120
+CVars=Lyra.DeviceProfile.Mobile.OverallQualityLimits=120:1
+CVars=Lyra.DeviceProfile.Mobile.ResolutionQualityLimits=120:50
+CVars=Lyra.DeviceProfile.Mobile.DefaultFrameRate=60

[iPadPro3_129 DeviceProfile]
BaseProfileName=IOS_Epic
+CVars=r.MobileContentScaleFactor=1.75
+CVars=Lyra.DeviceProfile.Mobile.MaxFrameRate=120
+CVars=Lyra.DeviceProfile.Mobile.OverallQualityLimits=120:1
+CVars=Lyra.DeviceProfile.Mobile.ResolutionQualityLimits=120:50
+CVars=Lyra.DeviceProfile.Mobile.DefaultFrameRate=60

[iPadPro4_129 DeviceProfile]
BaseProfileName=IOS_Epic
+CVars=r.MobileContentScaleFactor=1.75
+CVars=Lyra.DeviceProfile.Mobile.MaxFrameRate=120
+CVars=Lyra.DeviceProfile.Mobile.OverallQualityLimits=120:1
+CVars=Lyra.DeviceProfile.Mobile.ResolutionQualityLimits=120:50
+CVars=Lyra.DeviceProfile.Mobile.DefaultFrameRate=60

[iPhoneXS DeviceProfile]
BaseProfileName=IOS_High
+CVars=r.MobileContentScaleFactor=1.775
; non-notch side
+CVars=SafeZone.Landscape.Left=15
+CVars=SafeZone.Landscape.Top=5
; notch side
+CVars=SafeZone.Landscape.Right=26
+CVars=SafeZone.Landscape.Bottom=15

[iPhoneXSMax DeviceProfile]
BaseProfileName=IOS_High
; scale to have the same backbuffer resolution as XS.
+CVars=r.MobileContentScaleFactor=1.6
; non-notch side
+CVars=SafeZone.Landscape.Left=15
+CVars=SafeZone.Landscape.Top=5
; notch side
+CVars=SafeZone.Landscape.Right=26
+CVars=SafeZone.Landscape.Bottom=15

[iPhoneXR DeviceProfile]
BaseProfileName=IOS_Mid
+CVars=r.MobileContentScaleFactor=1.775
; non-notch side
+CVars=SafeZone.Landscape.Left=15
+CVars=SafeZone.Landscape.Top=5
; notch side
+CVars=SafeZone.Landscape.Right=26
+CVars=SafeZone.Landscape.Bottom=15

[iPhone11Pro DeviceProfile]
BaseProfileName=IOS_High
+CVars=r.MobileContentScaleFactor=1.775
; non-notch side
+CVars=SafeZone.Landscape.Left=15
+CVars=SafeZone.Landscape.Top=5
; notch side
+CVars=SafeZone.Landscape.Right=26
+CVars=SafeZone.Landscape.Bottom=15

[iPhone11ProMax DeviceProfile]
BaseProfileName=IOS_High
; scale to have the same backbuffer resolution as XS.
+CVars=r.MobileContentScaleFactor=1.6
; non-notch side
+CVars=SafeZone.Landscape.Left=15
+CVars=SafeZone.Landscape.Top=5
; notch side
+CVars=SafeZone.Landscape.Right=26
+CVars=SafeZone.Landscape.Bottom=15

[iPhone11 DeviceProfile]
BaseProfileName=IOS_High
+CVars=r.MobileContentScaleFactor=1.775
; non-notch side
+CVars=SafeZone.Landscape.Left=15
+CVars=SafeZone.Landscape.Top=5
; notch side
+CVars=SafeZone.Landscape.Right=26
+CVars=SafeZone.Landscape.Bottom=15

[iPhone12 DeviceProfile]
BaseProfileName=IOS_High
+CVars=r.MobileContentScaleFactor=1.775
; non-notch side
+CVars=SafeZone.Landscape.Left=15
+CVars=SafeZone.Landscape.Top=5
; notch side
+CVars=SafeZone.Landscape.Right=26
+CVars=SafeZone.Landscape.Bottom=15

[iPhone12Pro DeviceProfile]
BaseProfileName=IOS_High
+CVars=r.MobileContentScaleFactor=1.775
; non-notch side
+CVars=SafeZone.Landscape.Left=15
+CVars=SafeZone.Landscape.Top=5
; notch side
+CVars=SafeZone.Landscape.Right=26
+CVars=SafeZone.Landscape.Bottom=15

[iPhone12ProMax DeviceProfile]
BaseProfileName=IOS_High
; scale to have the same backbuffer resolution as XS.
+CVars=r.MobileContentScaleFactor=1.6
; non-notch side
+CVars=SafeZone.Landscape.Left=15
+CVars=SafeZone.Landscape.Top=5
; notch side
+CVars=SafeZone.Landscape.Right=26
+CVars=SafeZone.Landscape.Bottom=15

[iPhone12Mini DeviceProfile]
BaseProfileName=IOS_High
; scale to have the same backbuffer resolution as XS.
+CVars=r.MobileContentScaleFactor=1.6
; non-notch side
+CVars=SafeZone.Landscape.Left=15
+CVars=SafeZone.Landscape.Top=5
; notch side
+CVars=SafeZone.Landscape.Right=26
+CVars=SafeZone.Landscape.Bottom=15

[iPhone13 DeviceProfile]
BaseProfileName=IOS_Epic
+CVars=r.MobileContentScaleFactor=1.775
; non-notch side
+CVars=SafeZone.Landscape.Left=15
+CVars=SafeZone.Landscape.Top=5
; notch side
+CVars=SafeZone.Landscape.Right=26
+CVars=SafeZone.Landscape.Bottom=15

[iPhone13Pro DeviceProfile]
BaseProfileName=IOS_Epic
+CVars=r.MobileContentScaleFactor=1.775
; non-notch side
+CVars=SafeZone.Landscape.Left=15
+CVars=SafeZone.Landscape.Top=5
; notch side
+CVars=SafeZone.Landscape.Right=26
+CVars=SafeZone.Landscape.Bottom=15

[iPhone13ProMax DeviceProfile]
BaseProfileName=IOS_Epic
; scale to have the same backbuffer resolution as XS.
+CVars=r.MobileContentScaleFactor=1.6
; non-notch side
+CVars=SafeZone.Landscape.Left=15
+CVars=SafeZone.Landscape.Top=5
; notch side
+CVars=SafeZone.Landscape.Right=26
+CVars=SafeZone.Landscape.Bottom=15

[iPhone13Mini DeviceProfile]
BaseProfileName=IOS_Epic
; scale to have the same backbuffer resolution as XS.
+CVars=r.MobileContentScaleFactor=1.6
; non-notch side
+CVars=SafeZone.Landscape.Left=15
+CVars=SafeZone.Landscape.Top=5
; notch side
+CVars=SafeZone.Landscape.Right=26
+CVars=SafeZone.Landscape.Bottom=15

[iPhoneSE2 DeviceProfile]
BaseProfileName=IOS_High
+CVars=r.MobileContentScaleFactor=1.775

[iPadAir3 DeviceProfile]
BaseProfileName=IOS_Mid
+CVars=r.MobileContentScaleFactor=2.0
+CVars=Lyra.DeviceProfile.Mobile.DefaultFrameRate=60

[iPadAir4 DeviceProfile]
BaseProfileName=IOS_Mid
+CVars=r.MobileContentScaleFactor=2.0
+CVars=Lyra.DeviceProfile.Mobile.DefaultFrameRate=60

[iPadMini5 DeviceProfile]
BaseProfileName=IOS_Mid
+CVars=r.MobileContentScaleFactor=2.0
+CVars=Lyra.DeviceProfile.Mobile.DefaultFrameRate=60

[iPadMini6 DeviceProfile]
BaseProfileName=IOS_High
+CVars=r.MobileContentScaleFactor=2.0
+CVars=Lyra.DeviceProfile.Mobile.DefaultFrameRate=60

; TODO: Fill in Android device profiles

[Android DeviceProfile]
DeviceType=Android
BaseProfileName=Mobile