| Irrlicht 3D Engine |

Public Member Functions
irr::scene::IColladaMeshWriterProperties Class Reference

Callback interface for properties which can be used to influence collada writing. More...

`#include <IColladaMeshWriter.h>`

Inheritance diagram for irr::scene::IColladaMeshWriterProperties:

List of all members.

## Public Member Functions

- virtual ~IColladaMeshWriterProperties ()
- virtual E_COLLADA_IRR_COLOR getColorMapping (const video::SMaterial &material, E_COLLADA_COLOR_SAMPLER cs) const =0
    Return which color from Irrlicht should be used for the color requested by collada.
- virtual video::SColor getCustomColor (const video::SMaterial &material, E_COLLADA_COLOR_SAMPLER cs) const =0
    Return custom colors for certain color types requested by collada.
- virtual f32 getIndexOfRefraction (const video::SMaterial &material) const =0
    Return index of refraction for that material.
- virtual IMesh * getMesh (irr::scene::ISceneNode *node)=0
- virtual f32 getReflectivity (const video::SMaterial &material) const =0
    Reflectivity value for that material.
- virtual E_COLLADA_TECHNIQUE_FX getTechniqueFx (const video::SMaterial &material) const =0
    Which lighting model should be used in the technique (FX) section when exporting effects (materials)
- virtual s32 getTextureIdx (const video::SMaterial &material, E_COLLADA_COLOR_SAMPLER cs) const =0
    Which texture index should be used when writing the texture of the given sampler color.
- virtual f32 getTransparency (const video::SMaterial &material) const =0
    Transparency value for that material.
- virtual E_COLLADA_TRANSPARENT_FX getTransparentFx (const video::SMaterial &material) const =0
    Return the transparence color interpretation.
- virtual bool isExportable (const irr::scene::ISceneNode *node) const =0
- virtual bool useNodeMaterial (const scene::ISceneNode *node) const =0
    Return if the node has it's own material overwriting the mesh-materials.

## Detailed Description

Callback interface for properties which can be used to influence collada writing.

Definition at line 92 of file IColladaMeshWriter.h.

## Constructor & Destructor Documentation

virtual irr::scene::IColladaMeshWriterProperties::~IColladaMeshWriterProperties | ( |  | ) | `[inline, virtual]`

Definition at line 95 of file IColladaMeshWriter.h.

## Member Function Documentation

virtual E_COLLADA_IRR_COLOR irr::scene::IColladaMeshWriterProperties::getColorMapping | ( | const video::SMaterial & | material,
|  | E_COLLADA_COLOR_SAMPLER | cs
| ) |  | const`[pure virtual]`

Return which color from Irrlicht should be used for the color requested by collada.

Note that collada allows exporting either texture or color, not both. So color mapping is only checked if we have no valid texture already. By default we try to return best fits when possible. For example ECCS_DIFFUSE is mapped to ECIC_DIFFUSE. When ECIC_CUSTOM is returned then the result of getCustomColor will be used.

virtual video::SColor irr::scene::IColladaMeshWriterProperties::getCustomColor | ( | const video::SMaterial & | material,
|  | E_COLLADA_COLOR_SAMPLER | cs
| ) |  | const`[pure virtual]`

Return custom colors for certain color types requested by collada.

Only used when getColorMapping returns ECIC_CUSTOM for the same paramters.

virtual f32 irr::scene::IColladaMeshWriterProperties::getIndexOfRefraction | ( | const video::SMaterial & | material | ) | const`[pure virtual]`

Return index of refraction for that material.

By default we don't write that.

Returns:
  a value greater equal 0.f to write <index_of_refraction> when it is lesser than 0 nothing will be written

virtual IMesh* irr::scene::IColladaMeshWriterProperties::getMesh | ( | irr::scene::ISceneNode * | node | ) | `[pure virtual]`

Return the mesh for the given node. If it has no mesh or shouldn't export it's mesh you can return 0 in which case only the transformation matrix of the node will be used.

virtual f32 irr::scene::IColladaMeshWriterProperties::getReflectivity | ( | const video::SMaterial & | material | ) | const`[pure virtual]`

Reflectivity value for that material.

The amount of perfect mirror reflection to be added to the reflected light

Returns:
  0.0 - 1.0 for reflectivity and element is not written at all when < 0.f

virtual E_COLLADA_TECHNIQUE_FX irr::scene::IColladaMeshWriterProperties::getTechniqueFx | ( | const video::SMaterial & | material | ) | const`[pure virtual]`

Which lighting model should be used in the technique (FX) section when exporting effects (materials)

virtual s32 irr::scene::IColladaMeshWriterProperties::getTextureIdx | ( | const video::SMaterial & | material,
|  | E_COLLADA_COLOR_SAMPLER | cs
| ) |  | const`[pure virtual]`

Which texture index should be used when writing the texture of the given sampler color.

Returns:
  the index to the texture-layer or -1 if that texture should never be exported Note: for ECCS_TRANSPARENT by default the alpha channel is used, if you want to use RGB you have to set also the ECOF_RGB_ZERO flag in getTransparentFx.

virtual f32 irr::scene::IColladaMeshWriterProperties::getTransparency | ( | const video::SMaterial & | material | ) | const`[pure virtual]`

Transparency value for that material.

This value is additional to transparent settings, if both are set they will be multiplicated.

Returns:
  1.0 for fully transparent, 0.0 for not transparent and not written at all when < 0.f

virtual E_COLLADA_TRANSPARENT_FX irr::scene::IColladaMeshWriterProperties::getTransparentFx | ( | const video::SMaterial & | material | ) | const`[pure virtual]`

Return the transparence color interpretation.

Not this is only about ECCS_TRANSPARENT and does not affect getTransparency.

virtual bool irr::scene::IColladaMeshWriterProperties::isExportable | ( | const irr::scene::ISceneNode * | node | ) | const`[pure virtual]`

Should node be used in scene export? (only needed for scene-writing, ignored in mesh-writing) By default all visible nodes are exported.

virtual bool irr::scene::IColladaMeshWriterProperties::useNodeMaterial | ( | const scene::ISceneNode * | node | ) | const`[pure virtual]`

Return if the node has it's own material overwriting the mesh-materials.

Usually true except for mesh-nodes which have isReadOnlyMaterials set. This is mostly important for naming (as ISceneNode::getMaterial() already returns the correct material). You have to override it when exporting custom scenenodes with own materials.

Returns:
  true => The node's own material is used, false => ignore node material and use the one from the mesh

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

- IColladaMeshWriter.h