00001 #ifndef _VRMLMATERIAL_H_ 00002 #define _VRMLMATERIAL_H_ 00003 00004 #include "VrmlNode.h" 00005 00006 class IGS_Object; 00007 class VrmlStack; 00008 00009 class VrmlMaterial : 00010 public VrmlNode 00011 { 00012 public: 00013 //data 00014 00015 //methods 00016 VrmlMaterial(); 00017 virtual void Parse( char*& buffer ); 00018 virtual void Render( VrmlStack& stack ) const; 00019 virtual void RenderOpenGl( VrmlStack& stack ) const; 00020 virtual IGS_Object* RenderToIGS( VrmlStack& stack ) const; 00021 00022 protected: 00023 float m_Ambient[ 4 ]; 00024 float m_Diffuse[ 4 ]; 00025 float m_Specular[ 4 ]; 00026 float m_Emissive[ 4 ]; 00027 float m_Shininess; 00028 }; 00029 00030 00031 #endif