TextureDefinitionData structure. More...

Data Fields

A3DDouble m_dAlpha
 
A3DDouble m_dAlphaTestReference
 
A3DDouble m_dBlue
 
A3DDouble m_dGreen
 
A3DDouble m_dRed
 
A3DETextureBlendParameter m_eBlend_dst_Alpha
 
A3DETextureBlendParameter m_eBlend_dst_RGB
 
A3DETextureBlendParameter m_eBlend_src_Alpha
 
A3DETextureBlendParameter m_eBlend_src_RGB
 
A3DETextureMappingOperator m_eMappingOperator
 
A3DETextureMappingType m_eMappingType
 
A3DETextureAlphaTest m_eTextureAlphaTest
 
A3DETextureFunction m_eTextureFunction
 
A3DETextureWrappingMode m_eTextureWrappingModeS
 
A3DETextureWrappingMode m_eTextureWrappingModeT
 
A3DDoublem_pdMappingAttributesIntensity
 
A3DMiscCartesianTransformationm_pOperatorTransfo
 
A3DGraphTextureTransformationm_pTextureTransfo
 
A3DUns8m_pucMappingAttributesComponents
 
A3DUns8 m_ucTextureApplyingMode
 
A3DUns8 m_ucTextureDimension
 
A3DUns32 m_uiMappingAttributes
 
A3DUns32 m_uiMappingAttributesComponentsSize
 
A3DUns32 m_uiMappingAttributesIntensitySize
 
A3DUns32 m_uiPictureIndex
 

Detailed Description

TextureDefinitionData structure.

Version
2.0

The picture index refers to a picture in the picture array of the global data.

The m_ucTextureDimension member represents the dimension of the image. Possible values are 1, 2 or 3 (1 and 3 are reserved for future use)

The m_uiMappingAttributes member is a bitmask that defines the procedure to apply the texture (see Texture Mapping Attribute). This information can be completed with additional information such as intensity and involved color/alpha components.

The m_pdMappingAttributesIntensity member is an array of values that specify texture intensity values. Each of these members can be set to 0 or to the number of procedures deduced from the texture mapping attributes. If 0, intensity is set to 1. Otherwise, values should be in the range [0.0,1.0] and correspond to each non-zero bit of texture mapping attributes respectively. Same for the texture mapping attributes components, for which the default value is kA3DTextureMappingComponentsRgba (Texture Mapping Attribute Components).

Multiple procedures for texture application are reserved for future use. Therefore A3DGraphTextureDefinitionData::m_pdMappingAttributesIntensity and A3DGraphTextureDefinitionData::m_pucMappingAttributesComponents can contain at most one element:

Here is some pseudocode that sets attribute values that are within the current limitation in texture mapping settings:

myGraphTextureDefinition.m_uiMappingAttributes = kA3DTextureMappingDiffuse;
// For each bit of \ref m_uiMappingAttributes with a value of 1, intensity are 1.0 by default
myGraphTextureDefinition.m_uiMappingAttributesIntensitySize = 0;
// For each bit of \ref m_uiMappingAttributes with a value of 1, components are \ref kA3DTextureMappingComponentsRgba by default
myGraphTextureDefinition.m_uiMappingAttributesComponentsSize = 0;

Or:

myGraphTextureDefinition.m_uiMappingAttributes = kA3DTextureMappingDiffuse;
myGraphTextureDefinition.m_uiMappingAttributesIntensitySize = 1;
myGraphTextureDefinition.m_pdMappingAttributesIntensity[0] = 1.0;
myGraphTextureDefinition.m_uiMappingAttributesComponentsSize = 1;
myGraphTextureDefinition.m_pucMappingAttributesComponents[0] = kA3DTextureMappingComponentsRgba;

For information on values for the m_dAlphaTestReference member or the m_dAlphaTestReference member, see Texture Alpha Test. The latter member is a threshold value for the alpha test, which is used in conjunction with the m_dAlphaTestReference member.

See also
A3DGlobal

Field Documentation

◆ m_uiPictureIndex

A3DUns32 A3DGraphTextureDefinitionData::m_uiPictureIndex

Picture index in global data A3DGlobal.

◆ m_ucTextureDimension

A3DUns8 A3DGraphTextureDefinitionData::m_ucTextureDimension

Dimension of the texture.

◆ m_eMappingType

A3DETextureMappingType A3DGraphTextureDefinitionData::m_eMappingType

Mapping type.

◆ m_eMappingOperator

A3DETextureMappingOperator A3DGraphTextureDefinitionData::m_eMappingOperator

Mapping operator.

◆ m_pOperatorTransfo

A3DMiscCartesianTransformation* A3DGraphTextureDefinitionData::m_pOperatorTransfo

Optional mapping transformation.

◆ m_uiMappingAttributes

A3DUns32 A3DGraphTextureDefinitionData::m_uiMappingAttributes

Defines a method to map a texture. See explanations above.

See also
Texture Mapping Attribute

◆ m_uiMappingAttributesIntensitySize

A3DUns32 A3DGraphTextureDefinitionData::m_uiMappingAttributesIntensitySize

◆ m_pdMappingAttributesIntensity

A3DDouble* A3DGraphTextureDefinitionData::m_pdMappingAttributesIntensity

Intensities for attributes.

◆ m_uiMappingAttributesComponentsSize

A3DUns32 A3DGraphTextureDefinitionData::m_uiMappingAttributesComponentsSize

◆ m_pucMappingAttributesComponents

A3DUns8* A3DGraphTextureDefinitionData::m_pucMappingAttributesComponents

Components for attributes.

◆ m_eTextureFunction

A3DETextureFunction A3DGraphTextureDefinitionData::m_eTextureFunction

Defines how to paint a texture on the surface being rendered.

See also
Texture Function

◆ m_dRed

A3DDouble A3DGraphTextureDefinitionData::m_dRed

Reserved for future use. Blend color component in the range [0.0,1.0].

◆ m_dGreen

A3DDouble A3DGraphTextureDefinitionData::m_dGreen

Reserved for future use. Blend color component in the range [0.0,1.0].

◆ m_dBlue

A3DDouble A3DGraphTextureDefinitionData::m_dBlue

Reserved for future use. Blend color component in the range [0.0,1.0].

◆ m_dAlpha

A3DDouble A3DGraphTextureDefinitionData::m_dAlpha

Reserved for future use. Blend alpha component in the range [0.0,1.0].

◆ m_eBlend_src_RGB

A3DETextureBlendParameter A3DGraphTextureDefinitionData::m_eBlend_src_RGB

Reserved for future use.

See also
Texture Blend Parameter

◆ m_eBlend_dst_RGB

A3DETextureBlendParameter A3DGraphTextureDefinitionData::m_eBlend_dst_RGB

Reserved for future use.

See also
Texture Blend Parameter

◆ m_eBlend_src_Alpha

A3DETextureBlendParameter A3DGraphTextureDefinitionData::m_eBlend_src_Alpha

Reserved for future use.

See also
Texture Blend Parameter

◆ m_eBlend_dst_Alpha

A3DETextureBlendParameter A3DGraphTextureDefinitionData::m_eBlend_dst_Alpha

Reserved for future use.

See also
Texture Blend Parameter

◆ m_ucTextureApplyingMode

A3DUns8 A3DGraphTextureDefinitionData::m_ucTextureApplyingMode

Defines special applying modes of a texture Texture Applying Mode.

◆ m_eTextureAlphaTest

A3DETextureAlphaTest A3DGraphTextureDefinitionData::m_eTextureAlphaTest

Reserved for future use. Defines how to use Alpha test.

See also
Texture Alpha Test

◆ m_dAlphaTestReference

A3DDouble A3DGraphTextureDefinitionData::m_dAlphaTestReference

Threshold value for alpha test; used in conjunction with m_eTextureAlphaTest.

◆ m_eTextureWrappingModeS

A3DETextureWrappingMode A3DGraphTextureDefinitionData::m_eTextureWrappingModeS

Repeating mode first direction.

See also
Texture Wrapping Mode

◆ m_eTextureWrappingModeT

A3DETextureWrappingMode A3DGraphTextureDefinitionData::m_eTextureWrappingModeT

Repeating mode second direction.

See also
Texture Wrapping Mode

◆ m_pTextureTransfo

A3DGraphTextureTransformation* A3DGraphTextureDefinitionData::m_pTextureTransfo

Optional texture transformation.

See also
Texture Transformation