SoBumpMap - Online Linux Manual PageSection : 3
Updated : Mon Jan 25 2021
Source : Version 4.0.0
Note : Coin

NAMESoBumpMap − The SoBumpMap class is used to map a bump map onto subsequent shapes​.

SYNOPSIS
#include <Inventor/nodes/SoBumpMap​.h> Inherits SoNode​.

Public Typesenum Wrap { REPEAT = SoMultiTextureImageElement::REPEAT, CLAMP = SoMultiTextureImageElement::CLAMP }

Public Member Functionsvirtual SoType getTypeId (void) const
Returns the type identification of an object derived from a class inheriting SoBase​. This is used for run-time type checking and 'downward' casting​.
SoBumpMap (void)
virtual void doAction (SoAction *action)
virtual void GLRender (SoGLRenderAction *action)
virtual void callback (SoCallbackAction *action)
virtual void rayPick (SoRayPickAction *action)

Static Public Member Functionsstatic SoType getClassTypeId (void)
static void initClass (void)

Public AttributesSoSFString filename
SoSFImage image
SoSFEnum wrapS
SoSFEnum wrapT

Protected Member Functionsvirtual const SoFieldData * getFieldData (void) const
virtual ~SoBumpMap ()
virtual SbBool readInstance (SoInput *in, unsigned short flags)
virtual void notify (SoNotList *list)

Static Protected Member Functionsstatic const SoFieldData ** getFieldDataPtr (void)

Additional Inherited Members

Detailed DescriptionThe SoBumpMap class is used to map a bump map onto subsequent shapes​. SoBumpMap has support for two types of maps​. If the image is a three component (RGB) image, it will be treated as a normal map, where the red image component equals the X normal component, green equals Y, and blue is Z​. See http://www.paulsprojects.net/tutorials/simplebump/simplebump.html for a nice introduction about bump mapping and normal maps​. If the image is a grayscale image, it will be treated as a height map, and automatically converted to a normal map​. For bump mapping to work with extension nodes for Coin, the SoShape::generatePrimitives() method must be correctly implemented for the shape​. This is needed since tangent space coordinates needs to be calculated for each vertex in the shape​. All shape nodes which are a standard part of Coin meets this criteria​. Bump mapping in Coin requires OpenGL 1​.3, or the following OpenGL extensions: GL_ARB_multitexture, GL_ARB_texture_cube_map, GL_ARB_texture_env_combine and GL_ARB_texture_env_dot3 (or the corresponding EXT extensions)​. If the run-time system doesn't meet these requirements, Coin will post a warning and the bump map will simply be ignored​. GL_ARB_vertex_program and GL_ARB_fragment_program is required to get specular lighting on the bumps​. If these extensions are not available, the bumps will be rendered with diffuse lighting only​. Bump mapped objects will be rendered with multiple rendering passes​. One extra pass per light source for diffuse only bumps, and two extra passes per light source for diffuse and specular bumps​. You can turn off specular lighting on the bumps by setting specularColor to (0​.0, 0​.0, 0​.0)​. FILE FORMAT/DEFAULTS: BumpMap { filename "" image 0 0 0 wrapS REPEAT wrapT REPEAT } Since Coin 2​.2

Member Enumeration Documentation

enum SoBumpMap::WrapEnumeration of wrapping strategies which can be used when the bump map doesn't cover the full extent of the geometry​. Enumerator REPEAT  Repeat bump map when coordinate is not between 0 and 1​. CLAMP  Clamp coordinate between 0 and 1​.

Constructor & Destructor Documentation

SoBumpMap::SoBumpMap (void)Constructor​.

SoBumpMap::~SoBumpMap () [protected], [virtual]Destructor​. Frees up internal resources used to store texture image data​.

Member Function Documentation

SoType SoBumpMap::getTypeId (void) const [virtual]Returns the type identification of an object derived from a class inheriting SoBase​. This is used for run-time type checking and 'downward' casting​. Usage example: void foo(SoNode * node) { if (node->getTypeId() == SoFile::getClassTypeId()) { SoFile * filenode = (SoFile *)node; // safe downward cast, knows the type } }For application programmers wanting to extend the library with new nodes, engines, nodekits, draggers or others: this method needs to be overridden in all subclasses​. This is typically done as part of setting up the full type system for extension classes, which is usually accomplished by using the pre-defined macros available through for instance Inventor/nodes/SoSubNode​.h (SO_NODE_INIT_CLASS and SO_NODE_CONSTRUCTOR for node classes), Inventor/engines/SoSubEngine​.h (for engine classes) and so on​. For more information on writing Coin extensions, see the class documentation of the toplevel superclasses for the various class groups​. Implements SoBase​.

const SoFieldData * SoBumpMap::getFieldData (void) const [protected], [virtual]Returns a pointer to the class-wide field data storage object for this instance​. If no fields are present, returns NULL​. Reimplemented from SoFieldContainer​.

void SoBumpMap::doAction (SoAction * action) [virtual]This function performs the typical operation of a node for any action​. Reimplemented from SoNode​.

void SoBumpMap::GLRender (SoGLRenderAction * action) [virtual]Action method for the SoGLRenderAction​. This is called during rendering traversals​. Nodes influencing the rendering state in any way or who wants to throw geometry primitives at OpenGL overrides this method​. Reimplemented from SoNode​.

void SoBumpMap::callback (SoCallbackAction * action) [virtual]Action method for SoCallbackAction​. Simply updates the state according to how the node behaves for the render action, so the application programmer can use the SoCallbackAction for extracting information about the scene graph​. Reimplemented from SoNode​.

void SoBumpMap::rayPick (SoRayPickAction * action) [virtual]Action method for SoRayPickAction​. Checks the ray specification of the action and tests for intersection with the data of the node​. Nodes influencing relevant state variables for how picking is done also overrides this method​. Reimplemented from SoNode​.

SbBool SoBumpMap::readInstance (SoInput * in, unsigned short flags) [protected], [virtual]This method is mainly intended for internal use during file import operations​. It reads a definition of an instance from the input stream in​. The input stream state points to the start of a serialized / persistant representation of an instance of this class type​. TRUE or FALSE is returned, depending on if the instantiation and configuration of the new object of this class type went ok or not​. The import process should be robust and handle corrupted input streams by returning FALSE​. flags is used internally during binary import when reading user extension nodes, group nodes or engines​. Reimplemented from SoNode​.

void SoBumpMap::notify (SoNotList * l) [protected], [virtual]Notifies all auditors for this instance when changes are made​. Reimplemented from SoNode​.

Member Data Documentation

SoSFString SoBumpMap::filenameBump map (or normal map) filename, referring to a file on disk in a supported image bitmap format​. See SoBumpMap::filename for more information​.

SoSFImage SoBumpMap::imageInline image data​. Defaults to contain an empty bump map​.

SoSFEnum SoBumpMap::wrapSWrapping strategy for the S coordinate when the bump map is narrower than the object to map onto​. Default value is SoBumpMap::REPEAT​.

SoSFEnum SoBumpMap::wrapTWrapping strategy for the T coordinate when the bump map is shorter than the object to map onto​. Default value is SoBumpMap::REPEAT​.

AuthorGenerated automatically by Doxygen for Coin from the source code​.
0
Johanes Gumabo
Data Size   :   34,394 byte
man-SoBumpMap.3coin4Build   :   2024-12-29, 07:25   :  
Visitor Screen   :   x
Visitor Counter ( page / site )   :   3 / 259,558
Visitor ID   :     :  
Visitor IP   :   3.137.219.213   :  
Visitor Provider   :   AMAZON-02   :  
Provider Position ( lat x lon )   :   39.962500 x -83.006100   :   x
Provider Accuracy Radius ( km )   :   1000   :  
Provider City   :   Columbus   :  
Provider Province   :   Ohio ,   :   ,
Provider Country   :   United States   :  
Provider Continent   :   North America   :  
Visitor Recorder   :   Version   :  
Visitor Recorder   :   Library   :  
Online Linux Manual Page   :   Version   :   Online Linux Manual Page - Fedora.40 - march=x86-64 - mtune=generic - 24.12.29
Online Linux Manual Page   :   Library   :   lib_c - 24.10.03 - march=x86-64 - mtune=generic - Fedora.40
Online Linux Manual Page   :   Library   :   lib_m - 24.10.03 - march=x86-64 - mtune=generic - Fedora.40
Data Base   :   Version   :   Online Linux Manual Page Database - 24.04.13 - march=x86-64 - mtune=generic - fedora-38
Data Base   :   Library   :   lib_c - 23.02.07 - march=x86-64 - mtune=generic - fedora.36

Very long time ago, I have the best tutor, Wenzel Svojanovsky . If someone knows the email address of Wenzel Svojanovsky , please send an email to johanes_gumabo@yahoo.co.id .
If error, please print screen and send to johanes_gumabo@yahoo.co.id
Under development. Support me via PayPal.