![]() |
OGRE 14.3
Object-Oriented Graphics Rendering Engine
|
Class for serializing Materials to a .material script. More...
#include <OgreMaterialSerializer.h>
Classes | |
class | Listener |
Class that allows listening in on the various stages of material serialization process. More... | |
Public Types | |
enum | SerializeEvent { MSE_PRE_WRITE , MSE_WRITE_BEGIN , MSE_WRITE_END , MSE_POST_WRITE } |
Public Member Functions | |
MaterialSerializer () | |
default constructor | |
virtual | ~MaterialSerializer () |
default destructor | |
void | addListener (Listener *listener) |
Register a listener to this Serializer. | |
void | beginSection (unsigned short level, const bool useMainBuffer=true) |
void | clearQueue () |
Clears the internal buffer. | |
void | endSection (unsigned short level, const bool useMainBuffer=true) |
void | exportMaterial (const MaterialPtr &pMat, const String &filename, bool exportDefaults=false, const bool includeProgDef=false, const String &programFilename="", const String &materialName="") |
Exports a single in-memory Material to the named material script file. | |
void | exportQueued (const String &filename, const bool includeProgDef=false, const String &programFilename="") |
Exports queued material(s) to a named material script file. | |
const String & | getQueuedAsString () const |
Returns a string representing the parsed material(s) | |
void | queueForExport (const MaterialPtr &pMat, bool clearQueued=false, bool exportDefaults=false, const String &materialName="") |
Queue an in-memory Material to the internal buffer for export. | |
String | quoteWord (const String &val) |
void | removeListener (Listener *listener) |
Remove a listener from this Serializer. | |
void | writeAttribute (unsigned short level, const String &att, const bool useMainBuffer=true) |
void | writeComment (unsigned short level, const String &comment, const bool useMainBuffer=true) |
void | writeValue (const String &val, const bool useMainBuffer=true) |
Class for serializing Materials to a .material script.
Ogre::MaterialSerializer::MaterialSerializer | ( | ) |
default constructor
Referenced by Ogre::MaterialSerializer::Listener::gpuProgramRefEventRaised(), Ogre::MaterialSerializer::Listener::materialEventRaised(), Ogre::MaterialSerializer::Listener::passEventRaised(), Ogre::MaterialSerializer::Listener::techniqueEventRaised(), and Ogre::MaterialSerializer::Listener::textureUnitStateEventRaised().
|
inlinevirtual |
default destructor
void Ogre::MaterialSerializer::queueForExport | ( | const MaterialPtr & | pMat, |
bool | clearQueued = false, | ||
bool | exportDefaults = false, | ||
const String & | materialName = "" ) |
Queue an in-memory Material to the internal buffer for export.
pMat | Material pointer |
clearQueued | If true, any materials already queued will be removed |
exportDefaults | If true, attributes which are defaulted will be included in the script exported, otherwise they will be omitted |
materialName | Allow exporting the given material under a different name. In case of empty string the original material name will be used. |
void Ogre::MaterialSerializer::exportQueued | ( | const String & | filename, |
const bool | includeProgDef = false, | ||
const String & | programFilename = "" ) |
Exports queued material(s) to a named material script file.
filename | the file name of the material script to be exported |
includeProgDef | If true, vertex program and fragment program definitions will be written at the top of the material script |
programFilename | the file name of the vertex / fragment program script to be exported. This is only used if there are program definitions to be exported and includeProgDef is false when calling queueForExport. |
void Ogre::MaterialSerializer::exportMaterial | ( | const MaterialPtr & | pMat, |
const String & | filename, | ||
bool | exportDefaults = false, | ||
const bool | includeProgDef = false, | ||
const String & | programFilename = "", | ||
const String & | materialName = "" ) |
Exports a single in-memory Material to the named material script file.
pMat | Material pointer |
filename | the file name of the material script to be exported |
exportDefaults | if true then exports all values including defaults |
includeProgDef | if true includes Gpu shader program definitions in the export material script otherwise if false then program definitions will be exported to a separate file with name programFilename if programFilename is not empty |
programFilename | the file name of the vertex / fragment program script to be exported. This is only used if includeProgDef is false. |
materialName | Allow exporting the given material under a different name. In case of empty string the original material name will be used. |
const String & Ogre::MaterialSerializer::getQueuedAsString | ( | ) | const |
Returns a string representing the parsed material(s)
void Ogre::MaterialSerializer::clearQueue | ( | ) |
Clears the internal buffer.
void Ogre::MaterialSerializer::addListener | ( | Listener * | listener | ) |
Register a listener to this Serializer.
void Ogre::MaterialSerializer::removeListener | ( | Listener * | listener | ) |
Remove a listener from this Serializer.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |