13 #ifndef _FBXSDK_FILEIO_FBX_WRITER_FBX5_H_
14 #define _FBXSDK_FILEIO_FBX_WRITER_FBX5_H_
53 bool WriteAnimation(
FbxScene& pScene);
55 void WriteTakeNode(KFCurveNode* pCurveNode,
bool pRescaleShininess);
56 bool WriteTakeNode(
FbxObject& pObj,
FbxAnimLayer* pAnimLayer,
const char* pBlockName,
bool pRescaleShininess =
false);
61 bool WriteExtensionSection(
FbxScene& pScene,
int pMediaCount);
65 bool WriteCameraSwitcher(
FbxScene& pScene);
68 void WriteGoboSection(
FbxScene& pScene);
71 void WriteCharacter(
FbxScene& pScene);
72 void WriteCharacter(
FbxScene& pScene,
int pCharacterIndex);
73 void WriteCharacterLinkGroup(
FbxCharacter& pCharacter,
int pCharacterGroupId,
FbxScene& pScene,
bool pBackwardCompatible);
74 void WriteCharacterLink(
FbxCharacter& pCharacter,
int pCharacterNodeId,
FbxScene& pScene,
bool pBackwardCompatible);
77 void WriteControlSetLinkGroup(
FbxControlSet& pControlSet,
int pCharacterGroupId,
FbxScene& pScene,
bool pBackwardCompatible);
82 int WriteCharacterPose(
FbxScene& pScene);
88 void WriteConstraint(
FbxScene& pScene);
90 void WriteGlobalLightSettings(
FbxScene& pScene);
91 void WriteShadowPlane(
FbxScene& pScene);
92 void WriteShadowPlaneSection(
FbxScene& pScene);
93 void WriteAmbientColor(
FbxScene& pScene);
94 void WriteFogOption(
FbxScene& pScene);
96 void WriteGlobalCameraAndTimeSettings(
FbxScene& pScene);
98 bool WriteMedia(
FbxScene& pScene,
bool pMediaEmbedded,
int& pMediaCount);
99 bool WriteMediaClip(
FbxString& pFileName,
bool pEmbeddedMedia);
100 void WriteDefaultMedia();
102 bool WriteNode (
FbxNode& pNode);
103 bool WriteNodeBegin (
FbxNode& pNode);
104 bool WriteNodeParameters (
FbxNode& pNode);
105 bool WriteNodeVersion (
FbxNode& pNode);
106 bool WriteNodeShading (
FbxNode& pNode);
107 bool WriteNodeAnimationSettings (
FbxNode& pNode);
108 bool WriteNodeCullingType (
FbxNode& pNode);
109 bool WriteNodeLimits (
FbxNode& pNode);
110 bool WriteNodeProperties (
FbxNode& pNode);
111 bool WriteNodeTarget (
FbxNode& pNode);
112 bool WriteNodeAnimatedProperties(
FbxNode& pNode);
113 bool WriteNodeAttribute (
FbxNode& pNode);
114 bool WriteNodeDefaultAttributes (
FbxNode& pNode);
115 bool WriteNodeChildrenList (
FbxNode& pNode);
116 bool WriteNodeEnd (
FbxNode& pNode);
118 bool WriteNull (
FbxNull* pNull );
120 bool WriteMarker (
FbxNode& pNode );
122 bool WriteCamera (
FbxCamera& pCamera,
bool pIsProducerCamera =
false );
126 bool WriteLight (
FbxLight& pLight );
129 bool WriteGeometryLayer (
FbxGeometry& pGeometry );
130 bool WriteGeometryTextureLayer (
FbxGeometry& pGeometry,
int pIndex );
132 bool WriteMesh (
FbxMesh& pMesh );
133 bool WriteMeshVertices (
FbxMesh& pMesh );
134 bool WriteMeshNormals (
FbxMesh& pMesh );
135 bool WriteMeshMaterial (
FbxMesh& pMesh );
136 bool WriteMeshTexture (
FbxMesh& pMesh );
137 bool WriteMeshGeometryUVInfo (
FbxMesh& pMesh );
138 bool WriteMeshPolyVertexIndex (
FbxMesh& pMesh );
139 bool WriteMeshPolyGroupIndex (
FbxMesh& pMesh );
140 bool WriteMeshVertexColors (
FbxMesh& pMesh );
142 bool WriteNurb (
FbxNurbs& pNurbs );
144 bool WritePatch (
FbxPatch& pPatch );
145 bool WritePatchType (
FbxPatch& pPatch,
int pType );
150 bool WriteSkeletonLimbNode (
FbxSkeleton& pSkeleton );
151 bool WriteSkeletonEffector (
FbxSkeleton& pSkeleton );
160 bool WriteProperties(
FbxObject* pObject);
165 void ConvertShapeNamesToV5Format(
FbxNode& pNode);
166 void RevertShapeNamesToV6Format (
FbxNode& pNode);
168 void WritePassword();
170 void FindAnimatedChannels(
FbxScene& pScene);
171 void ClearAnimatedChannels();
173 void WriteSceneGenericPersistenceSection(
FbxScene& pScene);
175 void ForceKFCurveNodesOnTRS(
FbxNode* pNode);
176 void SetPivotStateRecursive(
FbxNode* pNode);
189 struct TextureAnimatedChannels
197 struct SurfaceMaterialAnimatedChannels
The animation layer is a collection of animation curve nodes.
This class describes image mapping on top of geometry.
bool PreprocessScene(FbxScene &pScene) override
Pre-processes the scene.
A gobo is a filter placed over a spot light to project light patterns through fog on a surface...
FbxWriterFbx5(FbxManager &pManager, FbxExporter &pExporter, int pID, FbxStatus &pStatus)
Abstract class for implementing I/O operations through a stream of data.
This class contains material settings.
Utility class to manipulate strings.
FbxDocument is a base class for FbxScene and FbxLibrary classes.
This node attribute contains the properties of an optical reference.
bool FileCreate(char *pFileName) override
Creates a new file.
Class for clusters (links).
This node attribute contains methods for accessing the properties of a camera switcher.
This class facilitates the testing/reporting of errors.
This class contains scene thumbnails and user-defined summary data.
A character pose is a character and an associated hierarchy of nodes.
The base class of most FBX objects.
Represents an element in the scene graph.
Class to export SDK objects into an FBX file.
A patch is a type of node attribute with parametric surface.
This node attribute contains methods for accessing the properties of a light.
This class contains the description of a 3D scene.
This class contains the description of a Pose and provide some methods to access Pose info in one FBX...
bool FileClose() override
Closes the file.
Base class of other writers used internally.
bool PostprocessScene(FbxScene &pScene) override
Post-processes the scene.
A shape describes the deformation on a set of control points, which is similar to the cluster deforme...
bool SupportsStreams() const override
Returns true if this writer supports FbxStream I/O.
void SetExportMode(EExportMode pMode)
FbxIO represents an FBX file.
void GetWriteOptions() override
Setup write options.
This node attribute contains methods for accessing the properties of a camera.
bool Write(FbxDocument *pDocument) override
Writes content to the specified file with given stream options.
A NURBS surface is a type of parametric geometry.
This node attribute contains the properties of a null node.
This class contains all methods to either set-up an exported control rig or query information on an i...
This class specializes a node attribute to represent the elements forming "bone" chains.
A Character is a person or animal with pre-defined skeleton system.
The base class of geometric objects that support control point deformations (e.g. ...
bool IsFileOpen() override
Test if the file is open.
Class to manipulate a map that can contain multiple times the same key.
Simple class to hold RGBA values of a thumbnail image.
A mesh is a geometry made of polygons.