11 #include <Atoms/Globals.h>
13 #define ATOMS_PELVIS_HEIGHT "atoms_pelvisHeight"
14 #define ATOMS_FOOT_HEIGHT "atoms_footHeight"
15 #define ATOMS_FOOT_IK_HEIGHT "atoms_footIkHeight"
16 #define ATOMS_FOOT_ON_GROUND "atoms_footOnGround"
17 #define ATOMS_FOOT_IK "atoms_footIK"
18 #define ATOMS_FOOT_ROOT "atoms_footRoot"
19 #define ATOMS_POLE_VECTOR "atoms_poleVector"
20 #define ATOMS_SKIP_IK "atoms_skipIk"
21 #define ATOMS_IK_SOLVER "atoms_ikSolver"
22 #define ATOMS_IK_SOFT_DISTANCE "atoms_ikSoftDistance"
23 #define ATOMS_IK_MAX_ITERATIONS "atoms_ikMaxIterations"
24 #define ATOMS_IK_TOLLERANCE "atoms_ikTollerance"
25 #define ATOMS_LEG_LENGTH "atoms_legLength"
26 #define ATOMS_FRAMES_TO_FOOT_DOWN "atoms_frameToFootDown"
27 #define ATOMS_PELVIS_VELOCITY "atoms_pelvisVelocity"
28 #define ATOMS_PELVIS_LOCAL_VELOCITY "atoms_pelvisLocalVelocity"
29 #define ATOMS_PELVIS_FRAME_ROTATION "atoms_pelvisFrameRotation"
30 #define ATOMS_BIND_POSE_TRANSLATE "atoms_bindPoseTranslate"
31 #define ATOMS_BIND_POSE_ROTATE "atoms_bindPoseRotate"
32 #define ATOMS_BIND_POSE_ROTATE_OFFSET "atoms_bindPoseRotateOffset"
33 #define ATOMS_BIND_POSE_SCALE "atoms_bindPoseScale"
34 #define ATOMS_ORIG_BIND_POSE_TRANSLATE "atoms_origBindPoseTranslate"
35 #define ATOMS_ORIG_BIND_POSE_ROTATE "atoms_origBindPoseRotate"
36 #define ATOMS_ORIG_BIND_POSE_ROTATE_OFFSET "atoms_origBindPoseRotateOffset"
37 #define ATOMS_ORIG_BIND_POSE_SCALE "atoms_origBindPoseScale"
38 #define ATOMS_GROUND_NORMAL "atoms_groundNormal"
39 #define ATOMS_JOINT_CONTROL_MAPPING "jointControlMapping"
40 #define ATOMS_JOINT_CONTROL_MAPPING_NAME "jointControlMappingName"
41 #define ATOMS_JOINT_CONTROL_MAPPING_MATRIX "jointControlMappingMatrix"
42 #define ATOMS_JOINT_LIMIT_ROTATION_MIN "jointLimitRotationMin"
43 #define ATOMS_JOINT_LIMIT_ROTATION_MAX "jointLimitRotationMax"
44 #define ATOMS_JOINT_GLOBAL_IK "jointGlobalIK"
45 #define ATOMS_JOINT_PERCHING_FACTOR "jointPerchingFactor"
46 #define ATOMS_JOINT_SITTING_FACTOR "jointSittingFactor"
47 #define ATOMS_JOINT_SITTING_DOWN_PELVIS_DELTA_VECTOR "jointSittingDownPelvisDeltaVector"
48 #define ATOMS_JOINT_SITTING_UP_PELVIS_DELTA_VECTOR "jointSittingUpPelvisDeltaVector"
49 #define ATOMS_JOINT_LANDING_PELVIS_HEIGHT "jointLandingPelvisHeight"
50 #define ATOMS_PROP_LOCAL_TRANSLATE "atoms_propLocalTranslate"
51 #define ATOMS_PROP_LOCAL_ROTATE "atoms_propLocalRotate"
52 #define ATOMS_PROP_LOCAL_SCALE "atoms_propLocalScale"
53 #define ATOMS_FOOT_LOCK_STATUS "atoms_footLockStatus"
54 #define ATOMS_SEGMENT_SCALE_COMPENSATE "segmentScaleCompensate"
55 #define ATOMS_USE_CLIP_DIRECTION "useClipDirection"
56 #define ATOMS_ROOT_START_OFFSET "__rootStartOffset"
58 #define ATOMS_CLIP_LOOP "atomsLoop"
59 #define ATOMS_CLIP_LOOP_NUM_BLEND_FRAMES "atomsNumBlendFrames"
60 #define ATOMS_CLIP_LOOP_START "atomsLoopStart"
61 #define ATOMS_CLIP_LOOP_END "atomsLoopEnd"
62 #define ATOMS_CLIP_BLEND_FRAMES_AFTER_FOOT_UP "atomsBlendFramesAfterFootUp"
63 #define ATOMS_CLIP_AGENT_TYPE "agentType"
64 #define ATOMS_CLIP_DIRECTION "clipDirection"
65 #define ATOMS_CLIP_FORCE_TRANSITION "forceClipTransition"
66 #define ATOMS_CLIP_MAX_TURN_ANGLE "maxTurnAngle"
67 #define ATOMS_CLIP_OFFSET "clipOffset"
69 #define ATOMS_AGENT_STATE "state"
70 #define ATOMS_AGENT_CURRENT_STATE "currentState"
71 #define ATOMS_AGENT_DYNAMIC "dynamic"
72 #define ATOMS_AGENT_DYNAMIC_MODE "dynamicMode"
73 #define ATOMS_AGENT_UP "up"
74 #define ATOMS_AGENT_POSITION "position"
75 #define ATOMS_AGENT_LAYOUT_POSITION "layoutPosition"
76 #define ATOMS_AGENT_LAYOUT_NAME "layoutName"
77 #define ATOMS_AGENT_DIRECTION "direction"
78 #define ATOMS_AGENT_PREVIOUS_DIRECTION "prevDirection"
79 #define ATOMS_AGENT_SCALE "scale"
80 #define ATOMS_AGENT_ROTATION "rotation"
81 #define ATOMS_AGENT_GROUPID "groupId"
82 #define ATOMS_AGENT_PRECACHE_GROUPID "preCacheGroupId"
83 #define ATOMS_AGENT_ID "id"
84 #define ATOMS_AGENT_LOCAL_DIRECTION "localDirection"
85 #define ATOMS_AGENT_GROUPNAME "groupName"
86 #define ATOMS_AGENT_SELECTED "selected"
87 #define ATOMS_AGENT_TYPE "agentType"
88 #define ATOMS_AGENT_FRAMERATE "frameRate"
89 #define ATOMS_AGENT_ANIMFRAMERATE "animFrameRate"
90 #define ATOMS_AGENT_TURN_ANGLE "turnAngle"
91 #define ATOMS_AGENT_VELOCITY "velocity"
92 #define ATOMS_AGENT_LOCOMOTION_ACTIVE "locomotionActive"
93 #define ATOMS_AGENT_TARGET_LINEAR_VELOCITY "targetLinearVelocity"
94 #define ATOMS_AGENT_TARGET_ANGULAR_VELOCITY "targetAngularVelocity"
95 #define ATOMS_AGENT_ANIMATED_HF "animatedHf"
96 #define ATOMS_AGENT_GRAVITY "gravity"
97 #define ATOMS_AGENT_LOD "lod"
98 #define ATOMS_AGENT_CACHE_ID "cacheId"
99 #define ATOMS_AGENT_AGENT_TYPE "agentType"
100 #define ATOMS_AGENT_VARIATION "variation"
101 #define ATOMS_AGENT_BIRTH "birth"
102 #define ATOMS_AGENT_RETARGETING_FACTOR "retargetingFactor"
103 #define ATOMS_AGENT_COLLECTOR_DIRECTIONS "collectorDirections"
104 #define ATOMS_AGENT_ACTIVE_DIRECTIONAL_MODULE "activeDirectionalModule"
105 #define ATOMS_AGENT_CLOTH_SETUP_OVERRIDE "clothSetupOverride"
106 #define ATOMS_AGENT_COLOR "color"
107 #define ATOMS_AGENT_COLOR_VARIATION "colorVariation"
108 #define ATOMS_AGENT_DISABLE_IK "disableIk"
109 #define ATOMS_AGENT_DISABLE_FOOTLOCK "disableFootLock"
110 #define ATOMS_AGENT_SIM_LOD "simLod"
111 #define ATOMS_AGENT_SYNC_LEVEL "syncLevel"
112 #define ATOMS_AGENT_SYNC_PARENT_AGENT_GROUP "syncParentAgentGroup"
113 #define ATOMS_AGENT_SYNC_AGENT_GROUP "syncAgentGroup"
114 #define ATOMS_AGENT_SYNC_PARENT_JOINT "syncParentJoint"
115 #define ATOMS_AGENT_SYNC_JOINT "syncJoint"
116 #define ATOMS_AGENT_SYNC_AGENT_ID "syncAgentId"
117 #define ATOMS_AGENT_SYNC_OFFSET "syncOffset"
118 #define ATOMS_AGENT_MAX_LEG_STRETCH "maxLegStretch"
119 #define ATOMS_AGENT_ACTIVE "active"
120 #define ATOMS_AGENT_VISIBLE "visible"
121 #define ATOMS_AGENT_ON_GROUND "onGround"
122 #define ATOMS_AGENT_PARTICLE_PELVIS_TRANSITION "inParticlePelvisTransition"
123 #define ATOMS_AGENT_TRANSITION_BLEND_IN_FRAMES "transitionBlendInFrames"
124 #define ATOMS_AGENT_TRANSITION_BLEND_OUT_FRAMES "transitionBlendOutFrames"
125 #define ATOMS_AGENT_LOCOMOTION "locomotion"
126 #define ATOMS_AGENT_LOCK_DIRECTION "lockDirection"
127 #define ATOMS_AGENT_ANIM_STATE "animState"
128 #define ATOMS_AGENT_FOOT_DOWN_TRESHOLD "footDownThreshold"
129 #define ATOMS_AGENT_VELOCITY_OVERRIDE "velocityOverride"
130 #define ATOMS_AGENT_USE_VELOCITY_OVERRIDE "useVelocityOverride"
132 #define ATOMS_AGENT_TYPE_SCALE_MULTIPLIER "scaleMultiplier"
133 #define ATOMS_AGENT_TYPE_SIT_HEIGHT_OFFSET "sitHeightOffset"
134 #define ATOMS_AGENT_TYPE_STATE_MACHINE "stateMachine"
135 #define ATOMS_AGENT_TYPE_SKIN_GEO "skinGeo"
136 #define ATOMS_AGENT_TYPE_LOW_GEO "lowGeo"
137 #define ATOMS_AGENT_TYPE_RAGDOLL "ragdoll"
138 #define ATOMS_AGENT_TYPE_BOUNDING_BOX "boundingBox"
139 #define ATOMS_AGENT_TYPE_SKELETON_CONFIG_MAP "skelConfigMap"
140 #define ATOMS_AGENT_TYPE_SKELETON_CONFIG_MAP_JOINT_MAP "skelConfigMapJointMap"
141 #define ATOMS_AGENT_TYPE_SKELETON_CONFIG_MAP_USER_FACTOR "skelConfigMapUserFactor"
142 #define ATOMS_AGENT_TYPE_SKELETON_CONFIG_MAP_RETARGET_METHOD "skelConfigMapRetargetMethod"
143 #define ATOMS_AGENT_TYPE_LOD_LEVELS "lodLevels"
144 #define ATOMS_AGENT_TYPE_LOD_DISTANCES "lodDistances"
145 #define ATOMS_AGENT_TYPE_LOD_MODE "lodMode"
146 #define ATOMS_AGENT_TYPE_CHARACTER "character"
147 #define ATOMS_AGENT_TYPE_RADIUS "radius"
148 #define ATOMS_AGENT_TYPE_ASSET_PATH "assetPath"
150 #define ATOMS_VARIATION_VERSION L"version"
151 #define ATOMS_VARIATION_AGENT_TYPES L"agentTypes"
152 #define ATOMS_VARIATION_GEOMETRIES L"geometries"
153 #define ATOMS_VARIATION_MATERIALS L"materials"
154 #define ATOMS_VARIATION_GEOMETRY_GROUPS L"geometryGroups"
155 #define ATOMS_VARIATION_GEOMETRY_GROUPS_COMBINATIONS L"combinations"
156 #define ATOMS_VARIATION_GEOMETRY_GROUPS_LODS L"lods"
157 #define ATOMS_VARIATION_GEOMETRY_PATH L"geometry"
158 #define ATOMS_VARIATION_GEOMETRY_FILTER L"filter"
159 #define ATOMS_VARIATION_MATERIAL_PATH L"material"
160 #define ATOMS_VARIATION_DIFFUSE_SLOTS L"diffuseSlots"
161 #define ATOMS_VARIATION_DIFFUSE_SLOT_SIZE L"diffuseSlotSize"
162 #define ATOMS_VARIATION_DIFFUSE_COLOR_RED L"diffuseColorRed"
163 #define ATOMS_VARIATION_DIFFUSE_COLOR_GREEN L"diffuseColorGreen"
164 #define ATOMS_VARIATION_DIFFUSE_COLOR_BLUE L"diffuseColorBlue"
165 #define ATOMS_VARIATION_DIFFUSE_PATH L"diffuse"
166 #define ATOMS_VARIATION_NORMAL_PATH L"normal"
167 #define ATOMS_VARIATION_SPECULAR_PATH L"specular"
168 #define ATOMS_VARIATION_SPECULAR_COLOR_RED L"specularColorRed"
169 #define ATOMS_VARIATION_SPECULAR_COLOR_GREEN L"specularColorGreen"
170 #define ATOMS_VARIATION_SPECULAR_COLOR_BLUE L"specularColorBlue"
171 #define ATOMS_VARIATION_SPECULAR_ROLLOFF L"specularRollOff"
172 #define ATOMS_VARIATION_SPECULAR_ECCENTRICITY L"specularEccentricity"
173 #define ATOMS_VARIATION_SPECULAR_WEIGHT L"specularWeight"
174 #define ATOMS_VARIATION_DIFFUSE_WEIGHT L"diffuseWeight"
175 #define ATOMS_VARIATION_CLOTH_SETUP_PATH L"clothSetupPath"
176 #define ATOMS_VARIATION_LOOK_FILE_PATH L"lookFilePath"
178 #define ATOMS_CLOTH_HIDE_MESH "clothHideMesh"
179 #define ATOMS_PREVIEW_MESH "previewMesh"
180 #define ATOMS_RENDER_ONLY_MESH "renderOnlyMesh"
181 #define ATOMS_CLOTH_VERTEX_POSITION "vertexPosition"
182 #define ATOMS_CLOTH_VERTEX_NORMAL "vertexNormal"
183 #define ATOMS_CLOTH_BOUNDING_BOX "boundingBox"
184 #define ATOMS_CLOTH_STACK_ORDER "stackOrder"
186 #define ATOMS_BEHAVIOUR_MODULE_PROPERTIES "_MODULE_"
187 #define ATOMS_BEHAVIOUR_MODULE_DISPLAY_ORDER "moduleDisplayOrder"
188 #define ATOMS_BEHAVIOUR_MODULE_DISPLAY_GROUP_ORDER "moduleDisplayGroupOrder"
189 #define ATOMS_BEHAVIOUR_MODULE_EXCLUDED_METADATAS_AUTOMATIC_BUILD "moduleExcludedMetadatasAutomaticBuild"
190 #define ATOMS_BEHAVIOUR_MODULE_ATTRIBUTE_GROUPS "attributeGroups"
191 #define ATOMS_BEHAVIOUR_OVERRIDE_DEPENDENCY "overrideDependency"
192 #define ATOMS_BEHAVIOUR_ENABLE_STATUS_DEPENDENCY "enableStatusDependency"
193 #define ATOMS_BEHAVIOUR_VISIBLE_STATUS_DEPENDENCY "visibleStatusDependency"
194 #define ATOMS_BEHAVIOUR_MESH_PARENT_MATRIX_DEPENDENCY "meshParentMatrixDependency"
195 #define ATOMS_BEHAVIOUR_MESH_TRANSLATION_DEPENDENCY "meshTranslationDependency"
196 #define ATOMS_BEHAVIOUR_MESH_SCALE_DEPENDENCY "meshScaleDependency"
197 #define ATOMS_BEHAVIOUR_MESH_ROTATION_DEPENDENCY "meshRotationDependency"
198 #define ATOMS_BEHAVIOUR_TOOLTIP "tooltip"
199 #define ATOMS_BEHAVIOUR_KEYABLE "keyable"
200 #define ATOMS_BEHAVIOUR_NICE_NAME "niceName"
201 #define ATOMS_BEHAVIOUR_OPTION_LIST "optionList"
202 #define ATOMS_BEHAVIOUR_VALUE "value"
203 #define ATOMS_BEHAVIOUR_MIN_VALUE "minValue"
204 #define ATOMS_BEHAVIOUR_MAX_VALUE "maxValue"
205 #define ATOMS_BEHAVIOUR_FILE_EXTENSION "fileExtension"
206 #define ATOMS_BEHAVIOUR_FLOATING_NUM_DECIMALS "floatingNumDecimals"
207 #define ATOMS_BEHAVIOUR_FLOATING_SINGLE_STEP "floatingSingleStep"
208 #define ATOMS_BEHAVIOUR_HARD_CONSTRUCTOR "hardConstructor"
209 #define ATOMS_BEHAVIOUR_HARD_CONSTRUCTOR_METADATANAMES "metadataNames"
210 #define ATOMS_BEHAVIOUR_HARD_CONSTRUCTOR_COMBOBOX "comboBox"
211 #define ATOMS_BEHAVIOUR_HARD_CONSTRUCTOR_AREATRIGGER "areaTrigger"
212 #define ATOMS_BEHAVIOUR_HARD_CONSTRUCTOR_HEIGHTFIELD "heightField"
213 #define ATOMS_BEHAVIOUR_HARD_CONSTRUCTOR_FILE "file"
214 #define ATOMS_BEHAVIOUR_HARD_CONSTRUCTOR_FOLDER "folder"
215 #define ATOMS_BEHAVIOUR_HARD_CONSTRUCTOR_INTVECTOR2 "intVector2"
216 #define ATOMS_BEHAVIOUR_HARD_CONSTRUCTOR_INTVECTOR3 "intVector3"
217 #define ATOMS_BEHAVIOUR_HARD_CONSTRUCTOR_INTVECTOR4 "intVector4"
218 #define ATOMS_BEHAVIOUR_HARD_CONSTRUCTOR_DOUBLESPINBOX "doubleSpinBox"
219 #define ATOMS_BEHAVIOUR_HARD_CONSTRUCTOR_AGENT_GROUP "agentGroup"
220 #define ATOMS_BEHAVIOUR_HARD_CONSTRUCTOR_AGENT_GROUPS "agentGroups"
221 #define ATOMS_BEHAVIOUR_HARD_CONSTRUCTOR_AGENT_TYPE "agentType"
222 #define ATOMS_BEHAVIOUR_HARD_CONSTRUCTOR_AGENT_TYPES "agentTypes"
223 #define ATOMS_BEHAVIOUR_HARD_CONSTRUCTOR_LOCOMOTION "locomotion"
224 #define ATOMS_BEHAVIOUR_HARD_CONSTRUCTOR_CLIP "animationClip"
225 #define ATOMS_BEHAVIOUR_HARD_CONSTRUCTOR_CLIPS "animationClips"
226 #define ATOMS_BEHAVIOUR_HARD_CONSTRUCTOR_VARIATION "variation"
227 #define ATOMS_BEHAVIOUR_HARD_CONSTRUCTOR_NAV_MESH "navMesh"
228 #define ATOMS_BEHAVIOUR_HARD_CONSTRUCTOR_MESH "mesh"
229 #define ATOMS_BEHAVIOUR_HARD_CONSTRUCTOR_MESHES "meshes"
230 #define ATOMS_BEHAVIOUR_HARD_CONSTRUCTOR_CURVE "curve"
231 #define ATOMS_BEHAVIOUR_HARD_CONSTRUCTOR_SAMPLED_CURVE "sampledCurve"
232 #define ATOMS_BEHAVIOUR_HARD_CONSTRUCTOR_CURVES "curves"
233 #define ATOMS_BEHAVIOUR_HARD_CONSTRUCTOR_STATE_MACHINE "stateMachine"
234 #define ATOMS_BEHAVIOUR_HARD_CONSTRUCTOR_BEHAVIOUR_TREE "behaviourTree"
235 #define ATOMS_BEHAVIOUR_HARD_CONSTRUCTOR_JOINT_NAME "jointName"
236 #define ATOMS_BEHAVIOUR_HARD_CONSTRUCTOR_BLENDSPACE1D "blendSpace1D"
237 #define ATOMS_BEHAVIOUR_HARD_CONSTRUCTOR_EULER_ROTATION "eulerRotation"
238 #define ATOMS_BEHAVIOUR_TREE_HARD_CONSTRUCTOR_PROBABILITY_WEIGHTS "probabilityWeights"
239 #define ATOMS_BEHAVIOUR_TREE_HARD_CONSTRUCTOR_LOCOMOTION "locomotion"
241 #define ATOMS_BEHAVIOUR_TREE_VERSION L"version"
242 #define ATOMS_BEHAVIOUR_TREE_NODES L"nodes"
243 #define ATOMS_BEHAVIOUR_TREE_DYNAMIC_ATTRIBUTES L"dynamic_attributes"
244 #define ATOMS_BEHAVIOUR_TREE_BLACKBOARD L"blackboard"
245 #define ATOMS_BEHAVIOUR_TREE_BLACKBOARD_FLAGS L"flags"
246 #define ATOMS_BEHAVIOUR_TREE_BLACKBOARD_EXPOSE L"expose"
247 #define ATOMS_BEHAVIOUR_TREE_BLACKBOARD_NAME L"name"
248 #define ATOMS_BEHAVIOUR_TREE_BLACKBOARD_TYPE L"type"
249 #define ATOMS_BEHAVIOUR_TREE_BLACKBOARD_DESCRIPTION L"description"
250 #define ATOMS_BEHAVIOUR_TREE_BLACKBOARD_VALUE L"value"
251 #define ATOMS_BEHAVIOUR_TREE_BLACKBOARD_META L"meta"
252 #define ATOMS_BEHAVIOUR_TREE_NODE_TYPE L"type"
253 #define ATOMS_BEHAVIOUR_TREE_NODE_OUTPUTS L"outputs"
254 #define ATOMS_BEHAVIOUR_TREE_NODE_ATTRIBUTES L"attributes"
255 #define ATOMS_BEHAVIOUR_TREE_NODE_ATTR_TYPE L"type"
256 #define ATOMS_BEHAVIOUR_TREE_NODE_ATTR_VALUE L"value"
257 #define ATOMS_BEHAVIOUR_TREE_NODE_ATTR_PROPERTIES L"properties"
258 #define ATOMS_BEHAVIOUR_TREE_NODE_ATTR_PROPERTIES_ENABLED L"propertiesEnabled"
259 #define ATOMS_BEHAVIOUR_TREE_NODE_NAME L"name"
260 #define ATOMS_BEHAVIOUR_TREE_NODE_POSITION L"position"
261 #define ATOMS_BEHAVIOUR_TREE_BLACKBOARD_KEY L"blackboard_key"
262 #define ATOMS_BEHAVIOUR_TREE_HARD_CONSTRUCTOR "hardConstructor"
263 #define ATOMS_BEHAVIOUR_TREE_HARD_CONSTRUCTOR_PYTHON_SCRIPT "pythonScript"
264 #define ATOMS_BEHAVIOUR_TREE_HARD_CONSTRUCTOR_SEEXPR_SCRIPT "seexprScript"
265 #define ATOMS_BEHAVIOUR_TREE_HARD_CONSTRUCTOR_CHECK_TYPE "checkType"
266 #define ATOMS_BEHAVIOUR_TREE_HARD_CONSTRUCTOR_NAV_MESH "navMesh"
267 #define ATOMS_BEHAVIOUR_TREE_HARD_CONSTRUCTOR_AGENT_TYPE "agentType"
268 #define ATOMS_BEHAVIOUR_TREE_HARD_CONSTRUCTOR_BLACKBOARD_KEY "blackboardKey"
269 #define ATOMS_BEHAVIOUR_TREE_HARD_CONSTRUCTOR_ANIMATION_CLIP "animationClip"
270 #define ATOMS_BEHAVIOUR_TREE_HARD_CONSTRUCTOR_ANIMATION_CLIPS "animationClips"
271 #define ATOMS_BEHAVIOUR_TREE_HARD_CONSTRUCTOR_COMBOBOX "comboBox"
272 #define ATOMS_BEHAVIOUR_TREE_OPTION_LIST "optionList"
273 #define ATOMS_BEHAVIOUR_TREE_HARD_CONSTRUCTOR_AGENT_GROUP "agentGroup"
274 #define ATOMS_BEHAVIOUR_TREE_HARD_CONSTRUCTOR_AGENT_GROUPS "agentGroups"
275 #define ATOMS_BEHAVIOUR_TREE_NODE_DESCRIPTION "description"
276 #define ATOMS_BEHAVIOUR_TREE_PARAMETER_DESCRIPTION "description"
277 #define ATOMS_BEHAVIOUR_TREE_NODE_PARAMETERS "parameters"
279 #define ATOMS_STATE_MACHINE_VERSION "version"
280 #define ATOMS_STATE_MACHINE_DATA "data"
281 #define ATOMS_STATE_MACHINE_CLIP_NAME "clipName"
282 #define ATOMS_STATE_MACHINE_MOTION_TYPE "motionType"
283 #define ATOMS_STATE_MACHINE_MERGE_TYPE "mergeType"
284 #define ATOMS_STATE_MACHINE_ANGLE "angle"
285 #define ATOMS_STATE_MACHINE_BLEND_ANGLE "blendAngle"
286 #define ATOMS_STATE_MACHINE_TAG "tag"
287 #define ATOMS_STATE_MACHINE_SYNC "sync"
288 #define ATOMS_STATE_MACHINE_USE_CLIP_DIRECTION "useClipDirection"
289 #define ATOMS_STATE_MACHINE_MAX_TURN_ANGLE "maxTurnAngle"
290 #define ATOMS_STATE_MACHINE_NODES "nodes"
291 #define ATOMS_STATE_MACHINE_CONNECTIONS "connections"
292 #define ATOMS_STATE_MACHINE_NAME "name"
293 #define ATOMS_STATE_MACHINE_TYPE "type"
294 #define ATOMS_STATE_MACHINE_CLIP "clip"
295 #define ATOMS_STATE_MACHINE_CLIPS "clips"
296 #define ATOMS_STATE_MACHINE_CLIP_BLEND_FRAMES "clips"
297 #define ATOMS_STATE_MACHINE_ID "id"
298 #define ATOMS_STATE_MACHINE_POS "pos"
299 #define ATOMS_STATE_MACHINE_START_NODE "startNode"
300 #define ATOMS_STATE_MACHINE_END_NODE "endNode"
301 #define ATOMS_STATE_MACHINE_TRANSITION_CLIPS "transitionClips"
302 #define ATOMS_STATE_MACHINE_TRANSITION_CLIP "transitionClip"
303 #define ATOMS_STATE_MACHINE_BLEND_IN "blendIn"
304 #define ATOMS_STATE_MACHINE_BLEND_OUT "blendOut"
305 #define ATOMS_STATE_MACHINE_RANDOM_LOOP "randomLoop"
306 #define ATOMS_STATE_MACHINE_LOCOMOTION_NAME "locomotionName"
307 #define ATOMS_STATE_MACHINE_VELOCITY "velocity"
308 #define ATOMS_STATE_MACHINE_MAXIMUM "maximum"
309 #define ATOMS_STATE_MACHINE_MINIMUM "minimum"
310 #define ATOMS_STATE_MACHINE_DECIMALS "decimals"
311 #define ATOMS_STATE_MACHINE_HARD_CONSTRUCTOR "hardConstructor"
312 #define ATOMS_STATE_MACHINE_HARD_CONSTRUCTOR_LOCOMOTION "locomotion"
314 #define ATOMS_LOCOMOTION_VERSION "version"
315 #define ATOMS_LOCOMOTION_DATA "data"
316 #define ATOMS_LOCOMOTION_NODES "nodes"
317 #define ATOMS_LOCOMOTION_BLEND_FRAMES "blendFrames"
318 #define ATOMS_LOCOMOTION_CLIP_COORDS "clipCoords"
319 #define ATOMS_LOCOMOTION_CLIP_NAME "clipName"
320 #define ATOMS_LOCOMOTION_DISABLE_DIRECTION_BLENDING "disableDirectionBlending"
321 #define ATOMS_LOCOMOTION_TRIANGLE_VERTEX_IDS "triangleVertexIds"
322 #define ATOMS_LOCOMOTION_UNSYNCED "Unsynced"
324 #define ATOMS_CLIP_OPERATOR_PROPERTIES "_clipOperator_"
325 #define ATOMS_CLIP_OPERATOR_DISPLAY_ORDER "clipOperatorDisplayOrder"
326 #define ATOMS_CLIP_OPERATOR_HARD_CONSTRUCTOR "hardConstructor"
327 #define ATOMS_CLIP_OPERATOR_HARD_CONSTRUCTOR_COMBOBOX "comboBox"
328 #define ATOMS_CLIP_OPERATOR_OPTION_LIST "optionList"
330 #define ATOMS_ASSETS_REALLUSION "reallusion"
331 #define ATOMS_ASSETS_REALLUSION_T "reallusionT"
332 #define ATOMS_ASSETS_REALLUSION_A "reallusionA"
333 #define ATOMS_ASSETS_REALLUSION_T_GAME "reallusionTGame"
334 #define ATOMS_ASSETS_REALLUSION_A_GAME "reallusionAGame"
335 #define ATOMS_ASSETS_REALLUSION_ROOT1 "CC_Base_BoneRoot"
336 #define ATOMS_ASSETS_REALLUSION_PELVIS1 "CC_Base_Hip"
337 #define ATOMS_ASSETS_REALLUSION_ROOT2 "root"
338 #define ATOMS_ASSETS_REALLUSION_PELVIS2 "pelvis"
340 #define ATOMS_ASSETS_MIXAMO "mixamo"
342 #define ATOMS_DIGITAL_ASSET_AGENT_GROUPS "agentGroups"
343 #define ATOMS_DIGITAL_ASSET_SCENE "scene"
344 #define ATOMS_DIGITAL_ASSET_VERSION "version"
345 #define ATOMS_DIGITAL_ASSET_HOST "host"
346 #define ATOMS_DIGITAL_ASSET_DATA "data"
347 #define ATOMS_DIGITAL_ASSET_MODULES "modules"
348 #define ATOMS_DIGITAL_ASSET_MATRIX "matrix"
349 #define ATOMS_DIGITAL_ASSET_HEIGHTFIELD "heightField"
350 #define ATOMS_DIGITAL_ASSET_HF_NAME "hfName"
351 #define ATOMS_DIGITAL_ASSET_HF_MESH "hfMesh"
352 #define ATOMS_DIGITAL_ASSET_HF_MATRIX "hfMatrix"
353 #define ATOMS_DIGITAL_ASSET_HF_ANIMATED "hfAnimated"
354 #define ATOMS_DIGITAL_ASSET_HF_MODE "hfMode"
355 #define ATOMS_DIGITAL_ASSET_NAVMESH "navMesh"
356 #define ATOMS_DIGITAL_ASSET_NAVMESH_INPUT_MESHES "navMeshInputMeshes"
357 #define ATOMS_DIGITAL_ASSET_NAVMESH_NAME "navMeshName"
358 #define ATOMS_DIGITAL_ASSET_NAVMESH_MESH "navMeshMesh"
359 #define ATOMS_DIGITAL_ASSET_NAVMESH_MESH_NAME "navMeshMeshName"
360 #define ATOMS_DIGITAL_ASSET_NAVMESH_MATRIX "navMeshMatrix"
361 #define ATOMS_DIGITAL_ASSET_ANIM_FRAMES "animFrames"
362 #define ATOMS_DIGITAL_ASSET_HOST_DATA "hostData"
363 #define ATOMS_DIGITAL_ASSET_HOST_DATA_MODULE "__hostDataModule__"
364 #define ATOMS_DIGITAL_ASSET_HOST_DATA_BEHAVIOUR_TREE_ATTR_CONNECTIONS "behaviourTreeAttrConnections"
365 #define ATOMS_DIGITAL_ASSET_HOST_DATA_POINTS_LAyOUT_MAP "pointsLayoutMap"
366 #define ATOMS_DIGITAL_ASSET_HOST_DATA_POINTS_LAYOUT_IDS "id"
367 #define ATOMS_DIGITAL_ASSET_HOST_DATA_POINTS_LAYOUT_POINTS "pos"
368 #define ATOMS_DIGITAL_ASSET_HOST_DATA_POINTS_LAYOUT_DIRECTIONS "dir"
369 #define ATOMS_DIGITAL_ASSET_HOST_DATA_POINTS_LAYOUT_UP_VECTORS "up"
370 #define ATOMS_DIGITAL_ASSET_HOST_DATA_POINTS_LAYOUT_AGENT_TYPES "type"
371 #define ATOMS_DIGITAL_ASSET_HOST_DATA_VALUE "hostDataValue"
372 #define ATOMS_DIGITAL_ASSET_HOST_DATA_MENU_VALUE "hostDataMenuValue"
373 #define ATOMS_DIGITAL_ASSET_HOST_DATA_BAKED "hostDataBaked"
374 #define ATOMS_DIGITAL_ASSET_HOST_DATA_CURVES "hostDataCurves"
375 #define ATOMS_DIGITAL_ASSET_HOST_DATA_CURVES_KEYS "hostDataCurvesKeys"
376 #define ATOMS_DIGITAL_ASSET_HOST_DATA_CURVES_IS_WEIGHTED "hostDataCurvesIsWeighted"
377 #define ATOMS_DIGITAL_ASSET_HOST_DATA_CURVES_PRE_INFINITY "hostDataCurvesPerInfinity"
378 #define ATOMS_DIGITAL_ASSET_HOST_DATA_CURVES_POST_INFINITY "hostDataCurvesPostInfinity"
379 #define ATOMS_DIGITAL_ASSET_PARENT_AGENT_GROUP "parentAgentGroup"
380 #define ATOMS_DIGITAL_ASSET_MODULE_NAME "moduleName"
381 #define ATOMS_DIGITAL_ASSET_MODULE_TYPE "moduleType"
382 #define ATOMS_DIGITAL_ASSET_MODULE_ENABLED "moduleEnabled"
383 #define ATOMS_DIGITAL_ASSET_MODULE_ATTR "moduleAttributes"
384 #define ATOMS_DIGITAL_ASSET_KEY_TIME "keyTime"
385 #define ATOMS_DIGITAL_ASSET_KEY_VALUE "keyValue"
386 #define ATOMS_DIGITAL_ASSET_KEY_IN_ANGLE "inAngle"
387 #define ATOMS_DIGITAL_ASSET_KEY_OUT_ANGLE "outAngle"
388 #define ATOMS_DIGITAL_ASSET_KEY_IN_WEIGHT "inWeight"
389 #define ATOMS_DIGITAL_ASSET_KEY_OUT_WEIGHT "outWeight"
390 #define ATOMS_DIGITAL_ASSET_KEY_IN_TANGENT_TYPE "keyInTangentType"
391 #define ATOMS_DIGITAL_ASSET_KEY_OUT_TANGENT_TYPE "keyOutTangentType"
392 #define ATOMS_DIGITAL_ASSET_KEY_TANGENTS_LOCKED "keyTangentsLocked"
393 #define ATOMS_DIGITAL_ASSET_KEY_WEIGHTS_LOCKED "keyWeightsLocked"
394 #define ATOMS_DIGITAL_ASSET_KEY_EXPRESSION "keyExpression"
395 #define ATOMS_DIGITAL_ASSET_KEY_EXPRESSION_LANGUAGE "keyExpressionLanguage"
396 #define ATOMS_DIGITAL_ASSET_KEY_USE_EXPRESSION "keyUseExpression"
397 #define ATOMS_DIGITAL_ASSET_KEY_EVALUATED_SLOPES "keyEvaluatedSlopes"
398 #define ATOMS_DIGITAL_ASSET_KEY_HALFKEYS "keyHalfKeys"
399 #define ATOMS_DIGITAL_ASSET_KEY_SLOPE "keySlope"
400 #define ATOMS_DIGITAL_ASSET_KEY_ACCEL "keyAccel"
401 #define ATOMS_DIGITAL_ASSET_KEY_NUMVALUES "keyNumValues"
402 #define ATOMS_DIGITAL_ASSET_FPS "fps"
404 #define ATOMS_ADA_CUSTOM_ATTRIBUTES_TX "translateX"
405 #define ATOMS_ADA_CUSTOM_ATTRIBUTES_TY "translateY"
406 #define ATOMS_ADA_CUSTOM_ATTRIBUTES_TZ "translateZ"
407 #define ATOMS_ADA_CUSTOM_ATTRIBUTES_RX "rotateX"
408 #define ATOMS_ADA_CUSTOM_ATTRIBUTES_RY "rotateY"
409 #define ATOMS_ADA_CUSTOM_ATTRIBUTES_RZ "rotateZ"
410 #define ATOMS_ADA_CUSTOM_ATTRIBUTES_SX "scaleX"
411 #define ATOMS_ADA_CUSTOM_ATTRIBUTES_SY "scaleY"
412 #define ATOMS_ADA_CUSTOM_ATTRIBUTES_SZ "scaleZ"
415 inline bool isDefaultAtomsAttrName(
const char* attrName)
417 const char *ALL_ATOMS_ATTRS[] = {
420 ATOMS_FOOT_IK_HEIGHT,
421 ATOMS_FOOT_ON_GROUND,
424 ATOMS_FRAMES_TO_FOOT_DOWN,
425 ATOMS_PELVIS_VELOCITY,
426 ATOMS_PELVIS_LOCAL_VELOCITY,
427 ATOMS_BIND_POSE_TRANSLATE,
428 ATOMS_BIND_POSE_ROTATE,
429 ATOMS_BIND_POSE_ROTATE_OFFSET,
430 ATOMS_BIND_POSE_SCALE,
431 ATOMS_ORIG_BIND_POSE_TRANSLATE,
432 ATOMS_ORIG_BIND_POSE_ROTATE,
433 ATOMS_ORIG_BIND_POSE_ROTATE_OFFSET,
434 ATOMS_ORIG_BIND_POSE_SCALE,
435 ATOMS_PROP_LOCAL_TRANSLATE,
436 ATOMS_PROP_LOCAL_ROTATE,
437 ATOMS_PROP_LOCAL_SCALE,
440 ATOMS_SEGMENT_SCALE_COMPENSATE
442 size_t size =
sizeof(ALL_ATOMS_ATTRS) /
sizeof(ALL_ATOMS_ATTRS[0]);
443 for (
unsigned int i = 0; i < size; ++i)
444 if (!strcmp(ALL_ATOMS_ATTRS[i], attrName))
454 static const std::string ATOMS_PELVIS_HEIGHT_KEY;
455 static const std::string ATOMS_FOOT_HEIGHT_KEY;
456 static const std::string ATOMS_FOOT_IK_HEIGHT_KEY;
457 static const std::string ATOMS_FOOT_ON_GROUND_KEY;
458 static const std::string ATOMS_FOOT_IK_KEY;
459 static const std::string ATOMS_FOOT_ROOT_KEY;
460 static const std::string ATOMS_POLE_VECTOR_KEY;
461 static const std::string ATOMS_SKIP_IK_KEY;
462 static const std::string ATOMS_IK_SOLVER_KEY;
463 static const std::string ATOMS_IK_SOFT_DISTANCE_KEY;
464 static const std::string ATOMS_IK_MAX_ITERATIONS_KEY;
465 static const std::string ATOMS_IK_TOLLERANCE_KEY;
466 static const std::string ATOMS_LEG_LENGTH_KEY;
467 static const std::string ATOMS_FRAMES_TO_FOOT_DOWN_KEY;
468 static const std::string ATOMS_PELVIS_VELOCITY_KEY;
469 static const std::string ATOMS_PELVIS_LOCAL_VELOCITY_KEY;
470 static const std::string ATOMS_PELVIS_FRAME_ROTATION_KEY;
471 static const std::string ATOMS_BIND_POSE_TRANSLATE_KEY;
472 static const std::string ATOMS_BIND_POSE_ROTATE_KEY;
473 static const std::string ATOMS_BIND_POSE_ROTATE_OFFSET_KEY;
474 static const std::string ATOMS_BIND_POSE_SCALE_KEY;
475 static const std::string ATOMS_ORIG_BIND_POSE_TRANSLATE_KEY;
476 static const std::string ATOMS_ORIG_BIND_POSE_ROTATE_KEY;
477 static const std::string ATOMS_ORIG_BIND_POSE_ROTATE_OFFSET_KEY;
478 static const std::string ATOMS_ORIG_BIND_POSE_SCALE_KEY;
479 static const std::string ATOMS_GROUND_NORMAL_KEY;
480 static const std::string ATOMS_JOINT_CONTROL_MAPPING_KEY;
481 static const std::string ATOMS_JOINT_CONTROL_MAPPING_NAME_KEY;
482 static const std::string ATOMS_JOINT_CONTROL_MAPPING_MATRIX_KEY;
483 static const std::string ATOMS_JOINT_LIMIT_ROTATION_MIN_KEY;
484 static const std::string ATOMS_JOINT_LIMIT_ROTATION_MAX_KEY;
485 static const std::string ATOMS_PROP_LOCAL_TRANSLATE_KEY;
486 static const std::string ATOMS_PROP_LOCAL_ROTATE_KEY;
487 static const std::string ATOMS_PROP_LOCAL_SCALE_KEY;
488 static const std::string ATOMS_FOOT_LOCK_STATUS_KEY;
489 static const std::string ATOMS_SEGMENT_SCALE_COMPENSATE_KEY;
490 static const std::string ATOMS_USE_CLIP_DIRECTION_KEY;
491 static const std::string ATOMS_CLIP_LOOP_KEY;
492 static const std::string ATOMS_CLIP_LOOP_NUM_BLEND_FRAMES_KEY;
493 static const std::string ATOMS_CLIP_LOOP_START_KEY;
494 static const std::string ATOMS_CLIP_LOOP_END_KEY;
495 static const std::string ATOMS_CLIP_BLEND_FRAMES_AFTER_FOOT_UP_KEY;
496 static const std::string ATOMS_CLIP_AGENT_TYPE_KEY;
497 static const std::string ATOMS_CLIP_DIRECTION_KEY;
498 static const std::string ATOMS_CLIP_FORCE_TRANSITION_KEY;
499 static const std::string ATOMS_CLIP_MAX_TURN_ANGLE_KEY;
500 static const std::string ATOMS_CLIP_OFFSET_KEY;
501 static const std::string ATOMS_AGENT_STATE_KEY;
502 static const std::string ATOMS_AGENT_CURRENT_STATE_KEY;
503 static const std::string ATOMS_AGENT_DYNAMIC_KEY;
504 static const std::string ATOMS_AGENT_DYNAMIC_MODE_KEY;
505 static const std::string ATOMS_AGENT_UP_KEY;
506 static const std::string ATOMS_AGENT_POSITION_KEY;
507 static const std::string ATOMS_AGENT_LAYOUT_POSITION_KEY;
508 static const std::string ATOMS_AGENT_LAYOUT_NAME_KEY;
509 static const std::string ATOMS_AGENT_DIRECTION_KEY;
510 static const std::string ATOMS_AGENT_PREVIOUS_DIRECTION_KEY;
511 static const std::string ATOMS_AGENT_SCALE_KEY;
512 static const std::string ATOMS_AGENT_ROTATION_KEY;
513 static const std::string ATOMS_AGENT_ID_KEY;
514 static const std::string ATOMS_AGENT_GROUPID_KEY;
515 static const std::string ATOMS_AGENT_LOCAL_DIRECTION_KEY;
516 static const std::string ATOMS_AGENT_GROUPNAME_KEY;
517 static const std::string ATOMS_AGENT_SELECTED_KEY;
518 static const std::string ATOMS_AGENT_TYPE_KEY;
519 static const std::string ATOMS_AGENT_FRAMERATE_KEY;
520 static const std::string ATOMS_AGENT_ANIMFRAMERATE_KEY;
521 static const std::string ATOMS_AGENT_TURN_ANGLE_KEY;
522 static const std::string ATOMS_AGENT_VELOCITY_KEY;
523 static const std::string ATOMS_AGENT_TARGET_LINEAR_VELOCITY_KEY;
524 static const std::string ATOMS_AGENT_TARGET_ANGULAR_VELOCITY_KEY;
525 static const std::string ATOMS_AGENT_ANIMATED_HF_KEY;
526 static const std::string ATOMS_AGENT_GRAVITY_KEY;
527 static const std::string ATOMS_AGENT_LOD_KEY;
528 static const std::string ATOMS_AGENT_CACHE_ID_KEY;
529 static const std::string ATOMS_AGENT_AGENT_TYPE_KEY;
530 static const std::string ATOMS_AGENT_VARIATION_KEY;
531 static const std::string ATOMS_AGENT_BIRTH_KEY;
532 static const std::string ATOMS_AGENT_RETARGETING_FACTOR_KEY;
533 static const std::string ATOMS_AGENT_COLLECTOR_DIRECTIONS_KEY;
534 static const std::string ATOMS_AGENT_ACTIVE_DIRECTIONAL_MODULE_KEY;
535 static const std::string ATOMS_AGENT_CLOTH_SETUP_OVERRIDE_KEY;
536 static const std::string ATOMS_AGENT_COLOR_KEY;
537 static const std::string ATOMS_AGENT_COLOR_VARIATION_KEY;
538 static const std::string ATOMS_AGENT_DISABLE_IK_KEY;
539 static const std::string ATOMS_AGENT_DISABLE_FOOTLOCK_KEY;
540 static const std::string ATOMS_AGENT_SIM_LOD_KEY;
541 static const std::string ATOMS_AGENT_SYNC_LEVEL_KEY;
542 static const std::string ATOMS_AGENT_SYNC_PARENT_AGENT_GROUP_KEY;
543 static const std::string ATOMS_AGENT_SYNC_AGENT_GROUP_KEY;
544 static const std::string ATOMS_AGENT_SYNC_PARENT_JOINT_KEY;
545 static const std::string ATOMS_AGENT_SYNC_JOINT_KEY;
546 static const std::string ATOMS_AGENT_SYNC_AGENT_ID_KEY;
547 static const std::string ATOMS_AGENT_SYNC_OFFSET_KEY;
548 static const std::string ATOMS_AGENT_MAX_LEG_STRETCH_KEY;
549 static const std::string ATOMS_AGENT_ACTIVE_KEY;
550 static const std::string ATOMS_AGENT_VISIBLE_KEY;
551 static const std::string ATOMS_AGENT_LOCOMOTION_KEY;
552 static const std::string ATOMS_AGENT_LOCK_DIRECTION_KEY;
553 static const std::string ATOMS_AGENT_ANIM_STATE_KEY;
554 static const std::string ATOMS_AGENT_TYPE_SCALE_MULTIPLIER_KEY;
555 static const std::string ATOMS_AGENT_TYPE_SIT_HEIGHT_OFFSET_KEY;
556 static const std::string ATOMS_AGENT_TYPE_STATE_MACHINE_KEY;
557 static const std::string ATOMS_AGENT_TYPE_SKIN_GEO_KEY;
558 static const std::string ATOMS_AGENT_TYPE_LOW_GEO_KEY;
559 static const std::string ATOMS_AGENT_TYPE_RAGDOLL_KEY;
560 static const std::string ATOMS_AGENT_TYPE_BOUNDING_BOX_KEY;
561 static const std::string ATOMS_AGENT_TYPE_SKELETON_CONFIG_MAP_KEY;
562 static const std::string ATOMS_AGENT_TYPE_SKELETON_CONFIG_MAP_JOINT_MAP_KEY;
563 static const std::string ATOMS_AGENT_TYPE_SKELETON_CONFIG_MAP_USER_FACTOR_KEY;
564 static const std::string ATOMS_AGENT_TYPE_SKELETON_CONFIG_MAP_RETARGET_METHOD_KEY;
565 static const std::string ATOMS_AGENT_TYPE_LOD_LEVELS_KEY;
566 static const std::string ATOMS_AGENT_TYPE_LOD_DISTANCES_KEY;
567 static const std::string ATOMS_AGENT_TYPE_LOD_MODE_KEY;
568 static const std::string ATOMS_AGENT_TYPE_CHARACTER_KEY;
569 static const std::string ATOMS_AGENT_TYPE_RADIUS_KEY;
570 static const std::string ATOMS_AGENT_TYPE_ASSET_PATH_KEY;
571 static const std::string ATOMS_CLOTH_HIDE_MESH_KEY;
572 static const std::string ATOMS_PREVIEW_MESH_KEY;
573 static const std::string ATOMS_RENDER_ONLY_MESH_KEY;
574 static const std::string ATOMS_CLOTH_VERTEX_POSITION_KEY;
575 static const std::string ATOMS_CLOTH_VERTEX_NORMAL_KEY;
576 static const std::string ATOMS_CLOTH_BOUNDING_BOX_KEY;
577 static const std::string ATOMS_CLOTH_STACK_ORDER_KEY;
578 static const std::string ATOMS_BEHAVIOUR_MODULE_PROPERTIES_KEY;
579 static const std::string ATOMS_BEHAVIOUR_MODULE_DISPLAY_ORDER_KEY;
580 static const std::string ATOMS_BEHAVIOUR_MODULE_DISPLAY_GROUP_ORDER_KEY;
581 static const std::string ATOMS_BEHAVIOUR_MODULE_EXCLUDED_METADATAS_AUTOMATIC_BUILD_KEY;
582 static const std::string ATOMS_BEHAVIOUR_MODULE_ATTRIBUTE_GROUPS_KEY;
583 static const std::string ATOMS_BEHAVIOUR_OVERRIDE_DEPENDENCY_KEY;
584 static const std::string ATOMS_BEHAVIOUR_ENABLE_STATUS_DEPENDENCY_KEY;
585 static const std::string ATOMS_BEHAVIOUR_VISIBLE_STATUS_DEPENDENCY_KEY;
586 static const std::string ATOMS_BEHAVIOUR_MESH_PARENT_MATRIX_DEPENDENCY_KEY;
587 static const std::string ATOMS_BEHAVIOUR_MESH_TRANSLATION_DEPENDENCY_KEY;
588 static const std::string ATOMS_BEHAVIOUR_MESH_SCALE_DEPENDENCY_KEY;
589 static const std::string ATOMS_BEHAVIOUR_MESH_ROTATION_DEPENDENCY_KEY;
590 static const std::string ATOMS_BEHAVIOUR_TOOLTIP_KEY;
591 static const std::string ATOMS_BEHAVIOUR_KEYABLE_KEY;
592 static const std::string ATOMS_BEHAVIOUR_NICE_NAME_KEY;
593 static const std::string ATOMS_BEHAVIOUR_OPTION_LIST_KEY;
594 static const std::string ATOMS_BEHAVIOUR_VALUE_KEY;
595 static const std::string ATOMS_BEHAVIOUR_MIN_VALUE_KEY;
596 static const std::string ATOMS_BEHAVIOUR_MAX_VALUE_KEY;
597 static const std::string ATOMS_BEHAVIOUR_FILE_EXTENSION_KEY;
598 static const std::string ATOMS_BEHAVIOUR_FLOATING_NUM_DECIMALS_KEY;
599 static const std::string ATOMS_BEHAVIOUR_FLOATING_SINGLE_STEP_KEY;
600 static const std::string ATOMS_BEHAVIOUR_HARD_CONSTRUCTOR_KEY;
601 static const std::string ATOMS_BEHAVIOUR_HARD_CONSTRUCTOR_METADATANAMES_KEY;
602 static const std::string ATOMS_BEHAVIOUR_HARD_CONSTRUCTOR_COMBOBOX_KEY;
603 static const std::string ATOMS_BEHAVIOUR_HARD_CONSTRUCTOR_AREATRIGGER_KEY;
604 static const std::string ATOMS_BEHAVIOUR_HARD_CONSTRUCTOR_HEIGHTFIELD_KEY;
605 static const std::string ATOMS_BEHAVIOUR_HARD_CONSTRUCTOR_FILE_KEY;
606 static const std::string ATOMS_BEHAVIOUR_HARD_CONSTRUCTOR_FOLDER_KEY;
607 static const std::string ATOMS_BEHAVIOUR_HARD_CONSTRUCTOR_INTVECTOR2_KEY;
608 static const std::string ATOMS_BEHAVIOUR_HARD_CONSTRUCTOR_INTVECTOR3_KEY;
609 static const std::string ATOMS_BEHAVIOUR_HARD_CONSTRUCTOR_INTVECTOR4_KEY;
610 static const std::string ATOMS_BEHAVIOUR_HARD_CONSTRUCTOR_DOUBLESPINBOX_KEY;
611 static const std::string ATOMS_BEHAVIOUR_HARD_CONSTRUCTOR_AGENT_GROUP_KEY;
612 static const std::string ATOMS_BEHAVIOUR_HARD_CONSTRUCTOR_AGENT_GROUPS_KEY;
613 static const std::string ATOMS_BEHAVIOUR_HARD_CONSTRUCTOR_LOCOMOTION_KEY;
614 static const std::string ATOMS_BEHAVIOUR_HARD_CONSTRUCTOR_CLIP_KEY;
615 static const std::string ATOMS_BEHAVIOUR_HARD_CONSTRUCTOR_CLIPS_KEY;
616 static const std::string ATOMS_BEHAVIOUR_HARD_CONSTRUCTOR_VARIATION_KEY;
617 static const std::string ATOMS_BEHAVIOUR_HARD_CONSTRUCTOR_NAV_MESH_KEY;
618 static const std::string ATOMS_BEHAVIOUR_HARD_CONSTRUCTOR_AGENT_TYPE_KEY;
619 static const std::string ATOMS_BEHAVIOUR_HARD_CONSTRUCTOR_AGENT_TYPES_KEY;
620 static const std::string ATOMS_BEHAVIOUR_HARD_CONSTRUCTOR_MESH_KEY;
621 static const std::string ATOMS_BEHAVIOUR_HARD_CONSTRUCTOR_MESHES_KEY;
622 static const std::string ATOMS_BEHAVIOUR_HARD_CONSTRUCTOR_CURVE_KEY;
623 static const std::string ATOMS_BEHAVIOUR_HARD_CONSTRUCTOR_CURVES_KEY;
624 static const std::string ATOMS_BEHAVIOUR_HARD_CONSTRUCTOR_STATE_MACHINE_KEY;
625 static const std::string ATOMS_BEHAVIOUR_HARD_CONSTRUCTOR_BEHAVIOUR_TREE_KEY;
626 static const std::string ATOMS_BEHAVIOUR_HARD_CONSTRUCTOR_JOINT_NAME_KEY;
627 static const std::string ATOMS_BEHAVIOUR_HARD_CONSTRUCTOR_BLENDSPACE1D_KEY;
628 static const std::string ATOMS_BEHAVIOUR_HARD_CONSTRUCTOR_EULER_ROTATION_KEY;
629 static const std::string ATOMS_ASSETS_REALLUSION_KEY;
630 static const std::string ATOMS_ASSETS_REALLUSION_T_KEY;
631 static const std::string ATOMS_ASSETS_REALLUSION_A_KEY;
632 static const std::string ATOMS_ASSETS_REALLUSION_T_GAME_KEY;
633 static const std::string ATOMS_ASSETS_REALLUSION_A_GAME_KEY;
634 static const std::string ATOMS_ASSETS_REALLUSION_ROOT1_KEY;
635 static const std::string ATOMS_ASSETS_REALLUSION_PELVIS1_KEY;
636 static const std::string ATOMS_ASSETS_REALLUSION_ROOT2_KEY;
637 static const std::string ATOMS_ASSETS_REALLUSION_PELVIS2_KEY;
638 static const std::string ATOMS_ASSETS_MIXAMO_KEY;
639 static const std::string ATOMS_JOINT_GLOBAL_IK_KEY;
640 static const std::string ATOMS_CLIP_OPERATOR_PROPERTIES_KEY;
641 static const std::string ATOMS_CLIP_OPERATOR_DISPLAY_ORDER_KEY;
642 static const std::string ATOMS_CLIP_OPERATOR_HARD_CONSTRUCTOR_KEY;
643 static const std::string ATOMS_CLIP_OPERATOR_HARD_CONSTRUCTOR_COMBOBOX_KEY;
644 static const std::string ATOMS_CLIP_OPERATOR_OPTION_LIST_KEY;
645 static const std::string ATOMS_JOINT_PERCHING_FACTOR_KEY;
646 static const std::string ATOMS_JOINT_LANDING_PELVIS_HEIGHT_KEY;
647 static const std::string ATOMS_JOINT_SITTING_FACTOR_KEY;
648 static const std::string ATOMS_JOINT_SITTING_DOWN_PELVIS_DELTA_VECTOR_KEY;
649 static const std::string ATOMS_JOINT_SITTING_UP_PELVIS_DELTA_VECTOR_KEY;
650 static const std::string ATOMS_AGENT_ON_GROUND_KEY;
651 static const std::string ATOMS_AGENT_PARTICLE_PELVIS_TRANSITION_KEY;
652 static const std::string ATOMS_ROOT_START_OFFSET_KEY;
653 static const std::string ATOMS_BEHAVIOUR_TREE_NODE_DESCRIPTION_KEY;
654 static const std::string ATOMS_BEHAVIOUR_TREE_PARAMETER_DESCRIPTION_KEY;
655 static const std::string ATOMS_BEHAVIOUR_TREE_NODE_PARAMETERS_KEY;
656 static const std::string ATOMS_BEHAVIOUR_TREE_HARD_CONSTRUCTOR_KEY;
657 static const std::string ATOMS_BEHAVIOUR_TREE_HARD_CONSTRUCTOR_PYTHON_SCRIPT_KEY;
658 static const std::string ATOMS_BEHAVIOUR_TREE_HARD_CONSTRUCTOR_SEEXPR_SCRIPT_KEY;
659 static const std::string ATOMS_BEHAVIOUR_TREE_HARD_CONSTRUCTOR_CHECK_TYPE_KEY;
660 static const std::string ATOMS_BEHAVIOUR_TREE_HARD_CONSTRUCTOR_NAV_MESH_KEY;
661 static const std::string ATOMS_BEHAVIOUR_TREE_HARD_CONSTRUCTOR_AGENT_TYPE_KEY;
662 static const std::string ATOMS_BEHAVIOUR_TREE_HARD_CONSTRUCTOR_BLACKBOARD_KEY_KEY;
663 static const std::string ATOMS_BEHAVIOUR_TREE_HARD_CONSTRUCTOR_ANIMATION_CLIP_KEY;
664 static const std::string ATOMS_BEHAVIOUR_TREE_HARD_CONSTRUCTOR_ANIMATION_CLIPS_KEY;
665 static const std::string ATOMS_BEHAVIOUR_TREE_HARD_CONSTRUCTOR_COMBOBOX_KEY;
666 static const std::string ATOMS_BEHAVIOUR_TREE_OPTION_LIST_KEY;
667 static const std::string ATOMS_BEHAVIOUR_TREE_HARD_CONSTRUCTOR_AGENT_GROUPS_KEY;
668 static const std::string ATOMS_BEHAVIOUR_TREE_HARD_CONSTRUCTOR_AGENT_GROUP_KEY;
669 static const std::string ATOMS_BEHAVIOUR_TREE_HARD_CONSTRUCTOR_PROBABILITY_WEIGHTS_KEY;
670 static const std::string ATOMS_BEHAVIOUR_TREE_HARD_CONSTRUCTOR_LOCOMOTION_KEY;
671 static const std::string ATOMS_AGENT_TRANSITION_BLEND_IN_FRAMES_KEY;
672 static const std::string ATOMS_AGENT_TRANSITION_BLEND_OUT_FRAMES_KEY;
673 static const std::string ATOMS_DIGITAL_ASSET_AGENT_GROUPS_KEY;
674 static const std::string ATOMS_DIGITAL_ASSET_SCENE_KEY;
675 static const std::string ATOMS_DIGITAL_ASSET_HOST_KEY;
676 static const std::string ATOMS_DIGITAL_ASSET_VERSION_KEY;
677 static const std::string ATOMS_DIGITAL_ASSET_DATA_KEY;
678 static const std::string ATOMS_DIGITAL_ASSET_MODULES_KEY;
679 static const std::string ATOMS_DIGITAL_ASSET_MATRIX_KEY;
680 static const std::string ATOMS_DIGITAL_ASSET_HEIGHTFIELD_KEY;
681 static const std::string ATOMS_DIGITAL_ASSET_HF_NAME_KEY;
682 static const std::string ATOMS_DIGITAL_ASSET_HF_MESH_KEY;
683 static const std::string ATOMS_DIGITAL_ASSET_HF_MATRIX_KEY;
684 static const std::string ATOMS_DIGITAL_ASSET_HF_ANIMATED_KEY;
685 static const std::string ATOMS_DIGITAL_ASSET_HF_MODE_KEY;
686 static const std::string ATOMS_DIGITAL_ASSET_NAVMESH_KEY;
687 static const std::string ATOMS_DIGITAL_ASSET_NAVMESH_INPUT_MESHES_KEY;
688 static const std::string ATOMS_DIGITAL_ASSET_NAVMESH_NAME_KEY;
689 static const std::string ATOMS_DIGITAL_ASSET_NAVMESH_MESH_KEY;
690 static const std::string ATOMS_DIGITAL_ASSET_NAVMESH_MESH_NAME_KEY;
691 static const std::string ATOMS_DIGITAL_ASSET_NAVMESH_MATRIX_KEY;
692 static const std::string ATOMS_DIGITAL_ASSET_ANIM_FRAMES_KEY;
693 static const std::string ATOMS_DIGITAL_ASSET_HOST_DATA_KEY;
694 static const std::string ATOMS_DIGITAL_ASSET_HOST_DATA_MODULE_KEY;
695 static const std::string ATOMS_DIGITAL_ASSET_HOST_DATA_BEHAVIOUR_TREE_ATTR_CONNECTIONS_KEY;
696 static const std::string ATOMS_DIGITAL_ASSET_HOST_DATA_POINTS_LAyOUT_MAP_KEY;
697 static const std::string ATOMS_DIGITAL_ASSET_HOST_DATA_POINTS_LAYOUT_IDS_KEY;
698 static const std::string ATOMS_DIGITAL_ASSET_HOST_DATA_POINTS_LAYOUT_POINTS_KEY;
699 static const std::string ATOMS_DIGITAL_ASSET_HOST_DATA_POINTS_LAYOUT_DIRECTIONS_KEY;
700 static const std::string ATOMS_DIGITAL_ASSET_HOST_DATA_POINTS_LAYOUT_UP_VECTORS_KEY;
701 static const std::string ATOMS_DIGITAL_ASSET_HOST_DATA_POINTS_LAYOUT_AGENT_TYPES_KEY;
702 static const std::string ATOMS_DIGITAL_ASSET_HOST_DATA_VALUE_KEY;
703 static const std::string ATOMS_DIGITAL_ASSET_HOST_DATA_MENU_VALUE_KEY;
704 static const std::string ATOMS_DIGITAL_ASSET_HOST_DATA_BAKED_KEY;
705 static const std::string ATOMS_DIGITAL_ASSET_HOST_DATA_CURVES_KEY;
706 static const std::string ATOMS_DIGITAL_ASSET_HOST_DATA_CURVES_KEYS_KEY;
707 static const std::string ATOMS_DIGITAL_ASSET_HOST_DATA_CURVES_IS_WEIGHTED_KEY;
708 static const std::string ATOMS_DIGITAL_ASSET_HOST_DATA_CURVES_PRE_INFINITY_KEY;
709 static const std::string ATOMS_DIGITAL_ASSET_HOST_DATA_CURVES_POST_INFINITY_KEY;
710 static const std::string ATOMS_DIGITAL_ASSET_PARENT_AGENT_GROUP_KEY;
711 static const std::string ATOMS_DIGITAL_ASSET_MODULE_NAME_KEY;
712 static const std::string ATOMS_DIGITAL_ASSET_MODULE_TYPE_KEY;
713 static const std::string ATOMS_DIGITAL_ASSET_MODULE_ENABLED_KEY;
714 static const std::string ATOMS_DIGITAL_ASSET_MODULE_ATTR_KEY;
715 static const std::string ATOMS_DIGITAL_ASSET_KEY_TIME_KEY;
716 static const std::string ATOMS_DIGITAL_ASSET_KEY_VALUE_KEY;
717 static const std::string ATOMS_DIGITAL_ASSET_KEY_IN_ANGLE_KEY;
718 static const std::string ATOMS_DIGITAL_ASSET_KEY_OUT_ANGLE_KEY;
719 static const std::string ATOMS_DIGITAL_ASSET_KEY_IN_WEIGHT_KEY;
720 static const std::string ATOMS_DIGITAL_ASSET_KEY_OUT_WEIGHT_KEY;
721 static const std::string ATOMS_DIGITAL_ASSET_KEY_IN_TANGENT_TYPE_KEY;
722 static const std::string ATOMS_DIGITAL_ASSET_KEY_OUT_TANGENT_TYPE_KEY;
723 static const std::string ATOMS_DIGITAL_ASSET_KEY_TANGENTS_LOCKED_KEY;
724 static const std::string ATOMS_DIGITAL_ASSET_KEY_WEIGHTS_LOCKED_KEY;
725 static const std::string ATOMS_DIGITAL_ASSET_KEY_EXPRESSION_KEY;
726 static const std::string ATOMS_DIGITAL_ASSET_KEY_EXPRESSION_LANGUAGE_KEY;
727 static const std::string ATOMS_DIGITAL_ASSET_KEY_USE_EXPRESSION_KEY;
728 static const std::string ATOMS_DIGITAL_ASSET_KEY_EVALUATED_SLOPES_KEY;
729 static const std::string ATOMS_DIGITAL_ASSET_KEY_HALFKEYS_KEY;
730 static const std::string ATOMS_DIGITAL_ASSET_KEY_SLOPE_KEY;
731 static const std::string ATOMS_DIGITAL_ASSET_KEY_ACCEL_KEY;
732 static const std::string ATOMS_DIGITAL_ASSET_KEY_NUMVALUES_KEY;
733 static const std::string ATOMS_DIGITAL_ASSET_FPS_KEY;
734 static const std::string ATOMS_AGENT_FOOT_DOWN_TRESHOLD_KEY;
735 static const std::string ATOMS_AGENT_VELOCITY_OVERRIDE_KEY;
736 static const std::string ATOMS_AGENT_USE_VELOCITY_OVERRIDE_KEY;
737 static const std::string ATOMS_AGENT_LOCOMOTION_ACTIVE_KEY;
738 static const std::string ATOMS_LOCOMOTION_VERSION_KEY;
739 static const std::string ATOMS_LOCOMOTION_BLEND_FRAMES_KEY;
740 static const std::string ATOMS_LOCOMOTION_CLIP_COORDS_KEY;
741 static const std::string ATOMS_LOCOMOTION_CLIP_NAME_KEY;
742 static const std::string ATOMS_LOCOMOTION_DISABLE_DIRECTION_BLENDING_KEY;
743 static const std::string ATOMS_LOCOMOTION_TRIANGLE_VERTEX_IDS_KEY;
744 static const std::string ATOMS_LOCOMOTION_UNSYNCED_KEY;
745 static const std::string ATOMS_LOCOMOTION_NODES_KEY;
746 static const std::string ATOMS_LOCOMOTION_USE_PREFERRED_ANGLE_KEY;
747 static const std::string ATOMS_LOCOMOTION_PREFERRED_ANGLE_KEY;