This reference page is linked to from the following overview topics: FBX SDK 2014, List of Python Fbx classes.
#include <fbxcache.h>
This object contains methods for accessing point animation in a cache file.
The FBX SDK supports two point cache file formats :
Accessing cache data using these formats differs significantly. To address this difference, two sets of methods have been created. Use the GetCacheFileFormat() function to determine which set of methods to use.
ExportScene03/main.cxx, ViewScene/DrawScene.cxx, and ViewScene/SceneContext.cxx.
Definition at line 37 of file fbxcache.h.
Public Member Functions |
|
|
eMaxPointCacheV2 Format Specific
Functions.
|
|
| bool | OpenFileForWrite (double pFrameStartOffset, double pSamplingFrameRate, unsigned int pSampleCount, unsigned int pPointCount, FbxStatus *pStatus=NULL) |
| Open a cache file for writing. |
|
| unsigned int | GetSampleCount (FbxStatus *pStatus=NULL) |
| Get the number of frames of animation found
in the point cache file. |
|
| unsigned int | GetPointCount (FbxStatus *pStatus=NULL) |
| Get the number of points animated in the
cache file. |
|
| double | GetFrameStartOffset (FbxStatus *pStatus=NULL) |
| Get the start time of the animation.
|
|
| bool | Read (unsigned int pFrameIndex, double *pBuffer, unsigned int pPointCount, FbxStatus *pStatus=NULL) |
| Read a sample at a given frame index.
|
|
| bool | Write (unsigned int pFrameIndex, double *pBuffer, FbxStatus *pStatus=NULL) |
| Write a sample at a given frame index.
|
|
|
File conversion Functions.
|
|
| bool | ConvertFromPC2ToMC (EMCFileCount pFileCount, double pSamplingFrameRate, EMCBinaryFormat pBinaryFormat, FbxStatus *pStatus=NULL) |
| Create an MC cache file from an PC2 cache
file. |
|
| bool | ConvertFromMCToPC2 (double pSamplingFrameRate, unsigned int pChannelIndex, FbxStatus *pStatus=NULL) |
| Create a PC2 cache file from an MC cache
file. |
|
Format Independent Functions. |
|
| enum | EFileFormat { eUnknownFileFormat, eMaxPointCacheV2, eMayaCache } |
| Supported cache file formats. More... |
|
| void | SetCacheFileFormat (EFileFormat pFileFormat, FbxStatus *pStatus=NULL) |
| Set the cache file format. |
|
| EFileFormat | GetCacheFileFormat () const |
| Get the cache file format. |
|
| void | SetCacheFileName (const char *pRelativeFileName_UTF8, const char *pAbsoluteFileName_UTF8, FbxStatus *pStatus=NULL) |
| Set the cache file name. |
|
| void | GetCacheFileName (FbxString &pRelativeFileName_UTF8, FbxString &pAbsoluteFileName_UTF8) const |
| Get the cache file name. |
|
| bool | OpenFileForRead (FbxStatus *pStatus=NULL) |
| Open the cache file for reading. |
|
| bool | IsOpen (FbxStatus *pStatus=NULL) const |
| Get the open state of the cache file.
|
|
| bool | CloseFile (FbxStatus *pStatus=NULL) |
| Close the cache file. |
|
| double | GetSamplingFrameRate (FbxStatus *pStatus=NULL) |
| Get the sampling frame rate of the cache
file. |
|
| FbxTime | GetCacheTimePerFrame (FbxStatus *pStatus=NULL) |
| Get the sampling frame rate of the cache
file, as a FbxTime object. |
|
eMayaCache Format Specific Functions. |
|
| enum | EMCFileCount { eMCOneFile, eMCOneFilePerFrame } |
| Number of files used to store the animation.
More... |
|
| enum | EMCDataType
{ eUnknownData, eDouble, eDoubleArray, eDoubleVectorArray, eInt32Array, eFloatArray, eFloatVectorArray } |
| Data types in the MC cache file. More... |
|
| enum | EMCBinaryFormat { eMCC, eMCX } |
| Binary cache format. More... |
|
| enum | EMCSamplingType { eSamplingRegular, eSamplingIrregular } |
| Cache channel sampling types. More... |
|
| bool | OpenFileForWrite (EMCFileCount pFileCount, double pSamplingFrameRate, const char *pChannelName, EMCBinaryFormat pBinaryFormat, EMCDataType pMCDataType=eDoubleVectorArray, const char *pInterpretation="Points", FbxStatus *pStatus=NULL) |
| Open a cache file for writing. |
|
| bool | AddChannel (const char *pChannelName, EMCDataType pMCDataType, const char *pInterpretation, unsigned int &pChannelIndex, FbxStatus *pStatus=NULL) |
| Creates a new channel in the cache. |
|
| int | GetChannelCount (FbxStatus *pStatus=NULL) |
| Get the number of channels in the cache
file. |
|
| bool | GetChannelName (int pChannelIndex, FbxString &pChannelName, FbxStatus *pStatus=NULL) |
| Get the channel name for a specific channel
index. |
|
| bool | GetChannelDataType (int pChannelIndex, EMCDataType &pChannelType, FbxStatus *pStatus=NULL) |
| Get the data type of the specified channel.
|
|
| int | GetChannelIndex (const char *pChannelName, FbxStatus *pStatus=NULL) |
| Get the index of the specified channel.
|
|
| bool | Read (int pChannelIndex, FbxTime &pTime, double *pBuffer, unsigned int pPointCount, FbxStatus *pStatus=NULL) |
| Read a sample at a given time. |
|
| bool | Read (int pChannelIndex, FbxTime &pTime, float *pBuffer, unsigned int pPointCount, FbxStatus *pStatus=NULL) |
| Read a sample at a given time. |
|
| bool | Read (int pChannelIndex, FbxTime &pTime, int *pBuffer, unsigned int pPointCount, FbxStatus *pStatus=NULL) |
| Read a sample at a given time. |
|
| bool | BeginWriteAt (FbxTime &pTime, FbxStatus *pStatus=NULL) |
| Instruct the cache system that data is about
to be written to it. |
|
| bool | Write (int pChannelIndex, FbxTime &pTime, double *pBuffer, unsigned int pPointCount, FbxStatus *pStatus=NULL) |
| Write a sample at a given time. |
|
| bool | Write (int pChannelIndex, FbxTime &pTime, float *pBuffer, unsigned int pPointCount, FbxStatus *pStatus=NULL) |
| Write a sample at a given time. |
|
| bool | Write (int pChannelIndex, FbxTime &pTime, int *pBuffer, unsigned int pPointCount, FbxStatus *pStatus=NULL) |
| Write a sample at a given time. |
|
| bool | EndWriteAt (FbxStatus *pStatus=NULL) |
| Instruct the cache system that all the data
on all the channels has been written to it for the given time
(specified by the
BeginWriteAt() call). |
|
| bool | GetAnimationRange (int pChannelIndex, FbxTime &pTimeStart, FbxTime &pTimeEnd, FbxStatus *pStatus=NULL) |
| Get the Animation Range of the specified
channel. |
|
| bool | GetCacheType (EMCFileCount &pFileCount, FbxStatus *pStatus=NULL) |
| Get the cache type. |
|
| bool | GetChannelInterpretation (int pChannelIndex, FbxString &pInterpretation, FbxStatus *pStatus=NULL) |
| Get the cache channel interpretation.
|
|
| bool | GetChannelSamplingType (int pChannelIndex, EMCSamplingType &pSamplingType, FbxStatus *pStatus=NULL) |
| Get the cache channel sampling type.
|
|
| bool | GetChannelSamplingRate (int pChannelIndex, FbxTime &pSamplingRate, FbxStatus *pStatus=NULL) |
| Get the cache channel sampling rate, in
frames per second. |
|
| bool | GetChannelSampleCount (int pChannelIndex, unsigned int &pSampleCount, FbxStatus *pStatus=NULL) |
| Get the number of data points for a channel.
|
|
| bool | GetChannelPointCount (int pChannelIndex, FbxTime pTime, unsigned int &pPointCount, FbxStatus *pStatus=NULL) |
| Get the number of points animated in the
cache file, for a channel, for a given time. |
|
| int | GetCacheDataFileCount (FbxStatus *pStatus=NULL) const |
| Returns the number of cache data files.
|
|
| bool | GetCacheDataFileName (int pIndex, FbxString &pRelativeFileName, FbxString &pAbsoluteFileName, FbxStatus *pStatus=NULL) |
| Get the nth cache file name. |
|
| bool | EnableMultiChannelFetching (bool pMultiChannelFetching, FbxStatus *pStatus=NULL) |
| Enable multi-channel fetching. |
|
| bool | GetNextTimeWithData (FbxTime pCurTime, FbxTime &pNextTime, int pChannelIndex=-1, FbxStatus *pStatus=NULL) |
| Get the next time where data is stored.
|
|
| int | GetDataCount (int pChannelIndex, FbxStatus *pStatus=NULL) |
| Get the number of data points the channel
contains. |
|
| bool | GetDataTime (int pChannelIndex, unsigned int pDataIndex, FbxTime &pTime, FbxStatus *pStatus=NULL) |
| Get the time of the specified data point.
|
|
| enum EFileFormat |
Supported cache file formats.
| eUnknownFileFormat |
Unknown cache file format. |
| eMaxPointCacheV2 |
3ds Max Point Cache 2 file format. |
| eMayaCache |
Maya Cache file format. |
Definition at line 49 of file fbxcache.h.
| enum EMCFileCount |
Number of files used to store the animation.
| eMCOneFile |
One file is used for all the frames of animation. |
| eMCOneFilePerFrame |
For every frame of animation, a cache file is used. The number of the frames is the number of the cache files. |
Definition at line 119 of file fbxcache.h.
{
eMCOneFile,
eMCOneFilePerFrame
};
| enum EMCDataType |
Data types in the MC cache file.
Definition at line 127 of file fbxcache.h.
| enum EMCBinaryFormat |
Binary cache format.
| eMCC |
MCC cache file format, 32bit (older format) |
| eMCX |
MCX cache file format, 64bit (newer format) |
Definition at line 139 of file fbxcache.h.
| enum EMCSamplingType |
Cache channel sampling types.
Definition at line 322 of file fbxcache.h.
| void SetCacheFileFormat | ( | EFileFormat | pFileFormat, |
| FbxStatus * | pStatus =
NULL |
||
| ) |
Set the cache file format.
| pFileFormat | Valid values are eMaxPointCacheV2 or eMayaCache. |
| pStatus | The FbxStatus object to hold error codes. |
| EFileFormat GetCacheFileFormat | ( | ) | const |
Get the cache file format.
| void SetCacheFileName | ( | const char * | pRelativeFileName_UTF8, |
| const char * | pAbsoluteFileName_UTF8, | ||
| FbxStatus * | pStatus =
NULL |
||
| ) |
Set the cache file name.
| pRelativeFileName_UTF8 | The point cache file, relative to the FBX file name. |
| pAbsoluteFileName_UTF8 | The point cache file absolute path. |
| pStatus | The FbxStatus object to hold error codes. |
| void GetCacheFileName | ( | FbxString & | pRelativeFileName_UTF8, |
| FbxString & | pAbsoluteFileName_UTF8 | ||
| ) | const |
Get the cache file name.
| pRelativeFileName_UTF8 | Return the point cache file name, relative to the FBX File name. |
| pAbsoluteFileName_UTF8 | Return the point cache file absolute path. |
| bool OpenFileForRead | ( | FbxStatus * | pStatus = NULL |
) |
Open the cache file for reading.
| pStatus | The FbxStatus object to hold error codes. |
true if the file is successfully opened,
false otherwise.| bool IsOpen | ( | FbxStatus * | pStatus = NULL |
) | const |
Get the open state of the cache file.
| pStatus | The FbxStatus object to hold error codes. |
true if the cache file is currently open,
false otherwise.| bool CloseFile | ( | FbxStatus * | pStatus = NULL |
) |
Close the cache file.
| pStatus | The FbxStatus object to hold error codes. |
true if the cache file is closed successfully,
false otherwise.| double GetSamplingFrameRate | ( | FbxStatus * | pStatus = NULL |
) |
Get the sampling frame rate of the cache file.
| pStatus | The FbxStatus object to hold error codes. |
| bool OpenFileForWrite | ( | EMCFileCount | pFileCount, |
| double | pSamplingFrameRate, | ||
| const char * | pChannelName, | ||
| EMCBinaryFormat | pBinaryFormat, | ||
| EMCDataType | pMCDataType =
eDoubleVectorArray, |
||
| const char * | pInterpretation =
"Points", |
||
| FbxStatus * | pStatus =
NULL |
||
| ) |
Open a cache file for writing.
| pFileCount | Create one file for each frame of animation, or one file for all the frames. |
| pSamplingFrameRate | Number of frames per second. |
| pChannelName | The name of the channel of animation to create. |
| pBinaryFormat | Binary format type (32 bit=eMCC or 64bit=eMCX) |
| pMCDataType | The data type of the MC cache file. |
| pInterpretation | A piece of meta data to help users of the cache understand how to interpret the data. |
| pStatus | The FbxStatus object to hold error codes. |
| bool AddChannel | ( | const char * | pChannelName, |
| EMCDataType | pMCDataType, | ||
| const char * | pInterpretation, | ||
| unsigned int & | pChannelIndex, | ||
| FbxStatus * | pStatus =
NULL |
||
| ) |
Creates a new channel in the cache.
| pChannelName | The name of the channel of animation to create. |
| pMCDataType | The MC DataType of the cache. |
| pInterpretation | A piece of meta data to help users of the cache understand how to interpret the data. |
| pChannelIndex | The index of the new animation channel. |
| pStatus | The FbxStatus object to hold error codes. |
| int GetChannelCount | ( | FbxStatus * | pStatus = NULL |
) |
Get the number of channels in the cache file.
| pStatus | The FbxStatus object to hold error codes. |
Get the channel name for a specific channel index.
| pChannelIndex | The index of the animation channel, between 0 and GetChannelCount(). |
| pChannelName | Returns the name of the requested channel. |
| pStatus | The FbxStatus object to hold error codes. |
true if successful, false otherwise.
functions for error details.| bool GetChannelDataType | ( | int | pChannelIndex, |
| EMCDataType & | pChannelType, | ||
| FbxStatus * | pStatus =
NULL |
||
| ) |
Get the data type of the specified channel.
| pChannelIndex | The index of the channel. |
| pChannelType | The channel's data type. |
| pStatus | The FbxStatus object to hold error codes. |
true if successful, false otherwise.
functions for error details.| int GetChannelIndex | ( | const char * | pChannelName, |
| FbxStatus * | pStatus =
NULL |
||
| ) |
Get the index of the specified channel.
| pChannelName | The name of the channel. |
| pStatus | The FbxStatus object to hold error codes. |
| bool Read | ( | int | pChannelIndex, |
| FbxTime & | pTime, | ||
| double * | pBuffer, | ||
| unsigned int | pPointCount, | ||
| FbxStatus * | pStatus =
NULL |
||
| ) |
Read a sample at a given time.
| pChannelIndex | The index of the animation channel, between 0 and GetChannelCount(). |
| pTime | Time at which the point animation must be evaluated. |
| pBuffer | The place where the point value will be copied. If the channel's data type is DoubleVectorArray this buffer must be of size 3*pPointCount. |
| pPointCount | The number of points to read from the point cache file. |
| pStatus | The FbxStatus object to hold error codes. |
true if successful, false
otherwise.| bool Read | ( | int | pChannelIndex, |
| FbxTime & | pTime, | ||
| float * | pBuffer, | ||
| unsigned int | pPointCount, | ||
| FbxStatus * | pStatus =
NULL |
||
| ) |
Read a sample at a given time.
| pChannelIndex | The index of the animation channel, between 0 and GetChannelCount(). |
| pTime | Time at which the point animation must be evaluated. |
| pBuffer | The place where the point value will be copied. If the channel's data type is FloatVectorArray this buffer must be of size 3*pPointCount. |
| pPointCount | The number of points to read from the point cache file. |
| pStatus | The FbxStatus object to hold error codes. |
true if successful, false
otherwise.| bool Read | ( | int | pChannelIndex, |
| FbxTime & | pTime, | ||
| int * | pBuffer, | ||
| unsigned int | pPointCount, | ||
| FbxStatus * | pStatus =
NULL |
||
| ) |
Read a sample at a given time.
| pChannelIndex | The index of the animation channel, between 0 and GetChannelCount(). |
| pTime | Time at which the point animation must be evaluated. |
| pBuffer | The place where the point value will be copied. This buffer must be of size pPointCount. |
| pPointCount | The number of points to read from the point cache file. |
| pStatus | The FbxStatus object to hold error codes. |
true if successful, false
otherwise.Instruct the cache system that data is about to be written to it.
This call must appear before any calls to the Write() methods on any channel and terminated by a call to EndWriteAt().
| pTime | Time at which the point animation must be inserted. |
| pStatus | The FbxStatus object to hold error codes. |
true if successful, false
otherwise.| bool Write | ( | int | pChannelIndex, |
| FbxTime & | pTime, | ||
| double * | pBuffer, | ||
| unsigned int | pPointCount, | ||
| FbxStatus * | pStatus =
NULL |
||
| ) |
Write a sample at a given time.
| pChannelIndex | The index of the animation channel, between 0 and GetChannelCount(). |
| pTime | Time at which the point animation must be inserted. |
| pBuffer | Point to the values to be copied. If the channel's data type is DoubleVectorArray this buffer must be of size 3*pPointCount. |
| pPointCount | The number of points to write in the point cache file. |
| pStatus | The FbxStatus object to hold error codes. |
true if successful, false
otherwise.| bool Write | ( | int | pChannelIndex, |
| FbxTime & | pTime, | ||
| float * | pBuffer, | ||
| unsigned int | pPointCount, | ||
| FbxStatus * | pStatus =
NULL |
||
| ) |
Write a sample at a given time.
| pChannelIndex | The index of the animation channel, between 0 and GetChannelCount(). |
| pTime | Time at which the point animation must be inserted. |
| pBuffer | Point to the values to be copied. If the channel's data type is FloatVectorArray this buffer must be of size 3*pPointCount. |
| pPointCount | The number of points to write in the point cache file. |
| pStatus | The FbxStatus object to hold error codes. |
true if successful, false
otherwise.| bool Write | ( | int | pChannelIndex, |
| FbxTime & | pTime, | ||
| int * | pBuffer, | ||
| unsigned int | pPointCount, | ||
| FbxStatus * | pStatus =
NULL |
||
| ) |
Write a sample at a given time.
| pChannelIndex | The index of the animation channel, between 0 and GetChannelCount(). |
| pTime | Time at which the point animation must be inserted. |
| pBuffer | Point to the values to be copied. This buffer must be of size pPointCount. |
| pPointCount | The number of points to write in the point cache file. |
| pStatus | The FbxStatus object to hold error codes. |
true if successful, false
otherwise.| bool EndWriteAt | ( | FbxStatus * | pStatus = NULL |
) |
Instruct the cache system that all the data on all the channels has been written to it for the given time (specified by the BeginWriteAt() call).
The call to this method must be made after all the Write() for every channel defined.
| pStatus | The FbxStatus object to hold error codes. |
true if successful, false
otherwise.| bool GetAnimationRange | ( | int | pChannelIndex, |
| FbxTime & | pTimeStart, | ||
| FbxTime & | pTimeEnd, | ||
| FbxStatus * | pStatus =
NULL |
||
| ) |
Get the Animation Range of the specified channel.
| pChannelIndex | The index of the channel. |
| pTimeStart | The start time of the channel's animation. |
| pTimeEnd | The end time of the channel's animation. |
| pStatus | The FbxStatus object to hold error codes. |
true if successful, false
otherwise.| bool GetCacheType | ( | EMCFileCount & | pFileCount, |
| FbxStatus * | pStatus =
NULL |
||
| ) |
Get the cache type.
| pFileCount | The cache type. |
| pStatus | The FbxStatus object to hold error codes. |
true if successful, false
otherwise.| bool GetChannelInterpretation | ( | int | pChannelIndex, |
| FbxString & | pInterpretation, | ||
| FbxStatus * | pStatus =
NULL |
||
| ) |
Get the cache channel interpretation.
| pChannelIndex | The index of the animation channel, between 0 and GetChannelCount(). |
| pInterpretation | The channel interpretation, user-defined. |
| pStatus | The FbxStatus object to hold error codes. |
true if successful, false
otherwise.| bool GetChannelSamplingType | ( | int | pChannelIndex, |
| EMCSamplingType & | pSamplingType, | ||
| FbxStatus * | pStatus =
NULL |
||
| ) |
Get the cache channel sampling type.
| pChannelIndex | The index of the animation channel, between 0 and GetChannelCount(). |
| pSamplingType | The sampling type of the channel. |
| pStatus | The FbxStatus object to hold error codes. |
true if successful, false
otherwise.| bool GetChannelSamplingRate | ( | int | pChannelIndex, |
| FbxTime & | pSamplingRate, | ||
| FbxStatus * | pStatus =
NULL |
||
| ) |
Get the cache channel sampling rate, in frames per second.
| pChannelIndex | The index of the animation channel, between 0 and GetChannelCount(). |
| pSamplingRate | The sampling rate of the channel. The channel must have a regular sampling type. |
| pStatus | The FbxStatus object to hold error codes. |
true if successful, false
otherwise.| bool GetChannelSampleCount | ( | int | pChannelIndex, |
| unsigned int & | pSampleCount, | ||
| FbxStatus * | pStatus =
NULL |
||
| ) |
Get the number of data points for a channel.
| pChannelIndex | The index of the animation channel, between 0 and GetChannelCount(). |
| pSampleCount | Number of available samples. |
| pStatus | The FbxStatus object to hold error codes. |
true if successful, false
otherwise.| bool GetChannelPointCount | ( | int | pChannelIndex, |
| FbxTime | pTime, | ||
| unsigned int & | pPointCount, | ||
| FbxStatus * | pStatus =
NULL |
||
| ) |
Get the number of points animated in the cache file, for a channel, for a given time.
| pChannelIndex | The index of the animation channel, between 0 and GetChannelCount(). |
| pTime | Reference time; must be within the boundaries of the animation. |
| pPointCount | Number of available points. |
| pStatus | The FbxStatus object to hold error codes. |
true if successful, false
otherwise.| int GetCacheDataFileCount | ( | FbxStatus * | pStatus = NULL |
) | const |
Returns the number of cache data files.
| pStatus | The FbxStatus object to hold error codes. |
| bool GetCacheDataFileName | ( | int | pIndex, |
| FbxString & | pRelativeFileName, | ||
| FbxString & | pAbsoluteFileName, | ||
| FbxStatus * | pStatus =
NULL |
||
| ) |
Get the nth cache file name.
| pIndex | Index of the cache file to return; index is zero-based, and must be less than GetCacheDataFileCount(). |
| pRelativeFileName | Return the point cache file name, relative to the FBX File name. |
| pAbsoluteFileName | Return the point cache file absolute path. |
| pStatus | The FbxStatus object to hold error codes. |
true if successful, false otherwise.
See the error management functions for error details.| bool EnableMultiChannelFetching | ( | bool | pMultiChannelFetching, |
| FbxStatus * | pStatus =
NULL |
||
| ) |
Enable multi-channel fetching.
| pMultiChannelFetching | Enable/disable multi-channel fetching. When multi-channel is enabled, any load of data on a channel at a specific time will pre-fetch data from all channels, for that specific time. This can reduce disk access, and increase performance (but requires more memory). |
| pStatus | The FbxStatus object to hold error codes. |
true if successful, false
otherwise.| bool GetNextTimeWithData | ( | FbxTime | pCurTime, |
| FbxTime & | pNextTime, | ||
| int | pChannelIndex =
-1, |
||
| FbxStatus * | pStatus =
NULL |
||
| ) |
Get the next time where data is stored.
| pCurTime | Current time; must be within the boundaries of the animation time. |
| pNextTime | Next time (filled if the function is successful). |
| pChannelIndex | The index of the animation channel, between 0 and GetChannelCount(). If pChannel is left at -1, get the next time for any channel. |
| pStatus | The FbxStatus object to hold error codes. |
true if successful, false
otherwise.| int GetDataCount | ( | int | pChannelIndex, |
| FbxStatus * | pStatus =
NULL |
||
| ) |
Get the number of data points the channel contains.
| pChannelIndex | The index of the animation channel, between 0 and GetChannelCount(). |
| pStatus | The FbxStatus object to hold error codes. |
| bool GetDataTime | ( | int | pChannelIndex, |
| unsigned int | pDataIndex, | ||
| FbxTime & | pTime, | ||
| FbxStatus * | pStatus =
NULL |
||
| ) |
Get the time of the specified data point.
| pChannelIndex | The index of the animation channel, between 0 and GetChannelCount(). |
| pDataIndex | Index of the data point. |
| pTime | Time of the data point (filled if the function is successful). |
| pStatus | The FbxStatus object to hold error codes. |
true if successful, false
otherwise.| bool OpenFileForWrite | ( | double | pFrameStartOffset, |
| double | pSamplingFrameRate, | ||
| unsigned int | pSampleCount, | ||
| unsigned int | pPointCount, | ||
| FbxStatus * | pStatus =
NULL |
||
| ) |
Open a cache file for writing.
| pFrameStartOffset | Start time of the animation, in frames. |
| pSamplingFrameRate | Number of frames per second. |
| pSampleCount | The number of samples to write to the file. |
| pPointCount | The number of points to write in the point cache file. |
| pStatus | The FbxStatus object to hold error codes. |
true if successful, false otherwise.
See the error management functions for error details.| unsigned int GetSampleCount | ( | FbxStatus * | pStatus = NULL |
) |
Get the number of frames of animation found in the point cache file.
| pStatus | The FbxStatus object to hold error codes. |
| unsigned int GetPointCount | ( | FbxStatus * | pStatus = NULL |
) |
Get the number of points animated in the cache file.
| pStatus | The FbxStatus object to hold error codes. |
| double GetFrameStartOffset | ( | FbxStatus * | pStatus = NULL |
) |
Get the start time of the animation.
| pStatus | The FbxStatus object to hold error codes. |
| bool Read | ( | unsigned int | pFrameIndex, |
| double * | pBuffer, | ||
| unsigned int | pPointCount, | ||
| FbxStatus * | pStatus =
NULL |
||
| ) |
Read a sample at a given frame index.
| pFrameIndex | The index of the animation frame, between 0 and GetSampleCount(). |
| pBuffer | The place where the point value will be copied. This buffer must be of size 3*pPointCount. |
| pPointCount | The number of points to read from the point cache file. |
| pStatus | The FbxStatus object to hold error codes. |
true if successful, false
otherwise.| bool Write | ( | unsigned int | pFrameIndex, |
| double * | pBuffer, | ||
| FbxStatus * | pStatus =
NULL |
||
| ) |
Write a sample at a given frame index.
| pFrameIndex | The index of the animation frame. |
| pBuffer | Point to the values to be copied. This buffer must be of size 3*pPointCount, as passed to the function OpenFileForWrite(). |
| pStatus | The FbxStatus object to hold error codes. |
true if successful, false
otherwise.| bool ConvertFromPC2ToMC | ( | EMCFileCount | pFileCount, |
| double | pSamplingFrameRate, | ||
| EMCBinaryFormat | pBinaryFormat, | ||
| FbxStatus * | pStatus =
NULL |
||
| ) |
Create an MC cache file from an PC2 cache file.
| pFileCount | Create one file for each frame of animation, or one file for all the frames. |
| pSamplingFrameRate | Number of frames per second used to re-sample the point animation. |
| pBinaryFormat | Binary format type (32 bit=eMCC or 64bit=eMCX) |
| pStatus | The FbxStatus object to hold error codes. |
true if successful, false
otherwise.| bool ConvertFromMCToPC2 | ( | double | pSamplingFrameRate, |
| unsigned int | pChannelIndex, | ||
| FbxStatus * | pStatus =
NULL |
||
| ) |
Create a PC2 cache file from an MC cache file.
| pSamplingFrameRate | Number of frames per second to re-sample the point animation. |
| pChannelIndex | Index of the channel of animation to read from. |
| pStatus | The FbxStatus object to hold error codes. |
true if successful, false
otherwise.