Coin Logo http://www.sim.no/
http://www.coin3d.org/

SoHeightMapToNormalMap Class Reference
[Engine Classes]

Engine for computing a normal map from a height map. More...

#include <Inventor/engines/SoHeightMapToNormalMap.h>

Inheritance diagram for SoHeightMapToNormalMap:
SoTexture2Convert SoEngine SoFieldContainer SoBase

List of all members.

Public Types

enum  NormalMapFormat { INT8 }

Public Member Functions

 SoHeightMapToNormalMap (void)

Static Public Member Functions

static void initClass (void)
static void convert (const unsigned char *srcptr, SbVec2s size, int nc, SbImage &dst_out)

Public Attributes

SoSFEnum format

Protected Member Functions

virtual void inputChanged (SoField *which)
virtual void evaluate (void)

Detailed Description

Engine for computing a normal map from a height map.

This engine will create a normal map texture from a height map texture. You can use it in an Inventor file like this:

  Texture2 {
    image = HeightMapToNormalMap {
      sourceImage = Texture2 { filename "HeightMap.jpg" } . image
    } . image
  }

Be aware that the field connections will remain active, so both Texture2 nodes and the HeightMapToNormalMap engine will be kept resident in memory (unless you intervene manually and detach the engine) even though only the "outer" Texture2 node is needed. This can give quite a big memory use overhead.

Be aware that this class is an extension for Coin, and it is not available in the original SGI Open Inventor v2.1 API.

Since:
Coin 3.0

Member Enumeration Documentation

Enumeration of available normal map formats.

Enumerator:
INT8 

Encode the normals as a 3 component byte texture. This is the only option for now, as long as float textures are not conveniently supported in Coin.


Constructor & Destructor Documentation

SoHeightMapToNormalMap::SoHeightMapToNormalMap ( void   ) 

Constructor.


Member Function Documentation

void SoHeightMapToNormalMap::initClass ( void   )  [static]

Class initializer.

Reimplemented from SoTexture2Convert.

void SoHeightMapToNormalMap::convert ( const unsigned char *  srcptr,
SbVec2s  size,
int  nc,
SbImage dst_out 
) [static]

Static function for computing a normal map from a height map. This function can be used directly without any engine instantiation.

void SoHeightMapToNormalMap::evaluate ( void   )  [protected, virtual]

This API member is considered internal to the library, as it is not likely to be of interest to the application programmer.

Implements SoEngine.


Member Data Documentation

This setting decides what kind of normal map is generated. For now, only the INT8 format is available, and it is the default value.


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

Copyright © 1998-2010 by Kongsberg Oil & Gas Technologies. All rights reserved.

Generated on 19 Dec 2016 for Coin by Doxygen 1.6.1.