thug/Code/Gfx/NGPS/NX/immediate.h

70 lines
2.9 KiB
C
Raw Normal View History

2016-02-13 21:39:12 +00:00
//****************************************************************************
//* MODULE: Gfx
//* FILENAME: immediate.h
//* OWNER: Garrett Jost
//* CREATION DATE: 7/19/2002
//****************************************************************************
#ifndef __IMMEDIATE_H__
#define __IMMEDIATE_H__
/******************************************************************/
/* */
/* */
/******************************************************************/
namespace NxPs2
{
// Forward declarations
struct SSingleTexture;
class CImmediateMode
{
public:
// Init functions
static void sViewportInit();
static void sTextureGroupInit(uint unpackFLG);
static void sSetZPush(float zpush = 1.0e-33f);
static void sClearZPush();
// Draw start functions
static void sStartPolyDraw( SSingleTexture * p_engine_texture, uint64 blend, uint unpackFLG, bool clip = false );
static void sStartPolyDraw( uint32 * p_packed_texture_regs, int num_texture_regs, uint unpackFLG, bool clip = false );
// Draw functions
static void sDrawQuadTexture( SSingleTexture * p_engine_texture, const Mth::Vector& vert0, const Mth::Vector& vert1,
const Mth::Vector& vert2, const Mth::Vector& vert3,
uint32 col0, uint32 col1, uint32 col2, uint32 col3 );
static void sDrawTri( const Mth::Vector& vert0, const Mth::Vector& vert1, const Mth::Vector& vert2,
uint32 col0, uint32 col1, uint32 col2, uint unpackFLG );
static void sDrawTriUV( const Mth::Vector& vert0, const Mth::Vector& vert1, const Mth::Vector& vert2,
float u0, float v0, float u1, float v1, float u2, float v2,
uint32 col0, uint32 col1, uint32 col2, uint unpackFLG );
static void sDraw5QuadTexture( SSingleTexture * p_engine_texture, const Mth::Vector& vert0, const Mth::Vector& vert1,
const Mth::Vector& vert2, const Mth::Vector& vert3, const Mth::Vector& vert4,
uint32 col0, uint32 col1 );
static void sDrawGlowSegment( const Mth::Vector& vert0, const Mth::Vector& vert1,
const Mth::Vector& vert2, const Mth::Vector& vert3, const Mth::Vector& vert4,
uint32 col0, uint32 col1, uint32 col2 );
static void sDrawStarSegment( const Mth::Vector& vert0, const Mth::Vector& vert1,
const Mth::Vector& vert2, const Mth::Vector& vert3,
uint32 col0, uint32 col1, uint32 col2 );
static void sDrawSmoothStarSegment( const Mth::Vector& vert0, const Mth::Vector& vert1,
const Mth::Vector& vert2, const Mth::Vector& vert3, const Mth::Vector& vert4,
uint32 col0, uint32 col1, uint32 col2 );
static void sDrawLine( const Mth::Vector& vert0, const Mth::Vector& vert1, uint32 col0, uint32 col1 );
static uint64 sGetTextureBlend( uint32 blend_checksum, int fix );
protected:
};
}
#endif