Projiziert eine Texture aus dem 3D Raum in den 2D Raum. More...
#include <TextureMapper.h>
Public Member Functions | |
void | dump () |
Dump. | |
virtual | ~TextureMapper () |
Destruktor. | |
void | useZBuffer (bool useZBuffer) |
useZBuffer | |
void | render (float d, Triangle &t, BYTE *pane, float *ZBuffer, int width, int height) |
Static Public Member Functions | |
static TextureMapper * | getInstance () |
Liefert die Singleton-Instanz. | |
Public Attributes | |
Vec | m_p0 |
Vec | m_p1 |
Vec | m_p2 |
float | m_d |
float | x0 |
float | y0 |
float | z0 |
float | c0 |
float | uc0 |
float | vc0 |
float | x1 |
float | y1 |
float | z1 |
float | c1 |
float | uc1 |
float | vc1 |
float | x2 |
float | y2 |
float | z2 |
float | c2 |
float | uc2 |
float | vc2 |
Protected Member Functions | |
TextureMapper () | |
Konstruktor. | |
Private Member Functions | |
void | project (float d, Vec p0, Vec p1, Vec p2) |
void | addOffset () |
void | sortVertices () |
void | gradients () |
void | render () |
void | renderSegment (int y1, int y2) |
void | renderLine (int y, int x1, int x2, float cs, float ucs, float vcs) |
Mit Z-Buffer und für 3-Byte Pixel (RGB) | |
void | renderLine_Alpha (int y, int x1, int x2, float cs, float ucs, float vcs) |
Mit Z-Buffer und für 4-Byte Pixel (RGBA01) | |
void | renderLine_NoZBuffer (int y, int x1, int x2, float cs, float ucs, float vcs) |
Ohne Z-Buffer und nur fuer 3-Byte Pixel (RGB) | |
Private Attributes | |
Triangle * | m_tri |
int | m_xmax |
int | m_ymax |
int | m_tex_width |
int | m_tex_height |
BYTE | m_rgbIntensity [256][256] |
bool | debugFlag |
int | msg_count |
Texture * | m_tex |
Surface * | m_surface |
int | m_height |
int | m_height_1 |
int | m_width |
int | m_alpha |
float * | m_ZBuffer |
float | dc_dx |
float | dc_dy |
float | duc_dx |
float | duc_dy |
float | dvc_dx |
float | dvc_dy |
float | dx_dy_a |
float | dc_dy_a |
float | duc_dy_a |
float | dvc_dy_a |
float | dx_dy_b |
float | dc_dy_b |
float | duc_dy_b |
float | dvc_dy_b |
float | xa |
float | xb |
float | ca |
float | uca |
float | vca |
BYTE * | m_planePixels |
bool | m_useZBuffer |
Static Private Attributes | |
static TextureMapper * | _instance = 0 |
Projiziert eine Texture aus dem 3D Raum in den 2D Raum.
TextureMapper::TextureMapper | ( | ) | [protected] |
Konstruktor.
TextureMapper::~TextureMapper | ( | ) | [virtual] |
Destruktor.
void TextureMapper::addOffset | ( | ) | [private] |
void TextureMapper::dump | ( | void | ) |
Dump.
TextureMapper * TextureMapper::getInstance | ( | ) | [static] |
Liefert die Singleton-Instanz.
void TextureMapper::gradients | ( | ) | [private] |
void TextureMapper::render | ( | ) | [private] |
void TextureMapper::render | ( | float | d, |
Triangle & | t, | ||
BYTE * | pane, | ||
float * | ZBuffer, | ||
int | width, | ||
int | height | ||
) |
void TextureMapper::renderLine | ( | int | y, |
int | x1, | ||
int | x2, | ||
float | cs, | ||
float | ucs, | ||
float | vcs | ||
) | [inline, private] |
Mit Z-Buffer und für 3-Byte Pixel (RGB)
void TextureMapper::renderLine_Alpha | ( | int | y, |
int | x1, | ||
int | x2, | ||
float | cs, | ||
float | ucs, | ||
float | vcs | ||
) | [inline, private] |
Mit Z-Buffer und für 4-Byte Pixel (RGBA01)
void TextureMapper::renderLine_NoZBuffer | ( | int | y, |
int | x1, | ||
int | x2, | ||
float | cs, | ||
float | ucs, | ||
float | vcs | ||
) | [inline, private] |
Ohne Z-Buffer und nur fuer 3-Byte Pixel (RGB)
void TextureMapper::renderSegment | ( | int | y1, |
int | y2 | ||
) | [private] |
void TextureMapper::sortVertices | ( | ) | [private] |
void TextureMapper::useZBuffer | ( | bool | useZBuffer | ) |
useZBuffer
TextureMapper * TextureMapper::_instance = 0 [static, private] |
float TextureMapper::c0 |
float TextureMapper::c1 |
float TextureMapper::c2 |
float TextureMapper::ca [private] |
float TextureMapper::dc_dx [private] |
float TextureMapper::dc_dy [private] |
float TextureMapper::dc_dy_a [private] |
float TextureMapper::dc_dy_b [private] |
bool TextureMapper::debugFlag [private] |
float TextureMapper::duc_dx [private] |
float TextureMapper::duc_dy [private] |
float TextureMapper::duc_dy_a [private] |
float TextureMapper::duc_dy_b [private] |
float TextureMapper::dvc_dx [private] |
float TextureMapper::dvc_dy [private] |
float TextureMapper::dvc_dy_a [private] |
float TextureMapper::dvc_dy_b [private] |
float TextureMapper::dx_dy_a [private] |
float TextureMapper::dx_dy_b [private] |
int TextureMapper::m_alpha [private] |
float TextureMapper::m_d |
int TextureMapper::m_height [private] |
int TextureMapper::m_height_1 [private] |
BYTE* TextureMapper::m_planePixels [private] |
BYTE TextureMapper::m_rgbIntensity[256][256] [private] |
Surface* TextureMapper::m_surface [private] |
Texture* TextureMapper::m_tex [private] |
int TextureMapper::m_tex_height [private] |
int TextureMapper::m_tex_width [private] |
Triangle* TextureMapper::m_tri [private] |
bool TextureMapper::m_useZBuffer [private] |
int TextureMapper::m_width [private] |
int TextureMapper::m_xmax [private] |
int TextureMapper::m_ymax [private] |
float* TextureMapper::m_ZBuffer [private] |
int TextureMapper::msg_count [private] |
float TextureMapper::uc0 |
float TextureMapper::uc1 |
float TextureMapper::uc2 |
float TextureMapper::uca [private] |
float TextureMapper::vc0 |
float TextureMapper::vc1 |
float TextureMapper::vc2 |
float TextureMapper::vca [private] |
float TextureMapper::x0 |
float TextureMapper::x1 |
float TextureMapper::x2 |
float TextureMapper::xa [private] |
float TextureMapper::xb [private] |
float TextureMapper::y0 |
float TextureMapper::y1 |
float TextureMapper::y2 |
float TextureMapper::z0 |
float TextureMapper::z1 |
float TextureMapper::z2 |