arsa
2.7
|
Interface for writing meshes. More...
#include <IColladaMeshWriter.h>
Public Member Functions | |
IColladaMeshWriter () | |
virtual | ~IColladaMeshWriter () |
Destructor. More... | |
virtual bool | writeScene (io::IWriteFile *file, scene::ISceneNode *root, int writeRoot=1)=0 |
writes a scene starting with the given node More... | |
virtual void | setWriteTextures (bool write) |
Set if texture information should be written. More... | |
virtual bool | getWriteTextures () const |
Get if texture information should be written. More... | |
virtual void | setWriteDefaultScene (bool write) |
Set if a default scene should be written when writing meshes. More... | |
virtual bool | getWriteDefaultScene () const |
Get if a default scene should be written. More... | |
virtual void | setAmbientLight (const video::SColorf &ambientColor) |
Sets ambient color of the scene to write. More... | |
virtual video::SColorf | getAmbientLight () const |
Return ambient light of the scene which is written. More... | |
virtual void | setUnit (irr::f32 meter, const irr::core::stringc &name) |
Set the unit distances for all elements and objects. More... | |
virtual irr::f32 | getUnitMeter () const |
Return real world meters to use per unit for all elements and objects. More... | |
virtual irr::core::stringc | getUnitName () const |
Return name to use for distance units. Like p.E. "meter". More... | |
virtual void | setGeometryWriting (E_COLLADA_GEOMETRY_WRITING writeStyle) |
Control when and how often a mesh is written. More... | |
virtual E_COLLADA_GEOMETRY_WRITING | getGeometryWriting () const |
Get the current style of geometry writing. More... | |
virtual void | setExportSMaterialsOnlyOnce (bool exportOnce) |
Make certain there is only one collada material generated per Irrlicht material. More... | |
virtual bool | getExportSMaterialsOnlyOnce () const |
virtual void | setProperties (IColladaMeshWriterProperties *p) |
Set properties to use by the meshwriter instead of it's default properties. More... | |
virtual IColladaMeshWriterProperties * | getProperties () const |
Get properties which are currently used. More... | |
IColladaMeshWriterProperties * | getDefaultProperties () const |
Return the original default properties of the writer. More... | |
virtual void | setNameGenerator (IColladaMeshWriterNames *nameGenerator) |
Install a generator to create custom names on export. More... | |
virtual IColladaMeshWriterNames * | getNameGenerator () const |
Get currently used name generator. More... | |
IColladaMeshWriterNames * | getDefaultNameGenerator () const |
Return the original default name generator of the writer. More... | |
virtual irr::core::stringc | toNCName (const irr::core::stringc &oldString, const irr::core::stringc &prefix=irr::core::stringc("_NC_")) const =0 |
Restrict the characters of oldString a set of allowed characters in xs:NCName and add the prefix. More... | |
virtual const irr::core::stringc * | findGeometryNameForNode (ISceneNode *node)=0 |
After export you can find out which name had been used for writing the geometry for this node. More... | |
void | SetParamNamesUV (const core::stringc &u, const core::stringc &v) |
Change param name used for UV's. More... | |
Public Member Functions inherited from irr::scene::IMeshWriter | |
virtual | ~IMeshWriter () |
Destructor. More... | |
virtual EMESH_WRITER_TYPE | getType () const =0 |
Get the type of the mesh writer. More... | |
virtual bool | writeMesh (io::IWriteFile *file, scene::IMesh *mesh, s32 flags=EMWF_NONE)=0 |
Write a static mesh. More... | |
Public Member Functions inherited from irr::IReferenceCounted | |
IReferenceCounted () | |
Constructor. More... | |
virtual | ~IReferenceCounted () |
Destructor. More... | |
void | grab () const |
Grabs the object. Increments the reference counter by one. More... | |
bool | drop () const |
Drops the object. Decrements the reference counter by one. More... | |
s32 | getReferenceCount () const |
Get the reference count. More... | |
const c8 * | getDebugName () const |
Returns the debug name of the object. More... | |
Protected Member Functions | |
virtual void | setDefaultProperties (IColladaMeshWriterProperties *p) |
virtual void | setDefaultNameGenerator (IColladaMeshWriterNames *p) |
Protected Member Functions inherited from irr::IReferenceCounted | |
void | setDebugName (const c8 *newName) |
Sets the debug name of the object. More... | |
Protected Attributes | |
irr::core::stringc | ParamNamesUV [2] |
Interface for writing meshes.
Definition at line 202 of file IColladaMeshWriter.h.
|
inline |
Definition at line 206 of file IColladaMeshWriter.h.
|
inlinevirtual |
Destructor.
Definition at line 218 of file IColladaMeshWriter.h.
|
pure virtual |
After export you can find out which name had been used for writing the geometry for this node.
The name comes from IColladaMeshWriterNames::nameForMesh, but you can't access the node there.
|
inlinevirtual |
Return ambient light of the scene which is written.
Definition at line 270 of file IColladaMeshWriter.h.
|
inline |
Return the original default name generator of the writer.
You can use this pointer in your own generator to access and return default values.
Definition at line 381 of file IColladaMeshWriter.h.
|
inline |
Return the original default properties of the writer.
You can use this pointer in your own properties to access and return default values.
Definition at line 356 of file IColladaMeshWriter.h.
|
inlinevirtual |
Definition at line 329 of file IColladaMeshWriter.h.
|
inlinevirtual |
Get the current style of geometry writing.
Definition at line 311 of file IColladaMeshWriter.h.
|
inlinevirtual |
Get currently used name generator.
Definition at line 374 of file IColladaMeshWriter.h.
|
inlinevirtual |
Get properties which are currently used.
Definition at line 349 of file IColladaMeshWriter.h.
|
inlinevirtual |
Return real world meters to use per unit for all elements and objects.
Definition at line 286 of file IColladaMeshWriter.h.
|
inlinevirtual |
Return name to use for distance units. Like p.E. "meter".
Definition at line 292 of file IColladaMeshWriter.h.
|
inlinevirtual |
Get if a default scene should be written.
Definition at line 258 of file IColladaMeshWriter.h.
|
inlinevirtual |
Get if texture information should be written.
Definition at line 242 of file IColladaMeshWriter.h.
|
inlinevirtual |
Sets ambient color of the scene to write.
Definition at line 264 of file IColladaMeshWriter.h.
|
inlineprotectedvirtual |
Definition at line 424 of file IColladaMeshWriter.h.
|
inlineprotectedvirtual |
Definition at line 412 of file IColladaMeshWriter.h.
|
inlinevirtual |
Make certain there is only one collada material generated per Irrlicht material.
Checks before creating a collada material-name if an identical irr:::video::SMaterial has been exported already. If so don't export it with another name. This is set by default and leads to way smaller .dae files. Note that if you need to disable this flag for some reason you can still get a similar effect using the IColladaMeshWriterNames::nameForMaterial by returning identical names for identical materials there.
Definition at line 324 of file IColladaMeshWriter.h.
|
inlinevirtual |
Control when and how often a mesh is written.
Optimally ECGI_PER_MESH would be always sufficient - writing geometry once per mesh. Unfortunately many tools (at the time of writing this nearly all of them) have trouble on import when different materials are used per node. So when you override materials per node and importing the resulting collada has materials problems in other tools try using other values here.
writeStyle | One of the E_COLLADA_GEOMETRY_WRITING settings. |
Definition at line 305 of file IColladaMeshWriter.h.
|
inlinevirtual |
Install a generator to create custom names on export.
Definition at line 362 of file IColladaMeshWriter.h.
|
inline |
Change param name used for UV's.
Param names for UV's have a name. By default it's "U" and "V". Usually it doesn't matter as names are optional in Collada anyway. But unfortunately some tools insist on specific names. So if "U", "V" does not work then try to export by setting this to "S", "T". One tool which insists on "S", "T" is for example SketchUp.
Definition at line 403 of file IColladaMeshWriter.h.
|
inlinevirtual |
Set properties to use by the meshwriter instead of it's default properties.
Overloading properties with an own class allows modifying the writing process in certain ways. By default properties are set to the DefaultProperties.
Definition at line 337 of file IColladaMeshWriter.h.
|
inlinevirtual |
Set the unit distances for all elements and objects.
meter | Real-world meters to use per unit. Default 1 unit = 1 meter. For 1 unit = 1cm you would set to 0.01 |
name | Name to use for distance unit. Default is "meter". |
Definition at line 279 of file IColladaMeshWriter.h.
|
inlinevirtual |
Set if a default scene should be written when writing meshes.
Many collada readers fail to read a mesh if the collada files doesn't contain a scene as well. The scene is doing an instantiation of the mesh. When using writeScene this flag is ignored (as we have scene there already)
Definition at line 252 of file IColladaMeshWriter.h.
|
inlinevirtual |
Set if texture information should be written.
Definition at line 236 of file IColladaMeshWriter.h.
|
pure virtual |
Restrict the characters of oldString a set of allowed characters in xs:NCName and add the prefix.
A tool function to help when using a custom name generator to generative valid names for collada names and id's.
|
pure virtual |
writes a scene starting with the given node
|
protected |
Definition at line 436 of file IColladaMeshWriter.h.