TINMAN 3D / REALTIME TERRAIN
Software Development Kit - User Manual

enum VertexElementFlags in Tinman.Terrain.Rendering

Enumeration of vertex element flags.

[Flags]
enum VertexElementFlags  

Items

None = 0
Normalize = 0x01

Shall denormalized integer values be normalized by the GPU before they arrive at the GPU program for processing?

Remarks:

Value normalization only applies to some integer data types, please refer to the respective VertexElementType items for details.

Values of unsigned integer types with N bits are divided by 2^N-1, in order to yield numbers in the range [0..1].

Values of signed integer types with N bits are divided by 2^(N-1)-1, in order to yield numbers in the range [-1..1].

The GPU will perform denormalization automatically.

Srgb = 0x03

Shall sRGB compression be applied to floating-point input values X, Y and Z before denormalizing them to integer values?

Remarks:

The GPU will not perform automatic sRGB decompression. This must be done by the GPU program.

This flag implies Normalize.

See also:

IVertexElementWriterBase.WriteVertexElementFloat
Shift = 0x05

Shall floating-point input values be shifted between [0..1] and [-1..1] before being denormalized to integer values?

Remarks:

For integer types (see IsIntegerType), the input values are shifted...
...from [0..1] to [-1..1] for signed types.
...from [-1..1] to [0..1] for unsigned types.

The GPU will not perform automatic reverse shifting. This must be done by the GPU program.

This flag implies Normalize.

See also:

IVertexElementWriterBase.WriteVertexElementFloat