This shows you the differences between two versions of the page.
Both sides previous revision Previous revision | Next revision Both sides next revision | ||
kirby64_the_crystal_shards:level_settings_blocks [2020/06/07 20:53] jesusyoshi54 [Normal Groups] |
kirby64_the_crystal_shards:level_settings_blocks [2020/08/18 16:11] jesusyoshi54 [Camera&Kirby Nodes] |
||
---|---|---|---|
Line 314: | Line 314: | ||
</code> | </code> | ||
+ | For any of the camera values, 9999 can be used to disable reading that value. For a pair, -9999 is used in the first member and 9999 in the second member to disable them. | ||
+ | |||
+ | Certain values are only used if the bool enables them. For example a focus pos is only used if that axis is locked. | ||
+ | |||
+ | The bounds variables basically set limits on how far the camera moves before panning to face kirby instead of scrolling. | ||
<code c> | <code c> | ||
struct Camera_Node | struct Camera_Node | ||
{ | { | ||
- | /*0x00*/ u16 Camera_Type; | + | /*0x00*/ u8 Profile_View; /* Set position to be in line with kirbys side*/ |
+ | /*0x01*/ u8 Pad; /*Unused*/ | ||
/*0x02*/ u8 Lock_X_pos; | /*0x02*/ u8 Lock_X_pos; | ||
/*0x03*/ u8 Lock_Y_pos; | /*0x03*/ u8 Lock_Y_pos; | ||
/*0x04*/ u8 Lock_Z_pos; | /*0x04*/ u8 Lock_Z_pos; | ||
/*0x05*/ u8 unused; | /*0x05*/ u8 unused; | ||
- | /*0x06*/ u8 unk1; | + | /*0x06*/ u8 DisableCamPhi; |
- | /*0x07*/ u8 unk2; | + | /*0x07*/ u8 DisableCamPhiDown; |
- | /*0x08*/ u8 Follow_X_Angle; | + | /*0x08*/ u8 EnableCamTheta; |
- | /*0x09*/ u8 unk4; | + | /*0x09*/ u8 pad2; |
- | /*0x0A*/ u8 unk5; | + | /*0x0A*/ u16 pad3; |
/*0x0C*/ f32 X_Focus_Pos; | /*0x0C*/ f32 X_Focus_Pos; | ||
/*0x10*/ f32 Y_Focus_Pos; | /*0x10*/ f32 Y_Focus_Pos; | ||
- | /*0x14*/ f32 Flag; //usually 9999 | + | /*0x14*/ f32 Z_Focus_Pos; |
/*0x18*/ f32 Near_Clip_Plane; | /*0x18*/ f32 Near_Clip_Plane; | ||
/*0x1C*/ f32 Far_Clip_Plane; | /*0x1C*/ f32 Far_Clip_Plane; | ||
- | /*0x20*/ f32[2] Cam_Y_Pos; | + | /*0x20*/ f32[2] CamRadiusScale; |
- | /*0x28*/ f32[2] Cam_X_Pos; | + | /*0x28*/ f32[2] CamTheta; |
- | /*0x30*/ f32[2] Cam_Z_Pos; | + | /*0x30*/ f32[2] CamRadius; |
/*0x38*/ f32[2] FOV_Pair; | /*0x38*/ f32[2] FOV_Pair; | ||
- | /*0x40*/ f32[2] Lateral_Y_Pos; | + | /*0x40*/ f32[2] CamPhi; |
- | /*0x48*/ f32 Unk6; | + | /*0x48*/ f32[2] Cam_X_LockBounds; |
- | /*0x4C*/ f32 Cam_X_Offset_Locked; | + | /*0x50*/ f32[2] Cam_Y_LockBounds; |
- | /*0x50*/ f32 Unk7; | + | /*0x58*/ f32[2] Cam_Z_LockBounds; |
- | /*0x54*/ f32 Cam_Y_Pos_Locked; | + | /*0x60*/ f32[2] Cam_Yaw_LockBounds; |
- | /*0x58*/ f32[2] Flag2; //mostly a 9999 pair | + | /*0x68*/ f32[2] Cam_Pitch_LockBounds; |
- | /*0x60*/ f32 Focus_Y_Above; //while 0x6 is true | + | |
- | /*0x64*/ f32 Focus_Y_Below; //while 0x6 is true | + | |
- | /*0x68*/ f32 Focus_X_Left; //while 0x6 is true | + | |
- | /*0x6C*/ f32 Focus_X_Right; //while 0x6 is true | + | |
}; | }; | ||
</code> | </code> |