## Public API Reference

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

# Graphics

## Modules

| 2D
| 3D

## Classes

class | csBakeKeyColor
| Functions to bake keycolor into the alpha channel of images. More...
class | csColorQuantizer
| Color quantizer. More...
class | csComparator< csRGBcolor *, csRGBcolor * >
| csComparator<> specialization for csColor*. More...
class | csComparator< csRGBcolor, csRGBcolor >
| csComparator<> specialization for csRGBcolor. More...
class | csImageBase
| Base class for iImage implementations. More...
class | csImageCubeMapMaker
| Wrapper class to create a cube map from a number of 2D images as the cube faces. More...
class | csImageManipulate
| Helper class to manipulate iImage objects. More...
class | csImageMemory
| Memory image. More...
class | csImageTools
| Some helper functions to deal with iImage objects. More...
class | csImageVolumeMaker
| Wrapper class to create a volume aka 3D texture from a number of 2D images as the volume slices. More...
struct | csInterleavedSubBufferOptions
| Structure describing the properties of the individual buffers to be interleaved. More...
class | csNormalMappingTools
| Some helpers for stuff related to normal maps. More...
struct | csPackRGB
| RGB data packing. More...
struct | csPackRGBA
| RGBA data packing. More...
class | csRenderBuffer
| Render buffer - basic container for mesh geometry data. More...
struct | csRGBcolor
| An RGB color. More...
struct | csRGBpixel
| An RGB pixel. More...
class | csShaderExpressionAccessor
| Shader variable accessor that evaluates a shader expression when the SV value is queried. More...

## Eye sensivity to different color components

Eye sensivity to different color components, from NTSC grayscale equation. The coefficients are multiplied by 100 and rounded towards nearest integer, to facilitate integer math. The squared coefficients are also multiplied by 100 and rounded to nearest integer (thus 173 == 1.73, 242 == 2.42 etc).
#define | B_COEF 107
| Blue component sensivity.
#define | G_COEF 242
| Green component sensivity.
#define | R_COEF 173
| Red component sensivity.

## Eye sensivity to different color components, squared

#define | B_COEF_SQ 114
| Blue component sensivity, squared.
#define | G_COEF_SQ 587
| Green component sensivity, squared.
#define | R_COEF_SQ 299
| Red component sensivity, squared.

## Functions

csPtr< iImage > | csCreateXORPatternImage (int width, int height, int recdepth, float red=1.0f, float green=1.0f, float blue=1.0f)
| Create an iImage with a nice XOR pattern with 2^`recdepth` shades of from white to black.
static csRef< iImage > | csBakeKeyColor::Image (iImage *source, const csRGBpixel &transpColor)
| Set alpha of all pixels to 0 that match transpColor.

## Define Documentation

#define B_COEF 107

| Blue component sensivity. Definition at line 233 of file rgbpixel.h.

#define B_COEF_SQ 114

| Blue component sensivity, squared. Definition at line 242 of file rgbpixel.h.

#define G_COEF 242

| Green component sensivity. Definition at line 231 of file rgbpixel.h.

#define G_COEF_SQ 587

| Green component sensivity, squared. Definition at line 240 of file rgbpixel.h.

#define R_COEF 173

| Red component sensivity. Definition at line 229 of file rgbpixel.h.

#define R_COEF_SQ 299

| Red component sensivity, squared. Definition at line 238 of file rgbpixel.h.

## Function Documentation

csPtr<iImage> csCreateXORPatternImage | ( | int | width,
|  | int | height,
|  | int | recdepth,
|  | float | red = `1.0f`,
|  | float | green = `1.0f`,
|  | float | blue = `1.0f`
| ) |

Create an iImage with a nice XOR pattern with 2^`recdepth` shades of from white to black.

Parameters:

  | width | Width of the image to create
  | height | Height of the image to create
  | recdepth | "recursion depth", clamped to range 1-8.
  | red | Maximum value of red component
  | green | Maximum value of green component
  | blue | Maximum value of blue component

static csRef<iImage> csBakeKeyColor::Image | ( | iImage * | source,
|  | const csRGBpixel & | transpColor
| ) | `[static, inherited]`

Set alpha of all pixels to 0 that match transpColor.

The color of pixels made transparent is changed such that it has the average color of some near non-transparent pixels to prevent halos.

Remarks:
  Intermediately uses a truecolor images, i.e. paletted images are not handled with maximum efficiency.