[AI] Represents a Real-time Object Instance enriched with LEGO-specific functionality.
LegoActorParts
[AI] Indices of main LEGO actor parts (used for parts table lookup and assignment in LegoActorInfo).
@ c_armrtPart
[AI] Right arm. [AI]
@ c_clawlftPart
[AI] Left hand or claw accessory. [AI]
@ c_leglftPart
[AI] Left leg. [AI]
@ c_infohatPart
[AI] Info hat or top accessory slot. [AI]
@ c_legrtPart
[AI] Right leg. [AI]
@ c_infogronPart
[AI] Info/torso accent part. [AI]
@ c_clawrtPart
[AI] Right hand or claw accessory. [AI]
@ c_armlftPart
[AI] Left arm. [AI]
@ c_bodyPart
[AI] Index for the main body slot in m_parts. [AI]
@ c_headPart
[AI] Head slot. [AI]
LegoActorInfo g_actorInfoInit[66]
[AI] Global initialization table for the 66 actor types in the game, each entry describing all key as...
LegoActorLODs
[AI] Indices of the various actor LODs for lookup or iteration purposes.
@ c_infohatLOD
[AI] Information hat or top-accessory. [AI]
@ c_bodyLOD
[AI] Body LOD node (core component of models). [AI]
@ c_topLOD
[AI] Top/root of the actor LOD hierarchy (usually main body root). [AI]
@ c_infogronLOD
[AI] Another torso region/LOD, details contextual. [AI]
LegoActorLOD g_actorLODs[11]
[AI] Array of 11 LOD definitions which describe the conventions for actor part hierarchy and bounding...
[AI] Describes a part/slot of a LEGO actor (e.g.
MxU8 m_unk0x08
[AI] Default part variant index (or count/selection index). [AI_SUGGESTED_NAME: m_defaultVariant]
const char ** m_unk0x04
[AI] Pointer to array of strings representing the names/resources corresponding to the part's variant...
MxU8 * m_unk0x00
[AI] Pointer to list of variant indices for this part (options for which sub-parts may be picked by t...
MxU8 m_unk0x14
[AI] Default color/texture or palette index for the part. [AI_SUGGESTED_NAME: m_defaultPalette]
MxU8 * m_unk0x0c
[AI] Pointer to a list of values (indices/colors), purpose is to map this part to a color/texture set...
const char ** m_unk0x10
[AI] Pointer to palette or color array, typically strings with color names or filenames for textures....
[AI] Contains information about a single LEGO actor/character, including its name,...
MxS32 m_move
[AI] Movement profile, move type, or current move id. [AI]
LegoExtraActor * m_actor
[AI] Pointer to the runtime logic/controller object for the actor (LegoExtraActor),...
LegoROI * m_roi
[AI] Pointer to the runtime ROI (graphical representation/model) of the actor, assigned at runtime....
MxS32 m_sound
[AI] Sound profile or current sound effect associated (index/id). [AI]
MxU8 m_mood
[AI] Mood parameter for the actor (expressions/mouth shape/animation set). [AI]
Part m_parts[10]
[AI] Table of body parts, each with their own variant/color selection and mappings (see Part struct)....
const char * m_name
[AI] Unique name string for this actor type (used for lookup in runtime logic, e.g....
[AI] Describes a single Level-of-Detail (LOD) variant for an actor part, including bounds and orienta...
float m_up[3]
[AI] Default up vector, used for orientation of the part/model. [AI]
float m_direction[3]
[AI] Default facing/pointing direction vector. [AI]
const char * m_parentName
[AI] Name of parent part/Lod, forming hierarchy for placing in the model. [AI]
float m_boundingSphere[4]
[AI] Defines center (x, y, z) and radius for the part's bounding sphere (collision and culling)....
MxU32 m_flags
[AI] LOD flags; see enum above for special handling during actor building and LOD selection....
float m_boundingBox[6]
[AI] Defines axis-aligned bounding box: minX, minY, minZ, maxX, maxY, maxZ. Used for spatial culling....
float m_position[3]
[AI] Default position offset (relative to parent LOD/part), in model/local space. [AI]
@ c_flag2
[AI] Used to denote a secondary special flag (usage determined by implementation)....
@ c_flag1
[AI] Used to denote special processing/class of LOD part (see usage in creation routines)....
const char * m_name
[AI] Name string for the LOD (e.g. "body", "head", "leg-lft", etc.). [AI]