Difference between revisions of "FF8/Engine/WorldMapCamera"
< FF8
Jump to navigation
Jump to search
my_wiki>MaKiPL (Created page with "==Camera detail== Camera on world map is set to look-at target. Look at target is Squall, that is read from chara.one in world.fs file. As the camera is look-at, then it wor...") |
my_wiki>MaKiPL (→Camera build) |
||
Line 6: | Line 6: | ||
===Camera build=== | ===Camera build=== | ||
Remember! Values are '''little-endian'''! | Remember! Values are '''little-endian'''! | ||
+ | |||
+ | Physical camera location/translation: | ||
{| border="1" cellspacing="1" cellpadding="3" align="center" style="border: 1px solid black; border-collapse: collapse;" | {| border="1" cellspacing="1" cellpadding="3" align="center" style="border: 1px solid black; border-collapse: collapse;" | ||
! style="background:rgb(204,204,204)" | Offset | ! style="background:rgb(204,204,204)" | Offset | ||
Line 55: | Line 57: | ||
| RESET CAMERA | | RESET CAMERA | ||
|} | |} | ||
+ | |||
+ | Others: | ||
+ | |||
+ | {| border="1" cellspacing="1" cellpadding="3" align="center" style="border: 1px solid black; border-collapse: collapse;" | ||
+ | ! style="background:rgb(204,204,204)" | Static memory address | ||
+ | ! style="background:rgb(204,204,204)" | Default or medium value | ||
+ | ! style="background:rgb(204,204,204)" | Type of value | ||
+ | ! style="background:rgb(204,204,204)" | Description | ||
+ | |- | ||
+ | | 0x01CA92E4 | ||
+ | | 1024/640 | ||
+ | | uint16 | ||
+ | | Logical camera zoom - Takes physical camera and applies logical zoom* | ||
+ | |} | ||
+ | |||
+ | Logical zoom, for FF8 they're fixed values: | ||
+ | *640 - when camera mode is set to far | ||
+ | *1024 - when camera mode is set to near | ||
+ | These zoom is operated, when you in-game set the camera near-far preferences. (F default in Steam release) | ||
===Camera OPCODE=== | ===Camera OPCODE=== |
Revision as of 18:59, 16 May 2015
Camera detail
Camera on world map is set to look-at target. Look at target is Squall, that is read from chara.one in world.fs file.
As the camera is look-at, then it works and moves on "logic" sphere. Memory in FF8 is static. Camera memory starts soon after last face indice layout is hold. Is after 3-4 unknown NULL bytes.
Camera build
Remember! Values are little-endian!
Physical camera location/translation:
Offset | Static memory address | Default or medium value | Type of value | Description |
---|---|---|---|---|
0 | 0x0203ECF8 | 0 | short (2 bytes signed) | Camera Y axis translation. Camera.Location.Y = (Squall.Location + THIS); |
2 | 0x0203ECFA | AB FE | short (2 bytes signed) | Camera X axis translation. Camera.Location.X = (Squall.Location.X + THIS); |
4 | 0x0203ECFC | 00 E4 / 00 E0 | short (2 bytes signed) | Distance between camera and look-at-target (physical) |
8 | 0x0203ED00 | ~FF 92 | uint16 | Operates camera tangent Y axis position. This is: hacking this to bird-fly view or like in RPG |
10 | 0x0203ED02 | ranges from 00 00 to 0F FF | 12 bit | Operates camera tangent Z axis position. This is: the same as rotating camera in-game |
12 | 0x0203ED04 | 00 00 (FF 0F max) | 12 bit | Camera root rotation. For up-side down example. 9-12th bit is irrelevant. (1111 1111 xxxx 1111) |
40 | 0x0203ED2C | 0 | bool | RESET CAMERA |
Others:
Static memory address | Default or medium value | Type of value | Description |
---|---|---|---|
0x01CA92E4 | 1024/640 | uint16 | Logical camera zoom - Takes physical camera and applies logical zoom* |
Logical zoom, for FF8 they're fixed values:
- 640 - when camera mode is set to far
- 1024 - when camera mode is set to near
These zoom is operated, when you in-game set the camera near-far preferences. (F default in Steam release)