- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Files
- Directories
- Examples

# PtexExtractor/PtexPaintExporter.h

    //**************************************************************************/
    // Copyright (c) 2010 Autodesk, Inc.
    // All rights reserved.
    //
    // Use of this software is subject to the terms of the Autodesk license
    // agreement provided at the time of installation or download, or which
    // otherwise accompanies this software in either electronic or hard copy form.
    //
    //**************************************************************************/
    // DESCRIPTION:
    // CREATED: August 2010
    //**************************************************************************/

    #if defined(JAMBUILD)
    #include <Mudbox/mudbox.h>
    #include <MapExtractor/MapExtractorInterface.h>
    #include <UVlessPainting/UVGeneratorInterface.h>
    #else
    #include "../../include/Mudbox/mudbox.h"
    #include "../../include/MapExtractor/MapExtractorInterface.h"
    #include "../../include/UVlessPainting/UVGeneratorInterface.h"
    #endif

    using namespace mudbox;
    using namespace mapextractionmodules;

    class PtexPaintExporter : public PaintLayerExporter
    {
        DECLARE_CLASS;

        PtexPaintExporter();

        // This function returns the supported file types by this class.
        virtual QVector<FileExtension> SupportedExtensions( void ) const;
        // This function does the exporting.
        virtual void Export( const QString &sFileName, int iFileTypeIndex, const Mesh *pSourceSurface, TexturePool *pSource );
        // This function performs a fast export, without doing a map extraction internally. This is faster, and preserves texture queality.
        template < typename tType, int iMultiplier >
        void FastExport( const QString &sFileName, int iFileTypeIndex, const Mesh *pSourceSurface, TexturePool *pSource, const UVGeneratorNode *pUVGenerator );

        abool m_bUseBaseLevel;
    };