1
Scripting and Reverse Engineering / Need help figuring out how to zoom out field backgrounds
« on: 2019-05-30 07:09:49 »
My end goal is that I want to have high-res backgrounds on FF7 Switch, which only supports mods that replace existing in-game files one-to-one. As such, I figured out a way to change the background image in field files to anything I want, including higher-res images. The problem is that, when I put a higher-resolution image, it just zooms it in:
I know the high-res image is in there just fine because I'm able to open it and extract it properly in Makou Reactor. My guess is that something (e.g. the Field File Camera Matrix?) needs to zoom out somehow, but I have no idea what exactly dictates how a background image is rendered in-game. Any help would be much appreciated.
If you want to mess with it yourself, my script to change Field file backgrounds is here
https://github.com/niemasd/PyFF7/blob/master/field_change_background.py
And the specific lines that need tinkering start here:
https://github.com/niemasd/PyFF7/blob/master/PyFF7/field.py#L1601
Perhaps the Q-Gears source will be useful, e.g.:
https://github.com/q-gears/q-gears/blob/3da522b996f09e81c148b25bd8cd022d8db761ef/QGearsMain/src/data/QGearsFLevelBackground2DLoader.cpp#L48
I know the high-res image is in there just fine because I'm able to open it and extract it properly in Makou Reactor. My guess is that something (e.g. the Field File Camera Matrix?) needs to zoom out somehow, but I have no idea what exactly dictates how a background image is rendered in-game. Any help would be much appreciated.
If you want to mess with it yourself, my script to change Field file backgrounds is here
https://github.com/niemasd/PyFF7/blob/master/field_change_background.py
And the specific lines that need tinkering start here:
https://github.com/niemasd/PyFF7/blob/master/PyFF7/field.py#L1601
Perhaps the Q-Gears source will be useful, e.g.:
https://github.com/q-gears/q-gears/blob/3da522b996f09e81c148b25bd8cd022d8db761ef/QGearsMain/src/data/QGearsFLevelBackground2DLoader.cpp#L48