Chapter 3 Binary Format

3-17. CollList

4. CollData Area

The CollData area stores the actual collision data. The CollData area is mapped depending on the coll_type specified in the Call area. Mappings for each type follow.

When COLL_TYPE_TERRAIN is specified

u32 | coll_data_tag
u32 | this_coll_data_index
u32 | coll_data_size
u32 | x_subdivide
u32 | z_subdivide
u32 | shape_list_index

Figure: CollData Area Memory Map
When COLL_TYPE_TERRAIN is specified

u32 coll_data_tag | Tag indicating CollData
    TAG_COLL_DATA_TERRAIN	0x000d0101
u32 this_coll_data_index | Index number of this CollData
u32 coll_data_size | Size of this CollData
u32 x_subdivide | Number of divisions of the whole terrain data in the X direction
u32 z_subdivide | Number of divisions of the whole terrain data in the Z direction
u32 shape_list_index | Index number of Shape data used for terrain data

When COLL_TYPE_POINT is specified

u32 | coll_data_tag
u32 | this_coll_data_index
u32 | coll_data_size
float | coll_point_x
float | coll_point_y
float | coll_point_z

Figure: CollData Area Memory Map
When COLL_TYPE_POINT is specified

u32 coll_data_tag | Tag indicating CollData
    TAG_COLL_DATA_POINT	0x000d0102
u32 this_coll_data_index | Index number of this CollData
u32 coll_data_size | Size of this CollData
float coll_point_x | X coordinate of Collision point
float coll_point_y | Y coordinate of Collision point
float coll_point_z | Z coordinate of Collision point

When COLL_TYPE_CIRCLE is specified

u32 | coll_data_tag
u32 | this_coll_data_index
u32 | coll_data_size
float | center_x
float | center_y
float | center_z
float | normal_x
float | normal_y
float | normal_z
float | v radius

Figure: CollData Area Memory Map
When COLL_TYPE_CIRCLE is specified

u32 coll_data_tag | Tag indicating CollData. Set the following tag.
    TAG_COLL_DATA_CIRCLE	0x000d0103
u32 this_coll_data_index | Index number of this CollData
u32 coll_data_size | Size of this CollData
float center_x | X coordinate of the center of the circle
float center_y | Y coordinate of the center of the circle
float center_z | Z coordinate of the center of the circle
float normal_x | X component of normal vector of the circle
float normal_y | Y component of normal vector of the circle
float normal_z | Z component of normal vector of the circle
float radius | Radius

When COLL_TYPE_SPHERE is specified

u32 | coll_data_tag
u32 | this_coll_data_index
u32 | coll_data_size
float | center_x
float | center_y
float | center_z
float | radius

Figure: CollData Area Memory Map
When COLL_TYPE_SPHERE is specified

u32 coll_data_tag | Tag indicating CollData
    TAG_COLL_DATA_SPHERE	0x000d0104
u32 this_coll_data_index | Index number of this CollData
u32 coll_data_size | Size of this CollData
float center_x | X coordinate of sphere's center
float center_y | Y coordinate of sphere's center
float center_z | Z coordinate of sphere's center
float radius | Radius

When COLL_TYPE_CYLINDER is specified

u32 | coll_data_tag
u32 | this_coll_data_index
u32 | coll_data_size
float | center_x
float | center_y
float | center_z
float | radius
float | height

Figure: CollData Area Memory Map
When COLL_TYPE_CYLINDER is specified

u32 coll_data_tag | Tag indicating CollData
    TAG_COLL_DATA_CYLINDER	0x000d0105
u32 this_coll_data_index | ndex number of this CollData
u32 coll_data_size | Size of this CollData
float center_x | X coordinate of the center (bottom)
float center_y | Y coordinate of the center (bottom)
float center_z | Z coordinate of the center (bottom)
float radius | Radius
float height | Height of cylinder

When COLL_TYPE_BOX is specified

u32 | coll_data_tag
u32 | this_coll_data_index
u32 | coll_data_size
float | center_x
float | center_y
float | center_z
float | length_x
float | length_y
float | length_z

Figure: CollData Area Memory Map
When COLL_TYPE_BOX is specified

u32 coll_data_tag | Tag indicating CollData
    TAG_COLL_DATA_BOX	0x000d0106
u32 this_coll_data_index | Index number of CollData
u32 coll_data_size | Size of this CollData
float center_x | X coordinate of cube's center
float center_y | Y coordinate of cube's center
float center_z | Z coordinate of cube's center
float length_x | Length of X axial direction
float length_y | Length of Y axial direction
float length_z | Length of Z axial direction