00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00027
00029 #ifndef __X3DTEXTURECOORDINATENODE_H__
00030 #define __X3DTEXTURECOORDINATENODE_H__
00031
00032 #include "X3DGeometricPropertyNode.h"
00033
00034 namespace H3D {
00035
00043 class H3DAPI_API X3DTextureCoordinateNode : public X3DGeometricPropertyNode {
00044 public:
00045
00047 X3DTextureCoordinateNode( Inst< SFNode> _metadata = 0 );
00048
00051 virtual void render( int index ) {}
00052
00054 virtual void renderForTextureUnit( int index,
00055 unsigned int texture_unit ) {}
00056
00059 virtual void renderForTextureUnits( int index,
00060 unsigned int start_unit,
00061 unsigned int end_unit );
00062
00065 virtual string defaultXMLContainerField() {
00066 return "texCoord";
00067 }
00068
00070 virtual unsigned int nrAvailableTexCoords() = 0;
00071
00074 virtual void renderArray() {}
00075
00078 virtual void renderArrayForTextureUnit( unsigned int texture_unit ) {}
00079
00083 virtual void renderArrayForTextureUnits( unsigned int start_unit,
00084 unsigned int end_unit );
00085
00087 virtual void disableArray() {}
00088
00090 virtual void disableArrayForTextureUnit( unsigned int texture_unit ) {}
00091
00093 virtual void disableArrayForTextureUnits( unsigned int start_unit,
00094 unsigned int end_unit );
00095
00096 };
00097 }
00098
00099 #endif