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

PVR polygon context. More...

#include <dc/pvr.h>

Data Fields

pvr_list_t list_type
 Primitive list.
 
struct { 
 
   bool   alpha 
 Enable alpha outside modifier. More...
 
   bool   shading 
 Enable gourad shading. More...
 
   pvr_fog_type_t   fog_type 
 Fog type outside modifier. More...
 
   pvr_cull_mode_t   culling 
 Culling mode. More...
 
   bool   color_clamp 
 Enable color clamping outside modifer. More...
 
   pvr_clip_mode_t   clip_mode 
 Clipping mode. More...
 
   bool   modifier_mode 
 True normal; false: cheap shadow. More...
 
   bool   specular 
 Enable offset color outside modifier. More...
 
   bool   alpha2 
 Enable alpha inside modifier. More...
 
   pvr_fog_type_t   fog_type2 
 Fog type inside modifier. More...
 
   bool   color_clamp2 
 Enable color clamping inside modifer. More...
 
gen 
 General parameters.
 
struct { 
 
   pvr_blend_mode_t   src 
 Source blending mode outside modifier. More...
 
   pvr_blend_mode_t   dst 
 Dest blending mode outside modifier. More...
 
   bool   src_enable 
 Source blending enable outside modifier. More...
 
   bool   dst_enable 
 Dest blending enable outside modifier. More...
 
   pvr_blend_mode_t   src2 
 Source blending mode inside modifier. More...
 
   pvr_blend_mode_t   dst2 
 Dest blending mode inside modifier. More...
 
   bool   src_enable2 
 Source blending mode inside modifier. More...
 
   bool   dst_enable2 
 Dest blending mode inside modifier. More...
 
blend 
 Blending parameters.
 
struct { 
 
   pvr_color_fmts_t   color 
 Color format in vertex. More...
 
   bool   uv 
 True: 16-bit floating-point U/Vs; False: 32-bit. More...
 
   bool   modifier 
 Enable modifier effects. More...
 
fmt 
 Format control.
 
struct { 
 
   pvr_depthcmp_mode_t   comparison 
 Depth comparison mode. More...
 
   bool   write 
 Enable depth writes. More...
 
depth 
 Depth comparison/write modes.
 
struct { 
 
   bool   enable 
 Enable/disable texturing. More...
 
   pvr_filter_mode_t   filter 
 Filtering mode. More...
 
   bool   mipmap 
 Enable/disable mipmaps. More...
 
   pvr_mip_bias_t   mipmap_bias 
 Mipmap bias. More...
 
   pvr_uv_flip_t   uv_flip 
 Enable/disable U/V flipping. More...
 
   pvr_uv_clamp_t   uv_clamp 
 Enable/disable U/V clamping. More...
 
   bool   alpha 
 True to disable texture alpha. More...
 
   pvr_txr_shading_mode_t   env 
 Texture color contribution. More...
 
   int   width 
 Texture width (requires a power of 2) More...
 
   int   height 
 Texture height (requires a power of 2) More...
 
   int   format 
 Texture format. More...
 
   pvr_ptr_t   base 
 Texture pointer. More...
 
txr 
 Texturing params outside modifier.
 
struct { 
 
   bool   enable 
 Enable/disable texturing. More...
 
   pvr_filter_mode_t   filter 
 Filtering mode. More...
 
   bool   mipmap 
 Enable/disable mipmaps. More...
 
   pvr_mip_bias_t   mipmap_bias 
 Mipmap bias. More...
 
   pvr_uv_flip_t   uv_flip 
 Enable/disable U/V flipping. More...
 
   pvr_uv_clamp_t   uv_clamp 
 Enable/disable U/V clamping. More...
 
   bool   alpha 
 True to disable texture alpha. More...
 
   pvr_txr_shading_mode_t   env 
 Texture color contribution. More...
 
   int   width 
 Texture width (requires a power of 2) More...
 
   int   height 
 Texture height (requires a power of 2) More...
 
   int   format 
 Texture format. More...
 
   pvr_ptr_t   base 
 Texture pointer. More...
 
txr2 
 Texturing params inside modifier.
 

Detailed Description

PVR polygon context.

You should use this more human readable format for specifying your polygon contexts, and then compile them into polygon headers when you are ready to start using them.

This has embedded structures in it for two reasons; the first reason is to make it easier for me to add new stuff later without breaking existing code. The second reason is to make it more readable and usable.

Unfortunately, it seems that Doxygen chokes up a little bit on this structure, and others like it. The documentation should still be mostly understandable though...

Field Documentation

◆ alpha

bool pvr_poly_cxt_t::alpha

Enable alpha outside modifier.

True to disable texture alpha.

Referenced by render_back_buffer_step1(), and render_back_buffer_step2().

◆ alpha2

bool pvr_poly_cxt_t::alpha2

Enable alpha inside modifier.

◆ base

pvr_ptr_t pvr_poly_cxt_t::base

Texture pointer.

◆ [struct]

struct { ... } pvr_poly_cxt_t::blend

Blending parameters.

Referenced by render_back_buffer_step2(), setup(), and switch_textured().

◆ clip_mode

pvr_clip_mode_t pvr_poly_cxt_t::clip_mode

Clipping mode.

◆ color

pvr_color_fmts_t pvr_poly_cxt_t::color

Color format in vertex.

◆ color_clamp

bool pvr_poly_cxt_t::color_clamp

Enable color clamping outside modifer.

◆ color_clamp2

bool pvr_poly_cxt_t::color_clamp2

Enable color clamping inside modifer.

◆ comparison

pvr_depthcmp_mode_t pvr_poly_cxt_t::comparison

Depth comparison mode.

◆ culling

pvr_cull_mode_t pvr_poly_cxt_t::culling

Culling mode.

Referenced by do_sphere_test().

◆ [struct]

struct { ... } pvr_poly_cxt_t::depth

Depth comparison/write modes.

◆ dst

pvr_blend_mode_t pvr_poly_cxt_t::dst

Dest blending mode outside modifier.

Referenced by render_back_buffer_step2(), setup(), and switch_textured().

◆ dst2

pvr_blend_mode_t pvr_poly_cxt_t::dst2

Dest blending mode inside modifier.

◆ dst_enable

bool pvr_poly_cxt_t::dst_enable

Dest blending enable outside modifier.

◆ dst_enable2

bool pvr_poly_cxt_t::dst_enable2

Dest blending mode inside modifier.

◆ enable

bool pvr_poly_cxt_t::enable

Enable/disable texturing.

◆ env

pvr_txr_shading_mode_t pvr_poly_cxt_t::env

Texture color contribution.

Referenced by render_back_buffer_step2(), and setup().

◆ filter

pvr_filter_mode_t pvr_poly_cxt_t::filter

Filtering mode.

◆ [struct]

struct { ... } pvr_poly_cxt_t::fmt

Format control.

Referenced by setup().

◆ fog_type

pvr_fog_type_t pvr_poly_cxt_t::fog_type

Fog type outside modifier.

◆ fog_type2

pvr_fog_type_t pvr_poly_cxt_t::fog_type2

Fog type inside modifier.

◆ format

int pvr_poly_cxt_t::format

Texture format.

See also
Formats

◆ [struct]

struct { ... } pvr_poly_cxt_t::gen

General parameters.

Referenced by do_sphere_test(), setup(), setup(), and setup().

◆ height

int pvr_poly_cxt_t::height

Texture height (requires a power of 2)

◆ list_type

pvr_list_t pvr_poly_cxt_t::list_type

Primitive list.

◆ mipmap

bool pvr_poly_cxt_t::mipmap

Enable/disable mipmaps.

◆ mipmap_bias

pvr_mip_bias_t pvr_poly_cxt_t::mipmap_bias

Mipmap bias.

◆ modifier

bool pvr_poly_cxt_t::modifier

Enable modifier effects.

Referenced by setup().

◆ modifier_mode

bool pvr_poly_cxt_t::modifier_mode

True normal; false: cheap shadow.

Referenced by setup().

◆ shading

bool pvr_poly_cxt_t::shading

Enable gourad shading.

Referenced by setup(), and setup().

◆ specular

bool pvr_poly_cxt_t::specular

Enable offset color outside modifier.

Referenced by setup().

◆ src

pvr_blend_mode_t pvr_poly_cxt_t::src

Source blending mode outside modifier.

Referenced by render_back_buffer_step2(), setup(), and switch_textured().

◆ src2

pvr_blend_mode_t pvr_poly_cxt_t::src2

Source blending mode inside modifier.

◆ src_enable

bool pvr_poly_cxt_t::src_enable

Source blending enable outside modifier.

◆ src_enable2

bool pvr_poly_cxt_t::src_enable2

Source blending mode inside modifier.

◆ [struct]

struct { ... } pvr_poly_cxt_t::txr

Texturing params outside modifier.

Referenced by render_back_buffer_step1(), render_back_buffer_step2(), and setup().

◆ [struct]

struct { ... } pvr_poly_cxt_t::txr2

Texturing params inside modifier.

◆ uv

bool pvr_poly_cxt_t::uv

True: 16-bit floating-point U/Vs; False: 32-bit.

◆ uv_clamp

pvr_uv_clamp_t pvr_poly_cxt_t::uv_clamp

Enable/disable U/V clamping.

◆ uv_flip

pvr_uv_flip_t pvr_poly_cxt_t::uv_flip

Enable/disable U/V flipping.

◆ width

int pvr_poly_cxt_t::width

Texture width (requires a power of 2)

◆ write

bool pvr_poly_cxt_t::write

Enable depth writes.


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