[Definition]
titleIds = 00050000101C9300,00050000101C9400,00050000101C9500
name = Resolution
path = "The Legend of Zelda: Breath of the Wild/Graphics/Resolution"
description = Changes the game's resolution. Compatible with 1.14.0! Expect bugs since this is work-in-progress. Please report bugs to https://github.com/slashiee/gfx_pack/issues/7 .
version = 3

// Performance

[Preset]
name = 256x144
$width = 256
$height = 144
$gameWidth = 1280
$gameHeight = 720

[Preset]
name = 427x240
$width = 427
$height = 240
$gameWidth = 1280
$gameHeight = 720

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

[Preset]
name = 854x480
$width = 854
$height = 480
$gameWidth = 1280
$gameHeight = 720

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

// Quality

[Preset]
name = 1600x900
$width = 1600
$height = 900
$gameWidth = 1280
$gameHeight = 720

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

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

[Preset]
name = 2732x1536
$width = 2732
$height = 1536
$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

// Enthusiast

[Preset]
name = 7680x4320
$width = 7680
$height = 4320
$gameWidth = 1280
$gameHeight = 720

[Preset]
name = 10240x5760
$width = 10240
$height = 5760
$gameWidth = 1280
$gameHeight = 720


# Depth/Geometry Rendering
[TextureRedefine] 
width = 1280
height = 720
formats = 0x816
overwriteWidth = ($width/$gameWidth) * 1280
overwriteHeight = ($height/$gameHeight) * 720

[TextureRedefine] # Landscape Depth, followed by objects depth rendering
width = 1280
height = 720
formats = 0x80e,0x019
overwriteWidth = ($width/$gameWidth) * 1280
overwriteHeight = ($height/$gameHeight) * 720

[TextureRedefine] # Geometry Rendering
width = 1280
height = 720
formats = 0x41a
overwriteWidth = ($width/$gameWidth) * 1280
overwriteHeight = ($height/$gameHeight) * 720
overwriteFormat = 0x419

[TextureRedefine] # Normals Rendering
width = 1280
height = 720
formats = 0x01a
overwriteWidth = ($width/$gameWidth) * 1280
overwriteHeight = ($height/$gameHeight) * 720
overwriteFormat = 0x01f

[TextureRedefine] # Green/Red Rendering (?)
width = 1280
height = 720
formats = 0x007
overwriteWidth = ($width/$gameWidth) * 1280
overwriteHeight = ($height/$gameHeight) * 720


# Additional Rendering
[TextureRedefine] # 16bit Depth
width = 640
height = 368
formats = 0x005
overwriteWidth = ($width/$gameWidth) * 640
overwriteHeight = ($height/$gameHeight) * 368

[TextureRedefine] # 32F Various Depths (Sky, Link Depth(?),)
width = 640
height = 368
formats = 0x80e
overwriteWidth = ($width/$gameWidth) * 640
overwriteHeight = ($height/$gameHeight) * 368

[TextureRedefine] # Long-Depth used by Link Depth
width = 640
height = 360
formats = 0x816
overwriteWidth = ($width/$gameWidth) * 640
overwriteHeight = ($height/$gameHeight) * 360

[TextureRedefine] # Normals used by Link Depth
width = 640
height = 360
formats = 0x01a
overwriteWidth = ($width/$gameWidth) * 640
overwriteHeight = ($height/$gameHeight) * 360

[TextureRedefine] # Normals with textures mapped
width = 640
height = 368
formats = 0x01a
overwriteWidth = ($width/$gameWidth) * 640
overwriteHeight = ($height/$gameHeight) * 368

[TextureRedefine] # 32F Link Depth 2
width = 640
height = 360
formats = 0x80e,0x802
overwriteWidth = ($width/$gameWidth) * 640
overwriteHeight = ($height/$gameHeight) * 360

[TextureRedefine] # Small Depth
width = 320
height = 192
formats = 0x80e
overwriteWidth = ($width/$gameWidth) * 320
overwriteHeight = ($height/$gameHeight) * 192

[TextureRedefine] # Detailed Depth
width = 640
height = 368
formats = 0x816
overwriteWidth = ($width/$gameWidth) * 640
overwriteHeight = ($height/$gameHeight) * 368

[TextureRedefine] # Long-Depth
width = 1280
height = 720
formats = 0x806,0x001
overwriteWidth = ($width/$gameWidth) * 1280
overwriteHeight = ($height/$gameHeight) * 720

[TextureRedefine] # FX Depth
width = 640
height = 368
formats = 0x820
overwriteWidth = ($width/$gameWidth) * 640
overwriteHeight = ($height/$gameHeight) * 368

[TextureRedefine] # FX Depth 2
width = 640
height = 360
formats = 0x820
overwriteWidth = ($width/$gameWidth) * 640
overwriteHeight = ($height/$gameHeight) * 360

[TextureRedefine] # Depth used in final composite
width = 640
height = 360
formats = 0x001
overwriteWidth = ($width/$gameWidth) * 640
overwriteHeight = ($height/$gameHeight) * 360

[TextureRedefine] # FX Depth Buffer
width = 1280
height = 720
formats = 0x005
overwriteWidth = ($width/$gameWidth) * 1280
overwriteHeight = ($height/$gameHeight) * 720

[TextureRedefine] # Depth
width = 640
height = 720
formats = 0x005
overwriteWidth = ($width/$gameWidth) * 1280
overwriteHeight = ($height/$gameHeight) * 720

[TextureRedefine] # Link Cutout
width = 640
height = 368
formats = 0x001
overwriteWidth = ($width/$gameWidth) * 640
overwriteHeight = ($height/$gameHeight) * 368

[TextureRedefine] # Depth Map 2
width = 320
height = 180
formats = 0x001
overwriteWidth = ($width/$gameWidth) * 320
overwriteHeight = ($height/$gameHeight) * 180

# Fix Shadows
[TextureRedefine] # Depth Map 2
width = 320
height = 180
formats = 0x001
overwriteWidth = ($width/$gameWidth) * 320
overwriteHeight = ($height/$gameHeight) * 180


# Depth Stuff done in Additional Rendering
[TextureRedefine] # Small Depth
width = 320
height = 180
formats = 0x80e
overwriteWidth = ($width/$gameWidth) * 320
overwriteHeight = ($height/$gameHeight) * 180

[TextureRedefine] # Small Depth
width = 160
height = 96
formats = 0x80e
overwriteWidth = ($width/$gameWidth) * 160
overwriteHeight = ($height/$gameHeight) * 96

[TextureRedefine] # Small Depth
width = 160
height = 90
formats = 0x80e
overwriteWidth = ($width/$gameWidth) * 160
overwriteHeight = ($height/$gameHeight) * 90

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

[TextureRedefine] # Small Depth
width = 160
height = 90
formats = 0x806
overwriteWidth = ($width/$gameWidth) * 160
overwriteHeight = ($height/$gameHeight) * 90

[TextureRedefine] # Small Depth
width = 96
height = 48
formats = 0x806,0x826
overwriteWidth = ($width/$gameWidth) * 96
overwriteHeight = ($height/$gameHeight) * 48

[TextureRedefine] # Small Depth
width = 128
height = 48
formats = 0x806
overwriteWidth = ($width/$gameWidth) * 128
overwriteHeight = ($height/$gameHeight) * 48

[TextureRedefine] # Small Depth
width = 96
height = 48
formats = 0x806
overwriteWidth = ($width/$gameWidth) * 96
overwriteHeight = ($height/$gameHeight) * 48

[TextureRedefine] # Depth
width = 320
height = 180
formats = 0x007
overwriteWidth = ($width/$gameWidth) * 320
overwriteHeight = ($height/$gameHeight) * 180

[TextureRedefine] # Depth
width = 320
height = 180
formats = 0x806,0x80e
overwriteWidth = ($width/$gameWidth) * 320
overwriteHeight = ($height/$gameHeight) * 180

# Main Menu
# Menu Sword Logo Blur
[TextureRedefine]
width = 128
height = 80
formats = 0x01a
overwriteWidth = ($width/$gameWidth) * 128
overwriteHeight = ($height/$gameHeight) * 80

[TextureRedefine]
width = 120
height = 75
formats = 0x01a
overwriteWidth = ($width/$gameWidth) * 120
overwriteHeight = ($height/$gameHeight) * 75

# Menu Background Image Blur
[TextureRedefine]
width = 320
height = 192
formats = 0x01a
overwriteWidth = ($width/$gameWidth) * 320
overwriteHeight = ($height/$gameHeight) * 192

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

# Blurred Background
[TextureRedefine]
width = 320
height = 192
formats = 0x019
overwriteWidth = ($width/$gameWidth) * 320
overwriteHeight = ($height/$gameHeight) * 192

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

# Camera Depth
[TextureRedefine]
width = 512
height = 256
formats = 0x816,0x001
overwriteWidth = ($width/$gameWidth) * 512
overwriteHeight = ($height/$gameHeight) * 256

[TextureRedefine]
width = 256
height = 128
formats = 0x001
overwriteWidth = ($width/$gameWidth) * 256
overwriteHeight = ($height/$gameHeight) * 128

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