[Definition]
titleIds = 0005000010190300,00050000101E5300,00050000101E5400
name = Resolution
path = "Mario & Sonic at the Rio 2016 Olympic Games/Graphics/Resolution"
description = Changes the resolution of the game. Known issues: Lower resolution results in a "deep-fried" look. Depth of field and bloom needs shader edits.
version = 3

[Preset]
name = 1280x720 (Default)
$width = 1280
$height = 720
$gameWidth = 1280
$gameHeight = 720

// Performance

[Preset]
name = 320x180
$width = 320
$height = 180
$gameWidth = 1280
$gameHeight = 720

[Preset]
name = 640x360
$width = 640
$height = 360
$gameWidth = 1280
$gameHeight = 720

[Preset]
name = 960x540
$width = 960
$height = 540
$gameWidth = 1280
$gameHeight = 720

// Common HD Resolutions

[Preset]
name = 1920x1080
$width = 1920
$height = 1080
$gameWidth = 1280
$gameHeight = 720

[Preset]
name = 2560x1440
$width = 2560
$height = 1440
$gameWidth = 1280
$gameHeight = 720

[Preset]
name = 3200x1800
$width = 3200
$height = 1800
$gameWidth = 1280
$gameHeight = 720

[Preset]
name = 3840x2160
$width = 3840
$height = 2160
$gameWidth = 1280
$gameHeight = 720

[Preset]
name = 5120x2880
$width = 5120
$height = 2880
$gameWidth = 1280
$gameHeight = 720

[TextureRedefine] # Game Resolution
width = 1280
height = 720
formatsExcluded = 0x31,0x33
tileModesExcluded = 0x001
overwriteWidth = ($width / $gameWidth) * 1280
overwriteHeight = ($height / $gameHeight) * 720

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

[TextureRedefine]
width = 746
height = 470
overwriteWidth = ($width / $gameWidth) * 746
overwriteHeight = ($height / $gameHeight) * 470

[TextureRedefine]
width = 768
height = 432
overwriteWidth = ($width / $gameWidth) * 768
overwriteHeight = ($height / $gameHeight) * 432

[TextureRedefine]
width = 746
height = 420
overwriteWidth = ($width / $gameWidth) * 746
overwriteHeight = ($height / $gameHeight) * 420

[TextureRedefine]
width = 576
height = 432
overwriteWidth = ($width / $gameWidth) * 576
overwriteHeight = ($height / $gameHeight) * 432

[TextureRedefine]
width = 570
height = 420
overwriteWidth = ($width / $gameWidth) * 570
overwriteHeight = ($height / $gameHeight) * 420

[TextureRedefine]
width = 544
height = 384
overwriteWidth = ($width / $gameWidth) * 544
overwriteHeight = ($height / $gameHeight) * 384

[TextureRedefine]
width = 533
height = 380
overwriteWidth = ($width / $gameWidth) * 533
overwriteHeight = ($height / $gameHeight) * 380

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

[TextureRedefine]
width = 490
height = 476
overwriteWidth = ($width / $gameWidth) * 490
overwriteHeight = ($height / $gameHeight) * 476

[TextureRedefine]
width = 320
height = 192
overwriteWidth = ($width / $gameWidth) * 320
overwriteHeight = ($height / $gameHeight) * 192

[TextureRedefine]
width = 320
height = 180
overwriteWidth = ($width / $gameWidth) * 320
overwriteHeight = ($height / $gameHeight) * 180

[TextureRedefine]
width = 256
height = 96
overwriteWidth = ($width / $gameWidth) * 256
overwriteHeight = ($height / $gameHeight) * 96

[TextureRedefine]
width = 160
height = 96
overwriteWidth = ($width / $gameWidth) * 160
overwriteHeight = ($height / $gameHeight) * 96

[TextureRedefine]
width = 160
height = 90
overwriteWidth = ($width / $gameWidth) * 160
overwriteHeight = ($height / $gameHeight) * 90

[TextureRedefine]
width = 128
height = 48
overwriteWidth = ($width / $gameWidth) * 128
overwriteHeight = ($height / $gameHeight) * 48

[TextureRedefine]
width = 80
height = 45
overwriteWidth = ($width / $gameWidth) * 80
overwriteHeight = ($height / $gameHeight) * 45

[TextureRedefine]
width = 64
height = 64
formats = 0x80e
overwriteWidth = ($width / $gameWidth) * 64
overwriteHeight = ($height / $gameHeight) * 64

[TextureRedefine]
width = 64
height = 32
formats = 0x816
overwriteWidth = ($width / $gameWidth) * 64
overwriteHeight = ($height / $gameHeight) * 32

[TextureRedefine]
width = 40
height = 22
overwriteWidth = ($width / $gameWidth) * 40
overwriteHeight = ($height / $gameHeight) * 22

[TextureRedefine]
width = 32
height = 16
formats = 0x816,0x80e
overwriteWidth = ($width / $gameWidth) * 32
overwriteHeight = ($height / $gameHeight) * 16

[TextureRedefine]
width = 20
height = 11
overwriteWidth = ($width / $gameWidth) * 20
overwriteHeight = ($height / $gameHeight) * 11

[TextureRedefine]
width = 16
height = 16
formats = 0x80e
overwriteWidth = ($width / $gameWidth) * 16
overwriteHeight = ($height / $gameHeight) * 16

[TextureRedefine]
width = 16
height = 8
formats = 0x816
overwriteWidth = ($width / $gameWidth) * 16
overwriteHeight = ($height / $gameHeight) * 8

[TextureRedefine]
width = 10
height = 5
overwriteWidth = ($width / $gameWidth) * 10
overwriteHeight = ($height / $gameHeight) * 5

[TextureRedefine]
width = 8
height = 8
formats = 0x816,0x80e
overwriteWidth = ($width / $gameWidth) * 8
overwriteHeight = ($height / $gameHeight) * 8

[TextureRedefine]
width = 5
height = 2
overwriteWidth = ($width / $gameWidth) * 5
overwriteHeight = ($height / $gameHeight) * 2

[TextureRedefine]
width = 4
height = 4
formats = 0x80e
overwriteWidth = ($width / $gameWidth) * 4
overwriteHeight = ($height / $gameHeight) * 4

[TextureRedefine]
width = 1
height = 1
formats = 0x816,0x80e
overwriteWidth = ($width / $gameWidth) * 1
overwriteHeight = ($height / $gameHeight) * 1

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