# Home    # nevrax.com   
Nevrax
Nevrax.org
#News
#Mailing-list
#Documentation
#CVS
#Bugs
#License
Docs
 
Documentation  
Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages   Search  

NL3D::CMaterialBase Class Reference

An material Reference for Animated reference. More...

#include <animated_material.h>

Inheritance diagram for NL3D::CMaterialBase:

NLMISC::CRefCount List of all members.

Public Methods

 CMaterialBase ()
void copyFromMaterial (CMaterial *pMat)
 setup the default tracks from a material This method: copy the material contents into the Defaults tracks values. More...

void serial (NLMISC::IStream &f)
 save/load. More...

Texture Animation mgt.
void setAnimatedTexture (uint32 id, CSmartPtr< ITexture > pText)
 assign a specific texture for an id (a uint32). It is a valid to give a NULL ptr (=> un textured). Sotred as a SmartPtr. More...

bool validAnimatedTexture (uint32 id)
 is this Id valid? More...

ITexturegetAnimatedTexture (uint32 id)
 return the texture for this Id. return NULL either if NULL texture for this id or if(!validAnimatedTexture()). More...


Public Attributes

std::string Name
CTrackDefaultRGBA DefaultAmbient
CTrackDefaultRGBA DefaultDiffuse
CTrackDefaultRGBA DefaultSpecular
CTrackDefaultFloat DefaultShininess
CTrackDefaultRGBA DefaultEmissive
CTrackDefaultFloat DefaultOpacity
CTrackDefaultInt DefaultTexture
CTexAnimTracks DefaultTexAnimTracks [IDRV_MAT_MAXTEXTURES]

Private Types

typedef std::map< uint32,
CAnimatedTexture
TAnimatedTextureMap

Private Attributes

TAnimatedTextureMap _AnimatedTextures

Detailed Description

An material Reference for Animated reference.

This object is stored in the mesh, and is serialised. NB: formated for 3ds Max :). Emissive anim is a float, with a constant RGB factor.

Author:
Cyril 'Hulud' Corvazier , Nevrax France
Date:
2001

Definition at line 51 of file animated_material.h.


Member Typedef Documentation

typedef std::map<uint32, CAnimatedTexture> NL3D::CMaterialBase::TAnimatedTextureMap [private]
 

Definition at line 143 of file animated_material.h.


Constructor & Destructor Documentation

NL3D::CMaterialBase::CMaterialBase  
 

Definition at line 63 of file animated_material.cpp.

References DefaultAmbient, DefaultDiffuse, DefaultEmissive, DefaultOpacity, DefaultShininess, DefaultSpecular, DefaultTexAnimTracks, DefaultTexture, NL3D::IDRV_MAT_MAXTEXTURES, and NL3D::CMaterialBase::CTexAnimTracks::setDefaultValue.


Member Function Documentation

void NL3D::CMaterialBase::copyFromMaterial CMaterial   pMat
 

setup the default tracks from a material This method: copy the material contents into the Defaults tracks values.

  • NB: for emissive part, emissive defaut track value is set to 1, and emissive factor is set to the RGB emissive value stored into pMat.

Definition at line 99 of file animated_material.cpp.

References DefaultAmbient, DefaultDiffuse, DefaultEmissive, DefaultOpacity, DefaultShininess, DefaultSpecular, DefaultTexAnimTracks, NL3D::CMaterialBase::CTexAnimTracks::DefaultUScale, NL3D::CMaterialBase::CTexAnimTracks::DefaultUTrans, NL3D::CMaterialBase::CTexAnimTracks::DefaultVScale, NL3D::CMaterialBase::CTexAnimTracks::DefaultVTrans, NL3D::CMaterialBase::CTexAnimTracks::DefaultWRot, and NL3D::IDRV_MAT_MAXTEXTURES.

ITexture * NL3D::CMaterialBase::getAnimatedTexture uint32    id
 

return the texture for this Id. return NULL either if NULL texture for this id or if(!validAnimatedTexture()).

Definition at line 139 of file animated_material.cpp.

References _AnimatedTextures, and id.

void NL3D::CMaterialBase::serial NLMISC::IStream   f
 

save/load.

Definition at line 80 of file animated_material.cpp.

References _AnimatedTextures, DefaultAmbient, DefaultDiffuse, DefaultEmissive, DefaultOpacity, DefaultShininess, DefaultSpecular, DefaultTexAnimTracks, DefaultTexture, NL3D::IDRV_MAT_MAXTEXTURES, Name, NLMISC::IStream::serial, NLMISC::IStream::serialCont, and NLMISC::IStream::serialVersion.

void NL3D::CMaterialBase::setAnimatedTexture uint32    id,
CSmartPtr< ITexture   pText
 

assign a specific texture for an id (a uint32). It is a valid to give a NULL ptr (=> un textured). Sotred as a SmartPtr.

This is the place where you define your list of texture. This list of animated texture is serialised. AnimatedMaterial animate texture with sint32 Tracks. If the id is not found in CMaterialBase, then the CMaterial texture is left as before.

NB: id 0x7FFFFFFF is a reserved id, used as default to indicate no valid Animated texture.

Definition at line 126 of file animated_material.cpp.

References _AnimatedTextures, and id.

bool NL3D::CMaterialBase::validAnimatedTexture uint32    id
 

is this Id valid?

Definition at line 132 of file animated_material.cpp.

References _AnimatedTextures, and id.


Member Data Documentation

TAnimatedTextureMap NL3D::CMaterialBase::_AnimatedTextures [private]
 

Definition at line 144 of file animated_material.h.

Referenced by getAnimatedTexture, serial, setAnimatedTexture, and validAnimatedTexture.

CTrackDefaultRGBA NL3D::CMaterialBase::DefaultAmbient
 

Definition at line 72 of file animated_material.h.

Referenced by CMaterialBase, copyFromMaterial, and serial.

CTrackDefaultRGBA NL3D::CMaterialBase::DefaultDiffuse
 

Definition at line 73 of file animated_material.h.

Referenced by CMaterialBase, copyFromMaterial, and serial.

CTrackDefaultRGBA NL3D::CMaterialBase::DefaultEmissive
 

Definition at line 76 of file animated_material.h.

Referenced by CMaterialBase, copyFromMaterial, and serial.

CTrackDefaultFloat NL3D::CMaterialBase::DefaultOpacity
 

Definition at line 77 of file animated_material.h.

Referenced by CMaterialBase, copyFromMaterial, and serial.

CTrackDefaultFloat NL3D::CMaterialBase::DefaultShininess
 

Definition at line 75 of file animated_material.h.

Referenced by CMaterialBase, copyFromMaterial, and serial.

CTrackDefaultRGBA NL3D::CMaterialBase::DefaultSpecular
 

Definition at line 74 of file animated_material.h.

Referenced by CMaterialBase, copyFromMaterial, and serial.

CTexAnimTracks NL3D::CMaterialBase::DefaultTexAnimTracks[IDRV_MAT_MAXTEXTURES]
 

Definition at line 109 of file animated_material.h.

Referenced by CMaterialBase, copyFromMaterial, and serial.

CTrackDefaultInt NL3D::CMaterialBase::DefaultTexture
 

Definition at line 78 of file animated_material.h.

Referenced by CMaterialBase, and serial.

std::string NL3D::CMaterialBase::Name
 

Definition at line 68 of file animated_material.h.

Referenced by serial.


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