KallistiOS git master
Independent SDK for the Sega Dreamcast
Loading...
Searching...
No Matches
pvr_init_params_t Struct Reference

PVR initialization structure. More...

#include <dc/pvr.h>

Data Fields

int opb_sizes [5]
 Bin sizes.
 
int vertex_buf_size
 Vertex buffer size (should be a nice round number)
 
int dma_enabled
 Enable vertex DMA?
 
int fsaa_enabled
 Enable horizontal scaling?
 
int autosort_disabled
 Disable translucent polygon autosort?
 
int opb_overflow_count
 OPB Overflow Count.
 

Detailed Description

PVR initialization structure.

This structure defines how the PVR initializes various parts of the system, including the primitive bin sizes, the vertex buffer size, and whether vertex DMA will be enabled.

You essentially fill one of these in, and pass it to pvr_init().

Field Documentation

◆ autosort_disabled

int pvr_init_params_t::autosort_disabled

Disable translucent polygon autosort?

Set to non-zero to disable translucent polygon autosorting. By enabling this setting, the PVR acts more like a traditional Z-buffered system when rendering translucent polygons, meaning you must pre-sort them yourself if you want them to appear in the right order.

◆ dma_enabled

int pvr_init_params_t::dma_enabled

Enable vertex DMA?

Set to non-zero if we want to enable vertex DMA mode. Note that if this is set, then all enabled lists need to have a vertex buffer assigned, even if you never use that list for anything.

◆ fsaa_enabled

int pvr_init_params_t::fsaa_enabled

Enable horizontal scaling?

Set to non-zero if horizontal scaling is to be enabled. By enabling this setting and stretching your image to double the native screen width, you can get horizontal full-screen anti-aliasing.

◆ opb_overflow_count

int pvr_init_params_t::opb_overflow_count

OPB Overflow Count.

Preallocates this many extra OPBs (sets of tile bins), allowing the PVR to use the extra space when there's too much geometry in the first OPB.

Increasing this value can eliminate artifacts where pieces of geometry flicker in and out of existence along the tile boundaries.

◆ opb_sizes

int pvr_init_params_t::opb_sizes[5]

Bin sizes.

The bins go in the following order: opaque polygons, opaque modifiers, translucent polygons, translucent modifiers, punch-thrus

◆ vertex_buf_size

int pvr_init_params_t::vertex_buf_size

Vertex buffer size (should be a nice round number)


The documentation for this struct was generated from the following file: