![]() |
Jo Engine
2024.04.28
Jo Sega Saturn Engine
|
Jo Engine Mode7. More...
Go to the source code of this file.
Data Structures | |
| struct | jo_mode7_computation_cache |
| mode7 internal computation cache struct More... | |
| struct | jo_mode7 |
| mode7 struct More... | |
Functions | |
| bool | jo_init_mode7_for_screen_output (jo_mode7 *const params, const unsigned short tile_width, const unsigned short tile_height) |
| Initialize mode 7 effect for direct screen output and pre compute projection. More... | |
| void | jo_update_screen_output_coord_for_mode7 (jo_mode7 *const params) |
| Update mode 7 computation if output_left or output_right params changed. More... | |
| bool | jo_init_mode7_for_image_output (jo_mode7 *params, const unsigned short tile_width, const unsigned short tile_height, jo_img *const output_image) |
| Initialize mode 7 effect for image output and pre compute projection. More... | |
| void | jo_free_mode7 (jo_mode7 *const params) |
| Free mode 7 computation. More... | |
| void | jo_do_mode7_floor (const jo_img *const tile, const int cam_x, const int cam_y, const jo_mode7 *const params) |
| Draw projection according to the initialized output. More... | |
Jo Engine Mode7.
| struct jo_mode7_computation_cache |
mode7 internal computation cache struct
| Data Fields | ||
|---|---|---|
| int * | distance | |
| int * | line_dy | |
| jo_color * | output | |
| unsigned short | output_height | |
| unsigned short | output_line_width | |
| unsigned short | output_width | |
| unsigned short | output_width_div2 | |
| unsigned short | output_width_sizeof | |
| int | output_y_start | |
| int | tile_mask_x | |
| int | tile_mask_y | |
| struct jo_mode7 |
mode7 struct
| Data Fields | ||
|---|---|---|
| jo_mode7_computation_cache | __cache | |
| int | horizon | |
| unsigned short | output_left | |
| unsigned short | output_top | |
| int | scale_x | |
| int | scale_y | |
| int | space_z | |
| void jo_do_mode7_floor | ( | const jo_img *const | tile, |
| const int | cam_x, | ||
| const int | cam_y, | ||
| const jo_mode7 *const | params | ||
| ) |
Draw projection according to the initialized output.
| tile | Tile image |
| cam_x | Camera horizontal position |
| cam_y | Camera depth (Z index) position |
| params | mode7 structure |
| void jo_free_mode7 | ( | jo_mode7 *const | params | ) |
Free mode 7 computation.
| params | mode7 structure |
| bool jo_init_mode7_for_image_output | ( | jo_mode7 * | params, |
| const unsigned short | tile_width, | ||
| const unsigned short | tile_height, | ||
| jo_img *const | output_image | ||
| ) |
Initialize mode 7 effect for image output and pre compute projection.
| params | mode7 structure |
| tile_width | Tile width |
| tile_height | Tile height |
| output_image | Output image (data can be allocated before) |
| bool jo_init_mode7_for_screen_output | ( | jo_mode7 *const | params, |
| const unsigned short | tile_width, | ||
| const unsigned short | tile_height | ||
| ) |
Initialize mode 7 effect for direct screen output and pre compute projection.
| params | mode7 structure |
| tile_width | Tile width |
| tile_height | Tile height |
| void jo_update_screen_output_coord_for_mode7 | ( | jo_mode7 *const | params | ) |
Update mode 7 computation if output_left or output_right params changed.
| params | mode7 structure |
1.8.18