00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017 #ifndef SIMGEAR_TEXTUREBUILDER_HXX
00018 #define SIMGEAR_TEXTUREBUILDER_HXX 1
00019
00020 #include <osg/StateSet>
00021 #include <osg/Texture>
00022 #include "EffectBuilder.hxx"
00023
00024 namespace simgear
00025 {
00026 class TextureBuilder : public EffectBuilder<osg::Texture>
00027 {
00028 public:
00029
00030 static osg::Texture* buildFromType(Effect* effect, const std::string& type,
00031 const SGPropertyNode*props,
00032 const osgDB::ReaderWriter::Options* options);
00033 };
00034
00035 struct TextureUnitBuilder : public PassAttributeBuilder
00036 {
00037 void buildAttribute(Effect* effect, Pass* pass, const SGPropertyNode* prop,
00038 const osgDB::ReaderWriter::Options* options);
00039 };
00040
00041
00042 bool makeTextureParameters(SGPropertyNode* paramRoot, const osg::StateSet* ss);
00043 }
00044 #endif