mirror of
https://github.com/cemu-project/cemu_graphic_packs.git
synced 2024-11-22 09:39:17 +01:00
[BotW] Centered Ultrawide HUD option, Grass Culling Fix
Also massively shrinks down the size of the GUIScreens patch since I removed the unnecessary gunk.
This commit is contained in:
parent
f4442b352a
commit
4cdffcaef2
@ -58,7 +58,7 @@ vec3 cubeMapSTM;
|
||||
int cubeMapFaceId;
|
||||
R0f = passParameterSem0;
|
||||
|
||||
#if $ultrawideHUD == 1
|
||||
#if $ultrawideHUDMode != 0
|
||||
float uv_x = 0.5 + (R0f.x - 0.5) / aspectRatio;
|
||||
R0f.xyzw = (texture(textureUnitPS0, vec2(uv_x, R0f.y)).xyzw);
|
||||
#else
|
||||
@ -95,7 +95,7 @@ PS1f = exp2(R127f.x);
|
||||
R0f.z = PS1f;
|
||||
// export
|
||||
|
||||
#if $ultrawideHUD == 1
|
||||
#if $ultrawideHUDMode != 0
|
||||
bool isBorder = uv_x < 0 || uv_x > 1.0;
|
||||
passPixelColor0 = isBorder ? vec4(0.0) : R0f.xyzw;
|
||||
#else
|
||||
|
@ -6,134 +6,31 @@ moduleMatches = 0xD91A406D,0x0F748D9C,0x9A61FF4C,0x8E3324A9,0xD71D859D,0x6FD41A6
|
||||
aspectRatio:
|
||||
.float $width/$height
|
||||
|
||||
grassCulling: ; The grass is calculated in a weird way, but this fix seems to work. So for safety, only enable it for ultrawide resolutions.
|
||||
.float (($ultrawideHUDMode != 0)*(($gameWidth/$gameHeight) / ($width/$height))) + (($ultrawideHUDMode == 0)*1.0)
|
||||
|
||||
[BotW_AspectRatio_V33]
|
||||
moduleMatches = 0xD91A406D
|
||||
|
||||
[BotW_AspectRatio_V208]
|
||||
moduleMatches = 0x6267BFD0
|
||||
|
||||
; rodata constants
|
||||
0x10197FC0 = .float $width/$height
|
||||
0x102CCFC0 = .float $width/$height
|
||||
0x10331374 = .float $width/$height
|
||||
0x101BF8E8 = .float ($width/$height)
|
||||
0x1030A57C = .float ($width/$height)
|
||||
0x1036DD4C = .float ($width/$height)
|
||||
|
||||
; 3D Rendering In Inventory (calculated every load)
|
||||
0x02CFC260 = lis r9, aspectRatio@ha
|
||||
0x02CFC274 = lfs f4, aspectRatio@l(r9)
|
||||
0x02E2C564 = lis r9, aspectRatio@ha
|
||||
0x02E2C578 = lfs f4, aspectRatio@l(r9)
|
||||
|
||||
; 3D Rendering (calculated every frame)
|
||||
0x036AD410 = lis r28, aspectRatio@ha
|
||||
0x036AD414 = lfs f12, aspectRatio@l(r28)
|
||||
0x0386D01C = lis r28, aspectRatio@ha
|
||||
0x0386D020 = lfs f12, aspectRatio@l(r28)
|
||||
|
||||
[BotW_AspectRatio_V48]
|
||||
moduleMatches = 0x0F748D9C
|
||||
; Grass Culling (calculated every frame)
|
||||
0x035b0a30 = lis r5, grassCulling@ha
|
||||
0x035b0a38 = lfs f11, grassCulling@l(r5)
|
||||
|
||||
; rodata constants
|
||||
0x10197FC0 = .float $width/$height
|
||||
0x102CCFC8 = .float $width/$height
|
||||
0x103313A4 = .float $width/$height
|
||||
|
||||
; 3D Rendering In Inventory (calculated every load)
|
||||
0x02CFC2CC = lis r9, aspectRatio@ha
|
||||
0x02CFC2E0 = lfs f4, aspectRatio@l(r9)
|
||||
|
||||
; 3D Rendering (calculated every frame)
|
||||
0x036AD81C = lis r28, aspectRatio@ha
|
||||
0x036AD820 = lfs f12, aspectRatio@l(r28)
|
||||
|
||||
[BotW_AspectRatio_V64]
|
||||
moduleMatches = 0x9A61FF4C
|
||||
|
||||
; rodata constants
|
||||
0x10198250 = .float $width/$height
|
||||
0x102CD450 = .float $width/$height
|
||||
0x1033182C = .float $width/$height
|
||||
|
||||
; 3D Rendering In Inventory (calculated every load)
|
||||
0x02CFD900 = lis r9, aspectRatio@ha
|
||||
0x02CFD914 = lfs f4, aspectRatio@l(r9)
|
||||
|
||||
; 3D Rendering (calculated every frame)
|
||||
0x036AEF04 = lis r28, aspectRatio@ha
|
||||
0x036AEF08 = lfs f12, aspectRatio@l(r28)
|
||||
|
||||
[BotW_AspectRatio_V80]
|
||||
moduleMatches = 0x8E3324A9
|
||||
|
||||
; rodata constants
|
||||
0x1019A5A8 = .float $width/$height
|
||||
0x102D4E30 = .float $width/$height
|
||||
0x103391B4 = .float $width/$height
|
||||
|
||||
; 3D Rendering In Inventory (calculated every load)
|
||||
0x02D056C8 = lis r9, aspectRatio@ha
|
||||
0x02D056DC = lfs f4, aspectRatio@l(r9)
|
||||
|
||||
; 3D Rendering (calculated every frame)
|
||||
0x036D0324 = lis r28, aspectRatio@ha
|
||||
0x036D0328 = lfs f12, aspectRatio@l(r28)
|
||||
|
||||
[BotW_AspectRatio_V97]
|
||||
moduleMatches = 0xD71D859D
|
||||
|
||||
; rodata constants
|
||||
0x1019F980 = .float $width/$height
|
||||
0x102DF8A0 = .float $width/$height
|
||||
0x1034122C = .float $width/$height
|
||||
|
||||
; 3D Rendering In Inventory (calculated every load)
|
||||
0x02D2E65C = lis r9, aspectRatio@ha
|
||||
0x02D2E670 = lfs f4, aspectRatio@l(r9)
|
||||
|
||||
; 3D Rendering (calculated every frame)
|
||||
0x03725CE8 = lis r28, aspectRatio@ha
|
||||
0x03725CEC = lfs f12, aspectRatio@l(r28)
|
||||
|
||||
[BotW_AspectRatio_V112]
|
||||
moduleMatches = 0x6FD41A61
|
||||
|
||||
; rodata constants
|
||||
0x1019F9A8 = .float $width/$height
|
||||
0x102DFB38 = .float $width/$height
|
||||
0x103414D4 = .float $width/$height
|
||||
|
||||
; 3D Rendering In Inventory (calculated every load)
|
||||
0x02D2F404 = lis r9, aspectRatio@ha
|
||||
0x02D2F418 = lfs f4, aspectRatio@l(r9)
|
||||
|
||||
; 3D Rendering (calculated every frame)
|
||||
0x03726E18 = lis r28, aspectRatio@ha
|
||||
0x03726E1C = lfs f12, aspectRatio@l(r28)
|
||||
|
||||
[BotW_AspectRatio_V144]
|
||||
moduleMatches = 0x9A2CA0C7
|
||||
|
||||
; rodata constants
|
||||
0x101A8A70 = .float $width/$height
|
||||
0x102ECFD0 = .float $width/$height
|
||||
0x1034F6CC = .float $width/$height
|
||||
|
||||
; 3D Rendering In Inventory (calculated every load)
|
||||
0x02D53CF4 = lis r9, aspectRatio@ha
|
||||
0x02D53D08 = lfs f4, aspectRatio@l(r9)
|
||||
|
||||
; 3D Rendering (calculated every frame)
|
||||
0x0375B128 = lis r28, aspectRatio@ha
|
||||
0x0375B12C = lfs f12, aspectRatio@l(r28)
|
||||
|
||||
[BotW_AspectRatio_V160]
|
||||
moduleMatches = 0x9A2CA0C7
|
||||
|
||||
; rodata constants
|
||||
0x101A8A70 = .float $width/$height
|
||||
0x102ECF88 = .float $width/$height
|
||||
0x1034F684 = .float $width/$height
|
||||
|
||||
; 3D Rendering In Inventory (calculated every load)
|
||||
0x02D53CF4 = lis r9, aspectRatio@ha
|
||||
0x02D53D08 = lfs f4, aspectRatio@l(r9)
|
||||
|
||||
; 3D Rendering (calculated every frame)
|
||||
0x0375AFF4 = lis r28, aspectRatio@ha
|
||||
0x0375AFF8 = lfs f12, aspectRatio@l(r28)
|
||||
|
||||
[BotW_AspectRatio_V176V192]
|
||||
moduleMatches = 0xFD091F9F,0xD472D8A5
|
||||
@ -151,18 +48,130 @@ moduleMatches = 0xFD091F9F,0xD472D8A5
|
||||
0x0386C314 = lis r28, aspectRatio@ha
|
||||
0x0386C318 = lfs f12, aspectRatio@l(r28)
|
||||
|
||||
[BotW_AspectRatio_V208]
|
||||
moduleMatches = 0x6267BFD0
|
||||
[BotW_AspectRatio_V160]
|
||||
moduleMatches = 0x9A2CA0C7
|
||||
|
||||
; rodata constants
|
||||
0x101BF8E8 = .float $width/$height
|
||||
0x1030A57C = .float $width/$height
|
||||
0x1036DD4C = .float $width/$height
|
||||
0x101A8A70 = .float $width/$height
|
||||
0x102ECF88 = .float $width/$height
|
||||
0x1034F684 = .float $width/$height
|
||||
|
||||
; 3D Rendering In Inventory (calculated every load)
|
||||
0x02E2C564 = lis r9, aspectRatio@ha
|
||||
0x02E2C578 = lfs f4, aspectRatio@l(r9)
|
||||
0x02D53CF4 = lis r9, aspectRatio@ha
|
||||
0x02D53D08 = lfs f4, aspectRatio@l(r9)
|
||||
|
||||
; 3D Rendering (calculated every frame)
|
||||
0x0386D01C = lis r28, aspectRatio@ha
|
||||
0x0386D020 = lfs f12, aspectRatio@l(r28)
|
||||
0x0375AFF4 = lis r28, aspectRatio@ha
|
||||
0x0375AFF8 = lfs f12, aspectRatio@l(r28)
|
||||
|
||||
[BotW_AspectRatio_V144]
|
||||
moduleMatches = 0x9A2CA0C7
|
||||
|
||||
; rodata constants
|
||||
0x101A8A70 = .float $width/$height
|
||||
0x102ECFD0 = .float $width/$height
|
||||
0x1034F6CC = .float $width/$height
|
||||
|
||||
; 3D Rendering In Inventory (calculated every load)
|
||||
0x02D53CF4 = lis r9, aspectRatio@ha
|
||||
0x02D53D08 = lfs f4, aspectRatio@l(r9)
|
||||
|
||||
; 3D Rendering (calculated every frame)
|
||||
0x0375B128 = lis r28, aspectRatio@ha
|
||||
0x0375B12C = lfs f12, aspectRatio@l(r28)
|
||||
|
||||
[BotW_AspectRatio_V112]
|
||||
moduleMatches = 0x6FD41A61
|
||||
|
||||
; rodata constants
|
||||
0x1019F9A8 = .float $width/$height
|
||||
0x102DFB38 = .float $width/$height
|
||||
0x103414D4 = .float $width/$height
|
||||
|
||||
; 3D Rendering In Inventory (calculated every load)
|
||||
0x02D2F404 = lis r9, aspectRatio@ha
|
||||
0x02D2F418 = lfs f4, aspectRatio@l(r9)
|
||||
|
||||
; 3D Rendering (calculated every frame)
|
||||
0x03726E18 = lis r28, aspectRatio@ha
|
||||
0x03726E1C = lfs f12, aspectRatio@l(r28)
|
||||
|
||||
[BotW_AspectRatio_V97]
|
||||
moduleMatches = 0xD71D859D
|
||||
|
||||
; rodata constants
|
||||
0x1019F980 = .float $width/$height
|
||||
0x102DF8A0 = .float $width/$height
|
||||
0x1034122C = .float $width/$height
|
||||
|
||||
; 3D Rendering In Inventory (calculated every load)
|
||||
0x02D2E65C = lis r9, aspectRatio@ha
|
||||
0x02D2E670 = lfs f4, aspectRatio@l(r9)
|
||||
|
||||
; 3D Rendering (calculated every frame)
|
||||
0x03725CE8 = lis r28, aspectRatio@ha
|
||||
0x03725CEC = lfs f12, aspectRatio@l(r28)
|
||||
|
||||
[BotW_AspectRatio_V80]
|
||||
moduleMatches = 0x8E3324A9
|
||||
|
||||
; rodata constants
|
||||
0x1019A5A8 = .float $width/$height
|
||||
0x102D4E30 = .float $width/$height
|
||||
0x103391B4 = .float $width/$height
|
||||
|
||||
; 3D Rendering In Inventory (calculated every load)
|
||||
0x02D056C8 = lis r9, aspectRatio@ha
|
||||
0x02D056DC = lfs f4, aspectRatio@l(r9)
|
||||
|
||||
; 3D Rendering (calculated every frame)
|
||||
0x036D0324 = lis r28, aspectRatio@ha
|
||||
0x036D0328 = lfs f12, aspectRatio@l(r28)
|
||||
|
||||
[BotW_AspectRatio_V64]
|
||||
moduleMatches = 0x9A61FF4C
|
||||
|
||||
; rodata constants
|
||||
0x10198250 = .float $width/$height
|
||||
0x102CD450 = .float $width/$height
|
||||
0x1033182C = .float $width/$height
|
||||
|
||||
; 3D Rendering In Inventory (calculated every load)
|
||||
0x02CFD900 = lis r9, aspectRatio@ha
|
||||
0x02CFD914 = lfs f4, aspectRatio@l(r9)
|
||||
|
||||
; 3D Rendering (calculated every frame)
|
||||
0x036AEF04 = lis r28, aspectRatio@ha
|
||||
0x036AEF08 = lfs f12, aspectRatio@l(r28)
|
||||
|
||||
[BotW_AspectRatio_V48]
|
||||
moduleMatches = 0x0F748D9C
|
||||
|
||||
; rodata constants
|
||||
0x10197FC0 = .float $width/$height
|
||||
0x102CCFC8 = .float $width/$height
|
||||
0x103313A4 = .float $width/$height
|
||||
|
||||
; 3D Rendering In Inventory (calculated every load)
|
||||
0x02CFC2CC = lis r9, aspectRatio@ha
|
||||
0x02CFC2E0 = lfs f4, aspectRatio@l(r9)
|
||||
|
||||
; 3D Rendering (calculated every frame)
|
||||
0x036AD81C = lis r28, aspectRatio@ha
|
||||
0x036AD820 = lfs f12, aspectRatio@l(r28)
|
||||
|
||||
[BotW_AspectRatio_V33]
|
||||
moduleMatches = 0xD91A406D
|
||||
|
||||
; rodata constants
|
||||
0x10197FC0 = .float $width/$height
|
||||
0x102CCFC0 = .float $width/$height
|
||||
0x10331374 = .float $width/$height
|
||||
|
||||
; 3D Rendering In Inventory (calculated every load)
|
||||
0x02CFC260 = lis r9, aspectRatio@ha
|
||||
0x02CFC274 = lfs f4, aspectRatio@l(r9)
|
||||
|
||||
; 3D Rendering (calculated every frame)
|
||||
0x036AD410 = lis r28, aspectRatio@ha
|
||||
0x036AD414 = lfs f12, aspectRatio@l(r28)
|
@ -52,7 +52,7 @@ copySubPanelStringLen:
|
||||
_scalePaneGUI:
|
||||
mflr r0
|
||||
|
||||
li r10, $ultrawideHUD
|
||||
li r10, $ultrawideHUDMode
|
||||
cmpwi r10, 0
|
||||
beq exitScale
|
||||
|
||||
@ -488,6 +488,11 @@ addi r10, r10, scr_ChallengeWin_00@l
|
||||
bla _compareString
|
||||
beq scaleInOutScreenToRightSide
|
||||
|
||||
lis r10, scr_EnergyMeterDLC_00@ha
|
||||
addi r10, r10, scr_EnergyMeterDLC_00@l
|
||||
bla _compareString
|
||||
beq scaleEnergyMeterDLCPanes
|
||||
|
||||
; lis r10, scr_Message_00@ha
|
||||
; addi r10, r10, scr_Message_00@l
|
||||
; bla _compareString
|
||||
@ -577,27 +582,27 @@ addi r5, r31, 0x80
|
||||
lis r10, str_N_State_00@ha
|
||||
addi r10, r10, str_N_State_00@l
|
||||
bla _compareString
|
||||
beq scalePaneToLeftSide
|
||||
beq scalePaneToLeftSideIf
|
||||
lis r10, str_Pa_SinJu_00@ha
|
||||
addi r10, r10, str_Pa_SinJu_00@l
|
||||
bla _compareString
|
||||
beq scalePaneAndKeepPos
|
||||
beq scalePaneAndKeepPosIf
|
||||
lis r10, str_Pa_SinJu_01@ha
|
||||
addi r10, r10, str_Pa_SinJu_01@l
|
||||
bla _compareString
|
||||
beq scalePaneAndKeepPos
|
||||
beq scalePaneAndKeepPosIf
|
||||
lis r10, str_Pa_SinJu_02@ha
|
||||
addi r10, r10, str_Pa_SinJu_02@l
|
||||
bla _compareString
|
||||
beq scalePaneAndKeepPos
|
||||
beq scalePaneAndKeepPosIf
|
||||
lis r10, str_Pa_SinJu_03@ha
|
||||
addi r10, r10, str_Pa_SinJu_03@l
|
||||
bla _compareString
|
||||
beq scalePaneAndKeepPos
|
||||
beq scalePaneAndKeepPosIf
|
||||
lis r10, str_Pa_SinJu_03@ha
|
||||
addi r10, r10, str_Pa_SinJu_03@l
|
||||
bla _compareString
|
||||
beq scalePaneAndKeepPos
|
||||
beq scalePaneAndKeepPosIf
|
||||
b exitScale
|
||||
|
||||
const_SensorsOffset:
|
||||
@ -609,7 +614,7 @@ lfs f12, const_SensorsOffset@l(r10)
|
||||
lis r10, str_N_InOut_00@ha
|
||||
addi r10, r10, str_N_InOut_00@l
|
||||
bla _compareString
|
||||
beq scalePaneAndKeepCustomPos
|
||||
beq scalePaneAndKeepCustomPosIf
|
||||
b exitScale
|
||||
scaleSoundMeterPanes:
|
||||
addi r5, r31, 0x80
|
||||
@ -618,7 +623,7 @@ lfs f12, const_SensorsOffset@l(r10)
|
||||
lis r10, str_N_InOut_00@ha
|
||||
addi r10, r10, str_N_InOut_00@l
|
||||
bla _compareString
|
||||
beq scalePaneAndKeepCustomPos
|
||||
beq scalePaneAndKeepCustomPosIf
|
||||
b exitScale
|
||||
scaleTempMeterPanes:
|
||||
addi r5, r31, 0x80
|
||||
@ -627,7 +632,7 @@ lfs f12, const_SensorsOffset@l(r10)
|
||||
lis r10, str_N_InOut_00@ha
|
||||
addi r10, r10, str_N_InOut_00@l
|
||||
bla _compareString
|
||||
beq scalePaneAndKeepCustomPos
|
||||
beq scalePaneAndKeepCustomPosIf
|
||||
b exitScale
|
||||
const_TimeOffset:
|
||||
.float 342*0.85
|
||||
@ -638,14 +643,14 @@ lfs f12, const_TimeOffset@l(r10)
|
||||
lis r10, str_N_All_00@ha
|
||||
addi r10, r10, str_N_All_00@l
|
||||
bla _compareString
|
||||
beq scalePaneAndKeepCustomPos
|
||||
beq scalePaneAndKeepCustomPosIf
|
||||
b exitScale
|
||||
scaleMainScreenWeatherPanes:
|
||||
addi r5, r31, 0x80
|
||||
lis r10, str_N_InOut_00@ha
|
||||
addi r10, r10, str_N_InOut_00@l
|
||||
bla _compareString
|
||||
beq scalePaneAndKeepPos
|
||||
beq scalePaneAndKeepPosIf
|
||||
b exitScale
|
||||
scaleMainScreenInformationTextPanes:
|
||||
addi r5, r31, 0x80
|
||||
@ -682,7 +687,7 @@ addi r5, r31, 0x80
|
||||
lis r10, str_Pa_LocationNameS_00@ha
|
||||
addi r10, r10, str_Pa_LocationNameS_00@l
|
||||
bla _compareString
|
||||
beq scalePaneToLeftSide
|
||||
beq scalePaneToLeftSideIf
|
||||
b exitScale
|
||||
scaleMainScreenBossGaugePanes:
|
||||
addi r5, r31, 0x80
|
||||
@ -733,7 +738,7 @@ addi r5, r31, 0x80
|
||||
lis r10, str_Pa_LocationNameS_00@ha
|
||||
addi r10, r10, str_Pa_LocationNameS_00@l
|
||||
bla _compareString
|
||||
beq scalePaneToLeftSide
|
||||
beq scalePaneToLeftSideIf
|
||||
lis r10, str_Pa_Message_00@ha
|
||||
addi r10, r10, str_Pa_Message_00@l
|
||||
bla _compareString
|
||||
@ -749,7 +754,7 @@ addi r5, r31, 0x80
|
||||
lis r10, str_N_In_00@ha
|
||||
addi r10, r10, str_N_In_00@l
|
||||
bla _compareString
|
||||
beq scalePaneToLeftSide
|
||||
beq scalePaneToLeftSideIf
|
||||
b exitScale
|
||||
|
||||
scaleSpiritOrbPanes:
|
||||
@ -757,11 +762,11 @@ addi r5, r31, 0x80
|
||||
lis r10, str_W_Base_00@ha
|
||||
addi r10, r10, str_W_Base_00@l
|
||||
bla _compareString
|
||||
beq scalePaneAndKeepPos
|
||||
beq scalePaneAndKeepPosIf
|
||||
lis r10, str_T_Time_00@ha
|
||||
addi r10, r10, str_T_Time_00@l
|
||||
bla _compareString
|
||||
beq scalePaneAndKeepPos
|
||||
beq scalePaneAndKeepPosIf
|
||||
b exitScale
|
||||
|
||||
scaleSimpleItemGetPanes:
|
||||
@ -783,35 +788,35 @@ addi r5, r31, 0x80
|
||||
lis r10, str_W_Base_00@ha
|
||||
addi r10, r10, str_W_Base_00@l
|
||||
bla _compareString
|
||||
beq scalePaneAndKeepPos
|
||||
beq scalePaneAndKeepPosIf
|
||||
lis r10, str_T_Num_00@ha
|
||||
addi r10, r10, str_T_Num_00@l
|
||||
bla _compareString
|
||||
beq scalePaneAndKeepPos
|
||||
beq scalePaneAndKeepPosIf
|
||||
lis r10, str_T_Time_00@ha
|
||||
addi r10, r10, str_T_Time_00@l
|
||||
bla _compareString
|
||||
beq scalePaneAndKeepPos
|
||||
beq scalePaneAndKeepPosIf
|
||||
lis r10, str_T_Rupee_00@ha
|
||||
addi r10, r10, str_T_Rupee_00@l
|
||||
bla _compareString
|
||||
beq scalePaneAndKeepPos
|
||||
beq scalePaneAndKeepPosIf
|
||||
lis r10, str_T_KeyNum_00@ha
|
||||
addi r10, r10, str_T_KeyNum_00@l
|
||||
bla _compareString
|
||||
beq scalePaneAndKeepPos
|
||||
beq scalePaneAndKeepPosIf
|
||||
lis r10, str_P_Icon_00@ha
|
||||
addi r10, r10, str_P_Icon_00@l
|
||||
bla _compareString
|
||||
beq scalePaneAndKeepPos
|
||||
beq scalePaneAndKeepPosIf
|
||||
lis r10, str_N_Icon_00@ha
|
||||
addi r10, r10, str_N_Icon_00@l
|
||||
bla _compareString
|
||||
beq scalePaneAndKeepPos
|
||||
beq scalePaneAndKeepPosIf
|
||||
lis r10, str_P_KologNuts_00@ha
|
||||
addi r10, r10, str_P_KologNuts_00@l
|
||||
bla _compareString
|
||||
beq scalePaneAndKeepPos
|
||||
beq scalePaneAndKeepPosIf
|
||||
b exitScale
|
||||
|
||||
const_ItemGetPlusMinusOffset:
|
||||
@ -823,7 +828,7 @@ lfs f12, const_ItemGetPlusMinusOffset@l(r10)
|
||||
lis r10, str_N_InOut_00@ha
|
||||
addi r10, r10, str_N_InOut_00@l
|
||||
bla _compareString
|
||||
beq scalePaneAndKeepCustomPos
|
||||
beq scalePaneAndKeepCustomPosIf
|
||||
b exitScale
|
||||
|
||||
scaleItemGetNoPanes:
|
||||
@ -831,7 +836,7 @@ addi r5, r31, 0x80
|
||||
lis r10, str_N_Capture_00@ha
|
||||
addi r10, r10, str_N_Capture_00@l
|
||||
bla _compareString
|
||||
beq scalePaneAndKeepPos
|
||||
beq scalePaneAndKeepPosIf
|
||||
b continueSimpleItemGetPanes
|
||||
|
||||
scaleWolfLinkHeartPanes:
|
||||
@ -854,11 +859,11 @@ addi r5, r31, 0x80
|
||||
lis r10, str_P_Sh_00@ha
|
||||
addi r10, r10, str_P_Sh_00@l
|
||||
bla _compareString
|
||||
beq scalePaneAndKeepPos
|
||||
beq scalePaneAndKeepPosIf
|
||||
lis r10, str_P_Illust_00@ha
|
||||
addi r10, r10, str_P_Illust_00@l
|
||||
bla _compareString
|
||||
beq scalePaneAndKeepPos
|
||||
beq scalePaneAndKeepPosIf
|
||||
b exitScale
|
||||
|
||||
const_WolfHeartOffset:
|
||||
@ -868,13 +873,13 @@ addi r5, r31, 0x80
|
||||
lis r10, str_T_Name_00@ha
|
||||
addi r10, r10, str_T_Name_00@l
|
||||
bla _compareString
|
||||
beq scalePaneAndKeepPos
|
||||
beq scalePaneAndKeepPosIf
|
||||
lis r10, const_WolfHeartOffset@ha
|
||||
lfs f12, const_WolfHeartOffset@l(r10)
|
||||
lis r10, str_N_InOut_00@ha
|
||||
addi r10, r10, str_N_InOut_00@l
|
||||
bla _compareString
|
||||
beq scalePaneAndKeepCustomPos
|
||||
beq scalePaneAndKeepCustomPosIf
|
||||
b exitScale
|
||||
|
||||
scaleMainScreenMasterSwordPanes:
|
||||
@ -979,7 +984,7 @@ addi r5, r31, 0x80
|
||||
lis r10, str_N_MainAll_00@ha ; scales the DPAD guide on the right
|
||||
addi r10, r10, str_N_MainAll_00@l
|
||||
bla _compareString
|
||||
beq scalePaneAndKeepPos
|
||||
beq scalePaneAndKeepPosIf
|
||||
lis r10, str_N_Cut_00@ha ; scales the item/rune selection bar
|
||||
addi r10, r10, str_N_Cut_00@l
|
||||
bla _compareString
|
||||
@ -1258,7 +1263,7 @@ lfs f12, const_590@l(r10)
|
||||
lis r10, str_Pa_PickUpWin_00@ha
|
||||
addi r10, r10, str_Pa_PickUpWin_00@l
|
||||
bla _compareString
|
||||
beq scalePaneAndKeepPos
|
||||
beq scalePaneAndKeepPosIf
|
||||
b exitScale
|
||||
|
||||
scaleRuneGuidePanes:
|
||||
@ -1409,19 +1414,19 @@ addi r5, r31, 0x80
|
||||
lis r10, str_W_Base_00@ha
|
||||
addi r10, r10, str_W_Base_00@l
|
||||
bla _compareString
|
||||
beq scalePaneAndKeepPos
|
||||
beq scalePaneAndKeepPosIf
|
||||
lis r10, str_T_Text_00@ha
|
||||
addi r10, r10, str_T_Text_00@l
|
||||
bla _compareString
|
||||
beq scalePaneAndKeepPos
|
||||
beq scalePaneAndKeepPosIf
|
||||
lis r10, str_T_Text_00_JPja@ha
|
||||
addi r10, r10, str_T_Text_00_JPja@l
|
||||
bla _compareString
|
||||
beq scalePaneAndKeepPos
|
||||
beq scalePaneAndKeepPosIf
|
||||
lis r10, str_N_GuideOn_00@ha
|
||||
addi r10, r10, str_N_GuideOn_00@l
|
||||
bla _compareString
|
||||
beq scalePaneAndKeepPos
|
||||
beq scalePaneAndKeepPosIf
|
||||
b exitScale
|
||||
|
||||
scaleCursorPanes:
|
||||
@ -1553,7 +1558,7 @@ beq scaleOnlyPos
|
||||
lis r10, str_Pa_RotateGuide_00@ha
|
||||
addi r10, r10, str_Pa_RotateGuide_00@l
|
||||
bla _compareString
|
||||
beq scalePaneAndKeepPos
|
||||
beq scalePaneAndKeepPosIf
|
||||
lis r10, str_N_State_00@ha
|
||||
addi r10, r10, str_N_State_00@l
|
||||
bla _compareString
|
||||
@ -1715,11 +1720,11 @@ lfs f12, const_SkipButtonOffset@l(r10)
|
||||
lis r10, str_N_InOut_00@ha
|
||||
addi r10, r10, str_N_InOut_00@l
|
||||
bla _compareString
|
||||
beq scalePaneAndKeepCustomPos
|
||||
beq scalePaneAndKeepCustomPosIf
|
||||
lis r10, str_N_Glow_00@ha
|
||||
addi r10, r10, str_N_Glow_00@l
|
||||
bla _compareString
|
||||
beq scalePaneAndKeepCustomPos
|
||||
beq scalePaneAndKeepCustomPosIf
|
||||
b exitScale
|
||||
|
||||
scaleLoadSaveIconPanes:
|
||||
@ -2115,11 +2120,11 @@ addi r5, r31, 0x80
|
||||
lis r10, str_N_Region_01@ha
|
||||
addi r10, r10, str_N_Region_01@l
|
||||
bla _compareString
|
||||
beq scalePaneAndKeepPos
|
||||
beq scalePaneAndKeepPosIf
|
||||
lis r10, str_N_Region_01_JPja@ha
|
||||
addi r10, r10, str_N_Region_01_JPja@l
|
||||
bla _compareString
|
||||
beq scalePaneAndKeepPos
|
||||
beq scalePaneAndKeepPosIf
|
||||
b exitScale
|
||||
|
||||
scaleMessageTipsPanes:
|
||||
@ -2150,6 +2155,19 @@ bla _compareString
|
||||
beq scalePaneNormal
|
||||
b exitScale
|
||||
|
||||
const_EnergyMeterOffset:
|
||||
.float 392
|
||||
|
||||
scaleEnergyMeterDLCPanes:
|
||||
addi r5, r31, 0x80
|
||||
lis r10, const_EnergyMeterOffset@ha
|
||||
lfs f12, const_EnergyMeterOffset@l(r10)
|
||||
lis r10, str_N_InOut_00@ha
|
||||
addi r10, r10, str_N_InOut_00@l
|
||||
bla _compareString
|
||||
beq scalePaneNormal
|
||||
b exitScale
|
||||
|
||||
; ------------------------------------------------------------------------------------------
|
||||
; Generic methods used to scale a specific pane type
|
||||
|
||||
@ -2286,6 +2304,12 @@ fadds f0, f0, f9
|
||||
stfs f0, 0x1C(r31)
|
||||
b exitScale
|
||||
|
||||
scalePaneToLeftSideIf:
|
||||
li r10, $ultrawideHUDMode
|
||||
cmpwi r10, 1
|
||||
beq scalePaneToLeftSide
|
||||
bne scalePaneNormal
|
||||
|
||||
movePaneToLeftSide:
|
||||
lis r10, const_PaddingLeftSide@ha
|
||||
lfs f9, const_PaddingLeftSide@l(r10)
|
||||
@ -2445,6 +2469,11 @@ fsubs f0, f11, f0
|
||||
stfs f0, 0x1C(r31)
|
||||
b exitScale
|
||||
|
||||
scalePaneAndKeepPosIf:
|
||||
li r10, $ultrawideHUDMode
|
||||
cmpwi r10, 1
|
||||
beq scalePaneAndKeepPos
|
||||
bne scalePaneAndPos
|
||||
|
||||
moveKeepPos:
|
||||
lis r10, const_0@ha
|
||||
@ -2473,6 +2502,12 @@ stfs f0, 0x1C(r31)
|
||||
b exitScale
|
||||
|
||||
; Pass custom pos as f12
|
||||
scalePaneAndKeepCustomPosIf:
|
||||
li r10, $ultrawideHUDMode
|
||||
cmpwi r10, 1
|
||||
beq scalePaneAndKeepCustomPos
|
||||
bne scalePaneAndCenterCustomPos
|
||||
|
||||
scalePaneAndKeepCustomPos:
|
||||
lis r10, const_AspectRatio@ha
|
||||
lfs f0, const_AspectRatio@l(r10)
|
||||
@ -2509,6 +2544,45 @@ fsubs f0, f0, f12
|
||||
stfs f0, 0x1C(r31)
|
||||
b exitScale
|
||||
|
||||
; todo: currently broken for left-sided elements
|
||||
scalePaneAndCenterCustomPos:
|
||||
lis r10, const_AspectRatio@ha
|
||||
lfs f0, const_AspectRatio@l(r10)
|
||||
lfs f9, 0x34(r31)
|
||||
fmuls f0, f0, f9
|
||||
stfs f0, 0x34(r31)
|
||||
|
||||
; [XPositionOfPane] + ((1280/2 - [XPositionOfPane]) * (1-[AspectRatio])))
|
||||
lis r10, const_0@ha
|
||||
lfs f11, const_0@l(r10)
|
||||
lfs f9, 0x1C(r31)
|
||||
fcmpu f9, f11
|
||||
lis r10, const_640@ha
|
||||
lfs f0, const_640@l(r10)
|
||||
lfs f9, 0x1C(r31)
|
||||
bge .+0x08
|
||||
fsubs f9, f11, f9
|
||||
fsubs f0, f0, f9
|
||||
lis r10, const_1@ha
|
||||
lfs f13, const_1@l(r10)
|
||||
lis r10, const_AspectRatio@ha
|
||||
lfs f9, const_AspectRatio@l(r10)
|
||||
fsubs f13, f13, f9
|
||||
fmuls f0, f0, f13
|
||||
lfs f9, 0x1C(r31)
|
||||
bge .+0x08
|
||||
fsubs f9, f11, f9
|
||||
fadds f0, f9, f0
|
||||
bge .+0x08
|
||||
fsubs f0, f11, f0
|
||||
stfs f0, 0x1C(r31)
|
||||
|
||||
lis r10, const_640@ha
|
||||
lfs f11, const_640@l(r10)
|
||||
fsubs f0, f0, f11
|
||||
stfs f0, 0x1C(r31)
|
||||
b exitScale
|
||||
|
||||
movePaneToCustomSize:
|
||||
lis r10, const_AspectRatio@ha
|
||||
lfs f0, const_AspectRatio@l(r10)
|
||||
@ -2611,8 +2685,15 @@ lfs f0, const_AspectRatio@l(r10)
|
||||
lfs f9, 0x34(r31)
|
||||
fmuls f0, f0, f9
|
||||
stfs f0, 0x34(r31)
|
||||
; if the ultrawide mode is 1 (edge HUD), add padding so that the map gets initialized at the right edge
|
||||
li r10, $ultrawideHUDMode
|
||||
cmpwi r4, 1
|
||||
lis r10, const_0@ha
|
||||
lfs f9, const_0@l(r10)
|
||||
bne noMapPadding
|
||||
lis r10, const_PaddingRightSide@ha
|
||||
lfs f9, const_PaddingRightSide@l(r10)
|
||||
noMapPadding:
|
||||
lfs f0, 0x1C(r31)
|
||||
fadds f0, f0, f9
|
||||
stfs f0, 0x1C(r31)
|
||||
@ -2623,10 +2704,14 @@ stw r5, mapXPositionAddr@l(r10)
|
||||
b exitScale
|
||||
|
||||
setMapPosition:
|
||||
li r4, $ultrawideHUD
|
||||
li r4, $ultrawideHUDMode
|
||||
cmpwi r4, 0
|
||||
beq setNothing
|
||||
|
||||
li r4, $ultrawideHUDMode ; if ultramode is centered, keep the map centered
|
||||
cmpwi r4, 2
|
||||
beq setToMap
|
||||
|
||||
cmpwi r31, 0
|
||||
beq setToMinimap
|
||||
|
||||
@ -2680,7 +2765,8 @@ mr r6, r12
|
||||
mr r8, r10
|
||||
mflr r0
|
||||
|
||||
li r10, $ultrawideHUD
|
||||
; if ultrawide mode is set to 0, return early
|
||||
li r10, $ultrawideHUDMode
|
||||
cmpwi r10, 0
|
||||
beq exitPaneBasedProjection
|
||||
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -12,7 +12,8 @@ $gameWidth = 1280
|
||||
$gameHeight = 720
|
||||
$aspectRatioWidth = 16
|
||||
$aspectRatioHeight = 9
|
||||
$ultrawideHUD:int = 0
|
||||
$showUltrawideOptions:int = 0
|
||||
$ultrawideHUDMode:int = 0
|
||||
$fxaa:int = 1
|
||||
$shadowRes = 1
|
||||
$subPix:int = 1.0
|
||||
@ -30,52 +31,62 @@ $shadowFarEnd = 1.0
|
||||
[Preset]
|
||||
name = 16:9 (Default)
|
||||
category = Aspect Ratio
|
||||
$aspectRatioWidth = 16
|
||||
$aspectRatioHeight = 9
|
||||
$showUltrawideOptions:int = 0
|
||||
$ultrawideHUDMode:int = 0
|
||||
|
||||
[Preset]
|
||||
name = 16:10
|
||||
category = Aspect Ratio
|
||||
$aspectRatioWidth = 16
|
||||
$aspectRatioHeight = 10
|
||||
$showUltrawideOptions:int = 0
|
||||
$ultrawideHUDMode:int = 0
|
||||
|
||||
[Preset]
|
||||
name = 21:9
|
||||
category = Aspect Ratio
|
||||
$aspectRatioWidth = 21
|
||||
$aspectRatioHeight = 9
|
||||
$ultrawideHUD:int = 1
|
||||
$showUltrawideOptions:int = 1
|
||||
|
||||
[Preset]
|
||||
name = 32:9
|
||||
category = Aspect Ratio
|
||||
$aspectRatioWidth = 32
|
||||
$aspectRatioHeight = 9
|
||||
$ultrawideHUD:int = 1
|
||||
$showUltrawideOptions:int = 1
|
||||
|
||||
[Preset]
|
||||
name = 32:10
|
||||
category = Aspect Ratio
|
||||
$aspectRatioWidth = 32
|
||||
$aspectRatioHeight = 10
|
||||
$ultrawideHUD:int = 1
|
||||
$showUltrawideOptions:int = 1
|
||||
|
||||
[Preset]
|
||||
name = 48:9
|
||||
category = Aspect Ratio
|
||||
$aspectRatioWidth = 48
|
||||
$aspectRatioHeight = 9
|
||||
$ultrawideHUD:int = 1
|
||||
$showUltrawideOptions:int = 1
|
||||
|
||||
[Preset]
|
||||
name = 4:3
|
||||
category = Aspect Ratio
|
||||
$aspectRatioWidth = 4
|
||||
$aspectRatioHeight = 3
|
||||
$showUltrawideOptions:int = 0
|
||||
$ultrawideHUDMode:int = 0
|
||||
|
||||
[Preset]
|
||||
name = 5:4
|
||||
category = Aspect Ratio
|
||||
$aspectRatioWidth = 5
|
||||
$aspectRatioHeight = 4
|
||||
$showUltrawideOptions:int = 0
|
||||
$ultrawideHUDMode:int = 0
|
||||
|
||||
# 16:9 Resolutions
|
||||
|
||||
@ -340,6 +351,20 @@ condition = ((($aspectRatioWidth - 48) == 0) + (($aspectRatioHeight - 9) == 0))
|
||||
$width = 5760
|
||||
$height = 1080
|
||||
|
||||
[Preset]
|
||||
name = 7680x1440
|
||||
category = Resolution
|
||||
condition = ((($aspectRatioWidth - 48) == 0) + (($aspectRatioHeight - 9) == 0)) == 2
|
||||
$width = 7680
|
||||
$height = 1440
|
||||
|
||||
[Preset]
|
||||
name = 11520x2160
|
||||
category = Resolution
|
||||
condition = ((($aspectRatioWidth - 48) == 0) + (($aspectRatioHeight - 9) == 0)) == 2
|
||||
$width = 11520
|
||||
$height = 2160
|
||||
|
||||
# 4:3 Resolutions
|
||||
|
||||
[Preset]
|
||||
@ -407,6 +432,27 @@ condition = ((($aspectRatioWidth - 5) == 0) + (($aspectRatioHeight - 4) == 0)) =
|
||||
$width = 14400
|
||||
$height = 2700
|
||||
|
||||
# Ultrawide Mode Options
|
||||
|
||||
[Preset]
|
||||
name = Edge HUD (Default)
|
||||
category = Ultrawide HUD Mode
|
||||
condition = $showUltrawideOptions == 1
|
||||
$ultrawideHUDMode:int = 1
|
||||
default = 1
|
||||
|
||||
[Preset]
|
||||
name = Centered HUD
|
||||
category = Ultrawide HUD Mode
|
||||
condition = $showUltrawideOptions == 1
|
||||
$ultrawideHUDMode:int = 2
|
||||
|
||||
[Preset]
|
||||
name = No HUD Fixes (stretched HUD)
|
||||
condition = $showUltrawideOptions == 1
|
||||
category = Ultrawide HUD Mode
|
||||
$ultrawideHUDMode:int = 0
|
||||
|
||||
# Anti-Aliasing
|
||||
|
||||
[Preset]
|
||||
@ -451,6 +497,7 @@ name = Extreme (400%, Unstable)
|
||||
category = Shadows
|
||||
$shadowRes = 4
|
||||
|
||||
# Shadow Draw Distance
|
||||
|
||||
[Preset]
|
||||
category = Shadow Draw Distance
|
||||
@ -492,6 +539,9 @@ $shadowNearbyEnd = 1.4
|
||||
$shadowFarStart = 1.4
|
||||
$shadowFarEnd = 1.55
|
||||
|
||||
|
||||
# Texture Changes
|
||||
|
||||
# All 720p textures:
|
||||
# - 0x001=World Lighting Red8
|
||||
# - 0x005=Link and Objects Depth
|
||||
|
Loading…
Reference in New Issue
Block a user