#pragma warning( disable : 4311 4312 )
#include "TextureConveyor.h"
#include <QtGui/QFileDialog>
#include <QtGui/QMessageBox>
#include <QtCore/QDir>
MB_PLUGIN(
"TextureConveyor",
"Exports Texture Layers",
"Autodesk",
"http://www.mudbox3d.com", TextureConveyor::Initializer );
TextureConveyor::TextureConveyor( void )
{
}
void TextureConveyor::ExportTextureChannels( void )
{
dialog.exec();
QDir directory = dialog.directory();
{
{
{
return;
}
}
else
{
return;
}
}
Kernel()->Interface()->WaitCursorStart();
for(Node *pNode = Node::First(); pNode; pNode = pNode->Next())
{
if(pNode->IsKindOf( Material::StaticClass()))
{
Material *pMaterial = dynamic_cast<Material *>(pNode);
if (!pMaterial)
continue;
for( unsigned int jj = 0; jj < pMaterial->TextureCount(); jj++ )
{
TexturePool *pTexturePool = pMaterial->Texture(jj);
if (pTexturePool)
{
int iNumTiles = pTexturePool->TileCount();
for (int ii = 0; ii < iNumTiles; ii++)
{
Texture *pTexture = pTexturePool->Tile(ii);
if (pTexture && pTexture->Width() && pTexture->Height())
{
Image *pImage = CreateInstance<Image>();
pTexture->CopyTo(pImage);
pImage->Save(filename);
delete pImage;
}
}
}
}
}
}
Kernel()->Interface()->WaitCursorEnd();
}
void TextureConveyor::Initializer( void )
{
}