FBX SDK uses UTF-8 strings internally. UTF-8 (8-bit UCS/Unicode Transformation Format) is a variable-length character encoding for Unicode. It is able to represent any character in the Unicode standard, yet is backwards compatible with ASCII. For a good introduction to UTF-8, see Wikipedia (wikipedia.com).
FBX will convert its UTF-8 strings to the required string format when calling a function in an operating system’s API. For example when calling a Windows API function requiring a Unicode wide char *, FBX calls a MACRO of KString to make the conversion.
So, if your application uses non-ASCII char, you must convert your strings to UTF-8 char * C-strings before passing them to FBX. KString.h has six macros that you can use:
Macro |
---|
KFBX_UTF8_to_WIDECHAR |
KFBX_WIDECHAR_to_UTF8 |
KFBX_WIDECHAR_to_ANSI |
KFBX_ANSI_to_WIDECHAR |
KFBX_ANSI_to_UTF8 |
KFBX_UTF8_to_ANSI |