|
KallistiOS git master
Independent SDK for the Sega Dreamcast
|
API for using direct rendering with the PVR More...
Macros | |
| #define | pvr_dr_target(vtx_buf_ptr) |
| Obtain the target address for Direct Rendering. | |
| #define | pvr_dr_commit(addr) |
| Commit a primitive written into the Direct Rendering target address. | |
Typedefs | |
| typedef uint32_t | pvr_dr_state_t |
| Direct Rendering state variable type. | |
Functions | |
| void | pvr_dr_init (pvr_dr_state_t *vtx_buf_ptr) |
| Initialize a state variable for Direct Rendering. | |
| void | pvr_dr_finish (void) |
| Finish work with Direct Rendering. | |
| void | pvr_send_to_ta (void *data) |
| Upload a 32-byte payload to the Tile Accelerator. | |
API for using direct rendering with the PVR
| #define pvr_dr_commit | ( | addr | ) |
Commit a primitive written into the Direct Rendering target address.
| addr | The address returned by pvr_dr_target(), after you have written the primitive to it. |
Referenced by do_frame(), render_back_buffer_step1(), render_back_buffer_step2(), render_bouncing_cube(), and render_coords().
| #define pvr_dr_target | ( | vtx_buf_ptr | ) |
Obtain the target address for Direct Rendering.
| vtx_buf_ptr | State variable for Direct Rendering. Should be of type pvr_dr_state_t, and must have been initialized previously in the scene with pvr_dr_init(). |
Referenced by do_frame(), render_back_buffer_step1(), render_back_buffer_step2(), render_bouncing_cube(), and render_coords().
| typedef uint32_t pvr_dr_state_t |
Direct Rendering state variable type.
| void pvr_dr_finish | ( | void | ) |
Finish work with Direct Rendering.
Called atomatically in pvr_scene_finish(). Use it manually if you want to release Store Queues earlier.
| void pvr_dr_init | ( | pvr_dr_state_t * | vtx_buf_ptr | ) |
Initialize a state variable for Direct Rendering.
Store Queues are used.
| vtx_buf_ptr | A variable of type pvr_dr_state_t to init. |
Referenced by do_frame().
| void pvr_send_to_ta | ( | void * | data | ) |
Upload a 32-byte payload to the Tile Accelerator.
Upload the given payload to the Tile Accelerator. The difference with the Direct Rendering approach above is that the Store Queues are not used, and therefore can be used for anything else.
| data | A pointer to the 32-byte payload. The pointer must be aligned to 8 bytes. |