From Sukender, "FBX plugin did not relay the osgDB::ReaderWriter::Options* when writing images (the writeImage() call). Now it does."

This commit is contained in:
Robert Osfield
2011-01-11 17:29:47 +00:00
parent 1f0a8aff32
commit 534052f7cb
2 changed files with 5 additions and 3 deletions

View File

@@ -335,6 +335,7 @@ WriterNodeVisitor::Material::Material(WriterNodeVisitor& writerNodeVisitor,
ImageSet& imageSet,
ImageFilenameSet& imageFilenameSet,
unsigned int& lastGeneratedImageFileName,
const osgDB::ReaderWriter::Options * options,
int index) :
_index(index),
_fbxMaterial(NULL),
@@ -429,7 +430,7 @@ WriterNodeVisitor::Material::Material(WriterNodeVisitor& writerNodeVisitor,
if (imageFilenameSet.find(destPath) != imageFilenameSet.end()) break;
}
lastGeneratedImageFileName = imageNumber;
osgDB::writeImageFile(*_osgImage, destPath);
osgDB::writeImageFile(*_osgImage, destPath, options);
}
else
{
@@ -441,7 +442,7 @@ WriterNodeVisitor::Material::Material(WriterNodeVisitor& writerNodeVisitor,
{
OSG_NOTICE << "Can't create directory for file '" << destPath << "'. May fail creating the image file." << std::endl;
}
osgDB::writeImageFile(*_osgImage, destPath);
osgDB::writeImageFile(*_osgImage, destPath, options);
}
}
@@ -474,7 +475,7 @@ int WriterNodeVisitor::processStateSet(const osg::StateSet* ss)
{
int matNum = _lastMaterialIndex;
_materialMap.insert(MaterialMap::value_type(MaterialMap::key_type(ss),
Material(*this, _srcDirectory, ss, mat, tex, _pSdkManager, _directory, _imageSet, _imageFilenameSet, _lastGeneratedImageFileName, matNum)));
Material(*this, _srcDirectory, ss, mat, tex, _pSdkManager, _directory, _imageSet, _imageFilenameSet, _lastGeneratedImageFileName, _options, matNum)));
++_lastMaterialIndex;
return matNum;
}

View File

@@ -149,6 +149,7 @@ class WriterNodeVisitor: public osg::NodeVisitor
ImageSet& imageSet,
ImageFilenameSet& imageFilenameSet,
unsigned int& lastGeneratedImageFileName,
const osgDB::ReaderWriter::Options * options,
int index = -1);
KFbxTexture* getFbxTexture() const