Xors3d Engine
Texture loading flags

Defines

#define FLAGS_ALPHA   2
#define FLAGS_ARBG16F   2048
#define FLAGS_ARBG32F   4096
#define FLAGS_CLAMPU   16
#define FLAGS_CLAMPV   32
#define FLAGS_COLOR   1
#define FLAGS_CUBICENVMAP   128
#define FLAGS_MASKED   4
#define FLAGS_MIPMAPPED   8
#define FLAGS_R32F   256
#define FLAGS_SKIPCACHE   512
#define FLAGS_SPHERICALENVMAP   64
#define FLAGS_VOLUMETEXTURE   1024

Define Documentation

#define FLAGS_COLOR   1

Texture will be loaded with color channels.

#define FLAGS_ALPHA   2

Texture will be loaded with alpha channel.

#define FLAGS_MASKED   4

All black pixels (0xFFFFFFFF color) will be transparent.

#define FLAGS_MIPMAPPED   8

Mip-map levels for texture will be generated.

#define FLAGS_CLAMPU   16

Any part of a texture that lies outsides the U coordinates of range [0; 1] will not be drawn. Prevents texture-wrapping.

#define FLAGS_CLAMPV   32

Any part of a texture that lies outsides the V coordinates of range [0; 1] will not be drawn. Prevents texture-wrapping.

#define FLAGS_SPHERICALENVMAP   64

This works by taking a single image, and then applying it to a 3D mesh in such a way that the image appears to be reflected. When used with a texture that contains light sources, it can give some meshes such as a teapot a shiny appearance.

#define FLAGS_CUBICENVMAP   128

Cube mapping is similar to spherical mapping, except it uses six images each representing a particular 'face' of an imaginary cube, to give the appearance of an image that perfectly reflects its surroundings.

#define FLAGS_R32F   256

Floating-point texture will be created (it uses all 32 bits for a single channel, usual textures use 8 bits per channel). It is necessary for writing scene depth to texture, e.g. for shadow mapping or DOF.

#define FLAGS_SKIPCACHE   512

Texture will loaded directly with unique pixels data, not only transforms

#define FLAGS_VOLUMETEXTURE   1024

Texture will be loaded as volume. Volumes are organized into slices and can be thought of as width x height 2D surfaces stacked to make a width x height x depth volume. Each slice is a single row. Volumes can have subsequent levels in which the dimensions of each level are truncated to half the dimensions of the previous level.

#define FLAGS_ARBG16F   2048

Floating-point texture will be created similar to FLAGS_R32F but it will reserve 16 bit per channel. It is necessary for writing some scene information like pixel position, normal for some shader effects.

#define FLAGS_ARBG32F   4096

Floating-point texture will be created similar to FLAGS_R32F but it will reserve 32 bit per channel. It is necessary for writing some scene information like pixel position, normal for some shader effects.