[Definition]
titleIds = 000500001017D800,000500001017D900,000500001017CD00
name = Resolution
path = "Hyrule Warriors/Graphics/Resolution"
description = Changes the resolution of the game. 1080 FX scaling runs DoF, fog etc at lower precision for better performance
version = 3

[Preset]
name = 1280x720 (Default)
$width = 1280
$height = 720
$gameWidth = 1280
$gameHeight = 720
$internalRes = 1.0
$dither = 0.01
$scaleShader = 1.0
$scaleBlur = 0.05

[Preset]
name = 640x360 (0.5 x native)
$width = 640
$height = 360
$gameWidth = 1280
$gameHeight = 720
$internalRes = 1.0
$dither = 0.01
$scaleShader = 1.0
$scaleBlur = 0.05

[Preset]
name = 3840x720 (48:9)
$width = 3840
$height = 720
$gameWidth = 1280
$gameHeight = 720
$internalRes = 1.0
$dither = 0.01
$scaleShader = 1.0
$scaleBlur = 0.05

# Quality

[Preset]
name = 1600x900
$width = 1600
$height = 900
$gameWidth = 1280
$gameHeight = 720
$internalRes = 1.0
$dither = 0.1
$scaleShader = (720.0/900.0) # factor for any shader that can't handle fractional scaling
$scaleBlur = 0.5

[Preset]
name = 1920x1080 (HD)
$width = 1920
$height = 1080
$gameWidth = 1280
$gameHeight = 720
$internalRes = 1.0
$dither = 0.15
$scaleShader = (720.0/1080.0)
$scaleBlur = 0.5

[Preset]
name = 2560x1080 (21:9 HD)
$width = 2560
$height = 1080
$gameWidth = 1280
$gameHeight = 720
$internalRes = 1.0
$dither = 0.15
$scaleShader = (720.0/1080.0)
$scaleBlur = 0.5

[Preset]
name = 5760x1080 (48:9 HD)
$width = 5760
$height = 1080
$gameWidth = 1280
$gameHeight = 720
$internalRes = 1.0
$dither = 0.15
$scaleShader = (720.0/1080.0)
$scaleBlur = 0.5

[Preset]
name = 1920x1200 (10:9 HD)
$width = 1920
$height = 1200
$gameWidth = 1280
$gameHeight = 720
$internalRes = 1.0
$dither = 0.15
$scaleShader = (720.0/1200.0)
$scaleBlur = 0.5

[Preset]
name = 2560x1440 (Native x2)
$width = 2560
$height = 1440
$gameWidth = 1280
$gameHeight = 720
$internalRes = 1.0
$dither = 0.1
$scaleShader = 1.0
$scaleBlur = 0.5

[Preset]
name = 3440x1440 (21:9)
$width = 3440
$height = 1440
$gameWidth = 1280
$gameHeight = 720
$internalRes = 1.0
$dither = 0.1
$scaleShader = 1.0
$scaleBlur = 0.5

[Preset]
name = 7680x1440 (48:9)
$width = 7680
$height = 1440
$gameWidth = 1280
$gameHeight = 720
$internalRes = 1.0
$dither = 0.1
$scaleShader = 1.0
$scaleBlur = 0.5

#[Preset]
#name = 2560x1440 (Native x2) 1080 FX scaling
#$width = 2560
#$height = 1440
#$gameWidth = 1280
#$gameHeight = 720
#$internalRes = 0.75
#$dither = 0.15
#$scaleShader = (720.0/1080.0)
#$scaleBlur = 0.5

[Preset]
name = 3200x1800
$width = 3200
$height = 1800
$gameWidth = 1280
$gameHeight = 720
$internalRes = 2.0
$dither = 0.2
$scaleShader = (1440.0/1800.0)
$scaleBlur = 0.5

[Preset]
name = 3840x2160 (4k - Native x3)
$width = 3840
$height = 2160
$gameWidth = 1280
$gameHeight = 720
$internalRes = 1.0
$dither = 0.2
$scaleShader = 1.0
$scaleBlur = 1.0

[Preset]
name = 5120x2160 (4k 21:9)
$width = 5120
$height = 2160
$gameWidth = 1280
$gameHeight = 720
$internalRes = 1.0
$dither = 0.2
$scaleShader = 1.0
$scaleBlur = 1.0

[Preset]
name = 115200x2160 (4k 48:9)
$width = 11520
$height = 2160
$gameWidth = 1280
$gameHeight = 720
$internalRes = 1.0
$dither = 0.2
$scaleShader = 1.0
$scaleBlur = 1.0

#[Preset]
#name = 3840x2160 (4k - 1080 FX scaling)
#$width = 3840
#$height = 2160
#$gameWidth = 1280
#$gameHeight = 720
#$internalRes =(1440.0/2160.0)
#$dither = 0.25
#$scaleShader = 1.0 # (1440.0/2160.0)
#$scaleBlur = 2.0

[Preset]
name = 5120x2880 (Native 4x)
$width = 5120
$height = 2880
$gameWidth = 1280
$gameHeight = 720
$internalRes = 1.0
$dither = 0.25
$scaleShader = 1.0
$scaleBlur = 1.0

#[Preset]
#name = 5120x2880 (1080 FX scaling)
#$width = 5120
#$height = 2880
#$gameWidth = 1280
#$gameHeight = 720
#$internalRes = 0.375
#$dither = 0.25
#$scaleShader = (720.0/1080.0)
#$scaleBlur = 1.0

# Enthusiast

#[Preset]#6
#name = 7680x4320
#$width = 7680
#$height = 4320
#$gameWidth = 1280
#$gameHeight = 720
#$internalRes = 1.0
#$dither = 0.25
#$scaleShader = 1.0
#$scaleBlur = 1.0

#[Preset]
#name = 10240x5760
#$width = 10240
#$height = 5760
#$gameWidth = 1280
#$gameHeight = 720
#$internalRes = 0.5
#$dither = 0.25
#$scaleShader = 1.0
#$scaleBlur = 1.0


[TextureRedefine]
width = 1280
height = 720
#formats = 0x816,0x810,0x433,0x431,0x41a,0x008,0x011,0x001,0x01a
formatsExcluded = 0x431,0x433
tileModesExcluded = 0x001
overwriteWidth = ($width/$gameWidth) * 1280
overwriteHeight = ($height/$gameHeight) * 720

#[TextureRedefine] # sort shadows later, breaks dof
#width = 1024
#height = 2048
##formats = 0x005
#overwriteWidth = ($height/$gameHeight) * (1024*$scaleShader*$internalRes)
#overwriteHeight = ($height/$gameHeight) * (2048*$scaleShader*$internalRes)

[TextureRedefine]
width = 864
height = 480
#formats = 
overwriteWidth = ($width/$gameWidth) * 864
overwriteHeight = ($height/$gameHeight) * 480

[TextureRedefine]
width = 672
height = 368
overwriteWidth = ($width/$gameWidth) * (672)
overwriteHeight = ($height/$gameHeight) * (368)

[TextureRedefine]
width = 640
height = 368
#formats = 0x816,0x80e,0x035,0x033,0x007
tileModesExcluded = 0x001
overwriteWidth = ($width/$gameWidth) * (640)
overwriteHeight = ($height/$gameHeight) * (368)

[TextureRedefine]
width = 648
height = 360
overwriteWidth = ($width/$gameWidth) * (648)
overwriteHeight = ($height/$gameHeight) * (360)

[TextureRedefine]
width = 640
height = 360
#formats = 0x816,0x80e,0x035,0x033,0x007
tileModesExcluded = 0x001
overwriteWidth = ($width/$gameWidth) * (640)
overwriteHeight = ($height/$gameHeight) * (360)

[TextureRedefine] 
width = 512
height = 512
formats = 0x005
#formatsExcluded = 0x433,0x431,0x035,0x033,0x031,0x005
overwriteWidth = ($width/$gameWidth) * (512*$scaleShader*$internalRes)
overwriteHeight = ($height/$gameHeight) * (512*$scaleShader*$internalRes)

[TextureRedefine]
width = 352
height = 192
#formats = 0x820
overwriteWidth = ($width/$gameWidth) * (352*$internalRes)
overwriteHeight = ($height/$gameHeight) * (192*$internalRes)

[TextureRedefine]
width = 322
height = 182
#formats = 0x820
overwriteWidth = ($width/$gameWidth) * (322*$internalRes)
overwriteHeight = ($height/$gameHeight) * (182*$internalRes)

[TextureRedefine]
width = 320
height = 192
#formats = 0x820,0x816,0x035,0x01a
overwriteWidth = ($width/$gameWidth) * (320*$internalRes)
overwriteHeight = ($height/$gameHeight) * (192*$internalRes)

[TextureRedefine]
width = 320
height = 180
#formats = 0x820,0x816,0x035,0x01a
overwriteWidth = ($width/$gameWidth) * (320*$internalRes)
overwriteHeight = ($height/$gameHeight) * (180*$internalRes)

#[TextureRedefine] 
#width = 224
#height = 224
#formatsExcluded = 
#overwriteWidth = ($width/$gameWidth) * (224*$internalRes)
#overwriteHeight = ($height/$gameHeight) * (224*$internalRes)

[TextureRedefine]
width = 192
height = 96
#formats = 0x820
overwriteWidth = ($width/$gameWidth) * (192*$internalRes)
overwriteHeight = ($height/$gameHeight) * (96*$internalRes)

[TextureRedefine]
width = 162
height = 92
#formats = 0x820
overwriteWidth = ($width/$gameWidth) * (162*$internalRes)
overwriteHeight = ($height/$gameHeight) * (92*$internalRes)

[TextureRedefine]
width = 160
height = 180
#formats = 
overwriteWidth = ($width/$gameWidth) * (160*$internalRes)
overwriteHeight = ($height/$gameHeight) * (180*$internalRes)

[TextureRedefine] #test 41a
width = 160
height = 96
#formats = 0x816 #0x41a
overwriteWidth = ($width/$gameWidth) * (160*$internalRes)
overwriteHeight = ($height/$gameHeight) * (96*$internalRes)

[TextureRedefine]
width = 160
height = 90
#formats = 0x816 #0x41a
overwriteWidth = ($width/$gameWidth) * (160*$internalRes)
overwriteHeight = ($height/$gameHeight) * (90*$internalRes)

#[TextureRedefine] 
#width = 64
#height = 64
#formatsExcluded = 0x01a,0x820,0x816,0x433,0x035,0x034,0x033,0x032,0x031
#overwriteWidth = ($width/$gameWidth) * (64*$internalRes)
#overwriteHeight = ($height/$gameHeight) * (64*$internalRes)

#[TextureRedefine] 
#width = 16
#height = 16
#formatsExcluded = 0x01a,0x034,0x41a,0x033,0x031,0x01a
#overwriteWidth = ($width/$gameWidth) * (16*$internalRes)
#overwriteHeight = ($height/$gameHeight) * (16*$internalRes)

#[TextureRedefine] 
#width = 4
#height = 4
#formatsExcluded = 0x81e,0x80e
#overwriteWidth = ($width/$gameWidth) * (4*$internalRes)
#overwriteHeight = ($height/$gameHeight) * (4*$internalRes)

#[TextureRedefine] 
#width = 1
#height = 1
#formatsExcluded = 0x81e,0x80e,0x008,0x01a
#overwriteWidth = ($width/$gameWidth) * 1
#overwriteHeight = ($height/$gameHeight) * 1
