CK_LOAD_ASCHARACTER=1<<2,/**< Load all the objects and create a character that contains them all . */
CK_LOAD_DODIALOG=1<<3,/**< Check object name unicity and warns the user with a dialog box when duplicate names are found. */
CK_LOAD_AS_DYNAMIC_OBJECT=1<<4,/**< Objects loaded from this file may be deleted at run-time or are temporary */
CK_LOAD_AUTOMATICMODE=1<<5,/**< Check object name unicity and automatically rename or replace according to the options specified in CKContext::SetAutomaticLoadMode */
CK_LOAD_CHECKDUPLICATES=1<<6,/**< Check object name unicity (The list of duplicates is stored in the CKFile class after a OpenFile call */
CK_LOAD_CHECKDEPENDENCIES=1<<7,/**< Check if every plugins needed are availables */
CK_LOAD_ONLYBEHAVIORS=1<<8,/**< */
};
/**
Optionsthatwillbeusedtocreatethisobject...
*/
enumclassCK_FO_OPTIONS:uint32_t{
CK_FO_DEFAULT=0,/**< Default behavior : a new object will be created with the name stored in CKFileObject */
CK_FO_RENAMEOBJECT,/**< Renaming : a new object will be created with the name stored in CKFileObject + a integer value XXX to ensure its uniqueness */
CK_FO_REPLACEOBJECT,/**< Do not create a new object, instead use an existing one which CK_ID is given by CreatedObject to load the chunk on */
CK_FO_DONTLOADOBJECT,/**< Object chunk will not be read either because it is a reference or because the loaded object already exist in the current level and the user choose to keep the existing one. */
CK_OBJECT_INTERFACEOBJ=0x00000001,/**< Reserved for Inteface Use */
CK_OBJECT_PRIVATE=0x00000002,/**< The object must not be displayed in interface (Lists,Level view,etc...),nor should it be saved. (CKObject::IsPrivate() */
CK_OBJECT_INTERFACEMARK=0x00000004,
CK_OBJECT_FREEID=0x00000008,/**< ID of this object can be released safely and is free to be reused by future CKobjects. */
CK_OBJECT_TOBEDELETED=0x00000010,/**< This object is being deleted */
CK_OBJECT_NOTTOBESAVED=0x00000020,/**< This object must not be saved */
CK_OBJECT_VISIBLE=0x00000040,/**< This object is visible (CKObject::Show) */
CK_OBJECT_NAMESHARED=0x00000080,/**< This object has its name from another entity */
CK_OBJECT_DYNAMIC=0x00000108,/**< This object may be created or deleted at run-time, it also contails CK_OBJECT_FREEID. (CKObject::IsDynamic,CKContext::CreateObject) */
CK_OBJECT_HIERACHICALHIDE=0x00000200,/**< This object hides all its hierarchy (CKObject::Show) */
CK_OBJECT_NOTTOBEDELETED=0x00002000,/**< This object must not be deleted in a clear all */
CK_OBJECT_APPDATA=0x00004000,/**< This object has app data */
CK_OBJECT_SINGLEACTIVITY=0x00008000,/**< this object has an information of single activity */
CK_OBJECT_LOADSKIPBEOBJECT=0x00010000,/**< When loading this object the CKBeObject part should be skipped */
CK_OBJECT_NOTTOBELISTEDANDSAVED=0x00000023,/**< Combination of Private and Not To Be Saved The following flags are specific to parameters (they are stored here for object's size purposes ) */
CK_PARAMETEROUT_SETTINGS=0x00400000,
CK_PARAMETEROUT_PARAMOP=0x00800000,/**< This parameter is the output of a CKParameterOperation (Automatically set by Engine) */
CK_PARAMETERIN_DISABLED=0x01000000,/**< Parameter In or Out is disabled (CKBehavior::EnableInputParameter,CKBehavior::DisableInputParameter) */
CK_PARAMETERIN_THIS=0x02000000,/**< Special parameter type : its value and type are always equal to its owner (CKParameter::SetAsMyselfParameter) */
CK_PARAMETERIN_SHARED=0x04000000,
CK_PARAMETEROUT_DELETEAFTERUSE=0x08000000,/**< When adding parameters to CKMessage, they can be automatically deleted when message is released (CKMessage::AddParameter) */
CK_OBJECT_PARAMMASK=0x0FC00000,/**< Mask for options specific to parameters The Following flags are specific for Behavior ios (CKBehaviorIO) */
CK_BEHAVIORIO_IN=0x10000000,/**< This BehaviorIO is a behavior input (CKBehaviorIO::SetType} */
CK_BEHAVIORIO_OUT=0x20000000,/**< This BehaviorIO is a behavior output (CKBehaviorIO::SetType) */
CK_BEHAVIORIO_ACTIVE=0x40000000,/**< This BehaviorIO is a currently active (CKBehaviorIO::Activate} */
CK_OBJECT_IOTYPEMASK=0x30000000,
CK_OBJECT_IOMASK=0xF0000000,/**< The Following flags are specific for Behavior ios (CKBehaviorIO) */
CKBEHAVIORLINK_RESERVED=0x10000000,/**< This BehaviorIO is a behavior input (CKBehaviorIO::SetType} */
CKBEHAVIORLINK_ACTIVATEDLASTFRAME=0x20000000,/**< This link had been activated last frame */
CK_3DENTITY_DUMMY=0x00000001,/**< Entity is a dummy used to represent a position */
CK_3DENTITY_FRAME=0x00000002,/**< Entity is a frame used to represent an orientation */
CK_3DENTITY_RESERVED0=0x00000020,/**< Obsolete Flag */
CK_3DENTITY_TARGETLIGHT=0x00000100,/**< Entity is a target of a light */
CK_3DENTITY_TARGETCAMERA=0x00000200,/**< Entity is a target of a camera */
CK_3DENTITY_IGNOREANIMATION=0x00000400,/**< Animation using this entity can't modify it */
CK_3DENTITY_HIERARCHICALOBSTACLE=0x00000800,/**< Used by the Collision Manager */
CK_3DENTITY_UPDATELASTFRAME=0x00001000,/**< Store the last world matrix for this Entity after each render */
CK_3DENTITY_CAMERAIGNOREASPECT=0x00002000,/**< Ignore aspect ratio setting for cameras */
CK_3DENTITY_DISABLESKINPROCESS=0x00004000,/**< Force skin processing to be disabled */
CK_3DENTITY_ENABLESKINOFFSET=0x00008000,/**< If not set the skin stay attached to the bones the vertices are linked to, otherwise the skin can be freely rotated,translated or scaled according to its owner entity matrix. */
CK_3DENTITY_PLACEVALID=0x00010000,/**< Used internally when saving */
CK_3DENTITY_PARENTVALID=0x00020000,/**< Used internally when saving */
CK_3DENTITY_IKJOINTVALID=0x00040000,/**< Special flag for Bodyparts : IK Joint data is valid */
CK_3DENTITY_PORTAL=0x00080000,/**< The 3dEntity is a portal */
CK_3DENTITY_ZORDERVALID=0x00100000,/**< The 3dEntity has a non-zero ZOrder */
CK_3DENTITY_CHARACTERDOPROCESS=0x80000000,/**< Special flag for Characters : Automatic process of animation */
VX_MOVEABLE_PICKABLE=0x00000001,/**< (User)If not set this entity cannot be returned by CKRenderContext::Pick() or CKRenderContext::RectPict() functions. */
VX_MOVEABLE_VISIBLE=0x00000002,/**< (Engine) See CKObject::Show,CK3dEntity::IsVisible */
VX_MOVEABLE_UPTODATE=0x00000004,/**< (Engine) Used to Notify change in the data of the entity. */
VX_MOVEABLE_RENDERCHANNELS=0x00000008,/**< (User) If not set, additional material channels on the mesh used by this entity won't be rendered (CK3dEntity::SetRenderChannels) */
VX_MOVEABLE_USERBOX=0x00000010,/**< (Engine) When CK3dEntity::SetBoundingBox is called with a user box, this flag is set. */
VX_MOVEABLE_EXTENTSUPTODATE=0x00000020,/**< (Engine) Indicate that object 2D extents are up to date */
VX_MOVEABLE_BOXVALID=0x00004000,/**< (Engine) If not set the moveable has no mesh associated so its bounding box is irrelevant (a point). */
VX_MOVEABLE_RENDERLAST=0x00010000,/**< (User) If set the moveable will be rendered with the transparent objects (i.e in last) (CK3dEntity::SetRenderAsTransparent) */
VX_MOVEABLE_HASMOVED=0x00020000,/**< (Engine) Set when its position or orientation has changed. (Reset every frame when rendering starts) */
VX_MOVEABLE_WORLDALIGNED=0x00040000,/**< (User) Hint for render engine : this object is aligned with world position and orientation. */
VX_MOVEABLE_NOZBUFFERWRITE=0x00080000,/**< (User) Set by the user to warn Render Engine that this object must not write information to Z buffer */
VX_MOVEABLE_RENDERFIRST=0x00100000,/**< (User) If set the moveable will be rendered within the firsts objects */
VX_MOVEABLE_NOZBUFFERTEST=0x00200000,/**< (User) Set by the user to warn Render Engine that this object must not test against Z buffer (This override settings of all materials used by this Entity) */
VX_MOVEABLE_INVERSEWORLDMATVALID=0x00400000,/**< (Engine) Inverse world matrix is not up to date and should be recomputed */
VX_MOVEABLE_DONTUPDATEFROMPARENT=0x00800000,/**< (User) This object will not be updated by parent (neither World nor Local matrix wil be updated) . This flags can be used by physic engine for example in which hierarchy is not relevant for physicalised objects */
VX_MOVEABLE_INDIRECTMATRIX=0x01000000,/**< (User/Engine) Set by the engine at load time : The object matrix is in left hand referential, culling needs to be inverted */
VX_MOVEABLE_ZBUFONLY=0x02000000,/**< (User) The object will only be rendered in depth buffer */
VX_MOVEABLE_STENCILONLY=0x04000000,/**< (User) The object will only be rendered in stencil buffer */
VX_MOVEABLE_HIERARCHICALHIDE=0x10000000,/**< (Engine) If Object has this flags and is hidden its children won't be rendered */
VX_MOVEABLE_CHARACTERRENDERED=0x20000000,/**< (Engine) Set if a character was rendered last frame... */
VXMESH_BOUNDINGUPTODATE=0x00000001,/**< If set the bounding box is up to date (internal). */
VXMESH_VISIBLE=0x00000002,/**< If not set the mesh will not be rendered (CKMesh::Show) */
VXMESH_OPTIMIZED=0x00000004,/**< Set by the render engine if the mesh is optimized for rendering. Unset it to force to recreate optimized structures (when changing materials or face organization ) (CKMesh::VertexMove) */
VXMESH_RENDERCHANNELS=0x00000008,/**< If not set Additional material channels won't be rendered. */
VXMESH_HASTRANSPARENCY=0x00000010,/**< If set indicates that one or more of the faces of this mesh use a transparent material (internal) */
VXMESH_PRELITMODE=0x00000080,/**< If set, no lightning should occur for this mesh, vertex color should be used instead (CKMesh::SetLitMode) */
VXMESH_WRAPU=0x00000100,/**< Texture coordinates wrapping among u texture coordinates. (CKMesh::SetWrapMode) */
VXMESH_WRAPV=0x00000200,/**< Texture coordinates wrapping among v texture coordinates. (CKMesh::SetWrapMode) */
VXMESH_FORCETRANSPARENCY=0x00001000,/**< Forces this mesh to be considered as transparent even if no material is tranparent. (CKMesh::SetTransparent) */
VXMESH_TRANSPARENCYUPTODATE=0x00002000,/**< If set, the flags VXMESH_HASTRANSPARENCY is up to date. (internal) */
VXMESH_UV_CHANGED=0x00004000,/**< Must be set if texture coordinates changed to enable the render engine to reconstruct potential display lists or vertex buffers. (CKMesh::UVChanged) */
VXMESH_NORMAL_CHANGED=0x00008000,/**< Must be set if normal coordinates changed to enable the render engine to reconstruct potential display lists or vertex buffers. (CKMesh::NormalChanged) */
VXMESH_COLOR_CHANGED=0x00010000,/**< Must be set if colors changed to enable the render engine to reconstruct potential display lists or vertex buffers. (CKMesh::ColorChanged) */
VXMESH_POS_CHANGED=0x00020000,/**< Must be set if vertex position changed to enable the render engine to reconstruct potential display lists or vertex buffers. (CKMesh::VertexMove) */
VXMESH_HINTDYNAMIC=0x00040000,/**< Hint for render engine : Mesh geometry is updated frequently */
VXMESH_GENNORMALS=0x00080000,/**< Hint : Normals were generated by BuildNormals : Do not save (internal) */
VXMESH_PROCEDURALUV=0x00100000,/**< Hint : UVs are generated : Do not save (internal) */
VXMESH_PROCEDURALPOS=0x00200000,/**< Hint : Vertices postions are generated : Do not save (internal) */
VXMESH_STRIPIFY=0x00400000,/**< If set the mesh will be stripified. */
VXMESH_MONOMATERIAL=0x00800000,/**< Set by the render engine if the mesh use only one material. */
VXMESH_PM_BUILDNORM=0x01000000,/**< Build normals when performing progressive meshing : Do not save (internal) */
VXMESH_BWEIGHTS_CHANGED=0x02000000,/**< Must be set if vertex blend weights have changed to enable the render engine to reconstruct potential display lists or vertex buffers. (CKMesh::VertexMove) */
CKTEXTURE_RAWDATA=0,/**< Save raw data inside file. The bitmap is saved in a raw 32 bit per pixel format. */
CKTEXTURE_EXTERNAL=1,/**< Store only the file name for the texture. The bitmap file must be present in the bitmap paths when loading the composition. */
CKTEXTURE_IMAGEFORMAT=2,/**< Save using format specified. The bitmap data will be converted to the specified format by the correspondant bitmap plugin and saved inside file. */
CKTEXTURE_USEGLOBAL=3,/**< Use Global settings, that is the settings given with CKContext::SetGlobalImagesSaveOptions. (Not valid when using CKContext::SetImagesSaveOptions). */
CKTEXTURE_INCLUDEORIGINALFILE=4,/**< Insert original image file inside CMO file. The bitmap file that was used originally for the texture or sprite will be append to the composition file and extracted when the file is loaded. */
CKSOUND_EXTERNAL=0,/**< Store only the file name for the sound. The sound file must be present in one of the sound paths when the composition is loaded. */
CKSOUND_INCLUDEORIGINALFILE=1,/**< Insert original sound file inside the CMO file. The sound file that was used originally will be append to the composition file and extracted when the file is loaded. */
CKSOUND_USEGLOBAL=2,/**< Use Global settings. This flag is only valid for the CKSound::SetSaveOptions method. */