Crystal Space: CS::PluginCommon::SoftShader::InterpolateEdgePersp Struct Reference (Crystal Space Public API Reference)

| ## Public API Reference

- Main Page
- Modules
- Namespaces
- Classes
- Files
- Related Pages

- Alphabetical List
- Class List
- Class Hierarchy
- Class Members

# CS::PluginCommon::SoftShader::InterpolateEdgePersp Struct Reference

Interpolator for a polygon edge. More...

`#include <csplugincommon/softshader/types.h>`

List of all members.

## Public Member Functions
void | Advance (const size_t floatNum)
| Advance a line down.
void | Setup (const csVector3 *vertices, const float *floats, const size_t floatNum, size_t sv, size_t fv, int sy)
| Setup interpolator.
## Public Attributes
float | dIzdy
| Inverse Z per-scanline delta.
float | dxdy
| X per-scanline delta.
CS::PluginCommon::SoftShader::InterpolateEdgePersp::PerFloat | Floats [maxBuffers *4]
| A single interpolated buffer value.
float | Iz
| The inverse Z coordinate.
float | x
| X coordinate.
## Classes
struct | PerFloat
| A single interpolated buffer value. More...

## Detailed Description

Interpolator for a polygon edge.

Definition at line 51 of file types.h.

## Member Function Documentation

void CS::PluginCommon::SoftShader::InterpolateEdgePersp::Advance | ( | const size_t | floatNum | ) | `[inline]`

Advance a line down.

Definition at line 118 of file types.h.

References CS::PluginCommon::SoftShader::InterpolateEdgePersp::PerFloat::c, dIzdy, dxdy, Floats, CS::PluginCommon::SoftShader::InterpolateEdgePersp::PerFloat::Ic, Iz, and x.

void CS::PluginCommon::SoftShader::InterpolateEdgePersp::Setup | ( | const csVector3 * | vertices,
|  | const float * | floats,
|  | const size_t | floatNum,
|  | size_t | sv,
|  | size_t | fv,
|  | int | sy |
| ) |  |  | `[inline]`

Setup interpolator.

Definition at line 73 of file types.h.

References CS::PluginCommon::SoftShader::InterpolateEdgePersp::PerFloat::c, CS::PluginCommon::SoftShader::InterpolateEdgePersp::PerFloat::dIcdy, dIzdy, dxdy, Floats, CS::PluginCommon::SoftShader::InterpolateEdgePersp::PerFloat::Ic, Iz, CS::PluginCommon::SoftShader::Lerp(), csVector3::x, x, csVector3::y, and csVector3::z.

## Member Data Documentation

float CS::PluginCommon::SoftShader::InterpolateEdgePersp::dIzdy

Inverse Z per-scanline delta.

Definition at line 60 of file types.h.

Referenced by Advance(), and Setup().

float CS::PluginCommon::SoftShader::InterpolateEdgePersp::dxdy

X per-scanline delta.

Definition at line 56 of file types.h.

Referenced by Advance(), and Setup().

struct CS::PluginCommon::SoftShader::InterpolateEdgePersp::PerFloat CS::PluginCommon::SoftShader::InterpolateEdgePersp::Floats[maxBuffers*4]

A single interpolated buffer value.

Referenced by Advance(), CS::PluginCommon::SoftShader::InterpolateScanlinePersp< maxFloats >::Setup(), and Setup().

float CS::PluginCommon::SoftShader::InterpolateEdgePersp::Iz

The inverse Z coordinate.

Definition at line 58 of file types.h.

Referenced by Advance(), CS::PluginCommon::SoftShader::InterpolateScanlinePersp< 0 >::Setup(), CS::PluginCommon::SoftShader::InterpolateScanlinePersp< maxFloats >::Setup(), and Setup().

float CS::PluginCommon::SoftShader::InterpolateEdgePersp::x

X coordinate.

Definition at line 54 of file types.h.

Referenced by Advance(), and Setup().

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

- csplugincommon/softshader/types.h