The Player Game Object is any object that a PlayerController can possess. In order for the PlayerController to possess an object, it must contain some core components. The primary component needed for possession are PlayerInputComponent, PlayerCharacter, and a PhysicsObjectComponent. These 3 work together to allow player control. =====PlayerCharacterComponent===== * The central hub for the character * All components that need to cross communicate push up to this component. The PlayerCharacter then distributes this info as needed ===== PlayerInputComponent ===== * Takes input from the PlayerController * Processes input and sends the relevant commands to the PlayerCharacter ===== PhysicsObjectComponent ===== * Calculates movement and collision per frame * Must have its TargetVelocity set externally to trigger movement * PlayerCharacter updates the TargetVelocity based on info obtained in PlayerInput ===== InventoryComponent ===== * Holds all items for a character * Can hold all items or be divided into item types if needed. ===== StatComponent ===== * Holds all data that makes a character * Contains Configuration Data and state data.