Polarith AI
1.8
Polarith.AI.Move Namespace Reference

Description

Contains everything for creating moving agents utilizing multi-criteria optimized context steering.

Classes

class  Adjust
 Adjust fits an agent's orientation with those of its neighbours (back-end class). More...
 
class  AIMAdjust
 AIMAdjust fits an agent's orientation with those of its neighbours (front-end component). More...
 
class  AIMAlign
 AIMAlign fits an agent's orientation to the orientation of one target percept (front-end component). More...
 
class  AIMArrive
 AIMArrive is used in order to modify the velocity of an agent if it reaches a target (front-end component). More...
 
class  AIMAvoid
 Active avoidance behaviour (front-end component). More...
 
class  AIMAvoidBounds
 Active avoidance behaviour that utilizes percept bounding box information (front-end component). More...
 
class  AIMBehaviour
 AIMBehaviour is the abstract base class for all the behaviours in the Move module of Polarith AI (front-end component). More...
 
class  AIMContext
 AIMContext builds the foundation of the AI system by providing access to all important modules (front-end component). More...
 
class  AIMContextEvaluation
 Abstract base class for implementing a custom AIMContext update loop like its done by AIMPerformance (Pro only). More...
 
class  AIMContextIndicator
 The purpose of AIMContextIndicator is to display the objective values during runtime. More...
 
class  AIMEnvironment
 An AIMEnvironment component serves as container holding GameObject instances which belong to the movement AI world, and thus, can be perceived by (multiple) agents. More...
 
class  AIMEvade
 AIMEvade anticipates where the percept will be in the future and flees from this position (front-end component). More...
 
class  AIMFilter
 AIMFilter<T> forwards the data of the percepts, holding by an AIMPerceiver<T>, to the behaviours of an agent. More...
 
class  AIMFlee
 Flee uses the opposing direction to the percept as target direction (front-end component). More...
 
class  AIMFleeBounds
 AIMFleeBounds uses the opposite direction to the bounding box of the percept as target direction (front-end component). More...
 
class  AIMFleeNavMesh
 Uses the NavMesh.Raycast(Vector3, Vector3, out NavMeshHit, int) to detect edges near to the agent (front-end component). More...
 
class  AIMFollow
 By using AIMFollow the agent follows one target independent on its distance to the agent (front-end component). More...
 
class  AIMFollowPath
 As the name implies, AIMFollowPath is intended to create complex movement behaviours by following a sequence of points. More...
 
class  AIMFollowWaypoints
 This is a concrete implementation of AIMFollowPath. More...
 
class  AIMFormation
 AIMFormation provides general information of a formation to compute an agent's position in derived formations based on its position in the formation, the formation size, and the reference object or position. More...
 
class  AIMFormationArrow
 AIMFormationArrow computes an agent's position based on its order inside an arrow-shaped formation and the reference position or -object of the formation. More...
 
class  AIMFormationBox
 AIMFormationBox computes an agent's position based on its order inside a box-shaped formation and the reference position or -object of the formation. More...
 
class  AIMFormationCircle
 AIMFormationCircle computes an agent's position based on its order inside a circle-shaped formation and the reference position or -object of the formation. More...
 
class  AIMFormationConfiguration
 Assigns the agents to their position inside the formation. More...
 
class  AIMFormationCross
 AIMFormationCross computes an agent's position based on its order inside a cross-shaped formation and the reference position or -object of the formation. More...
 
class  AIMFormationLine
 AIMFormationLine computes an agent's position based on its order inside a line-shaped formation and the reference position or -object of the formation. More...
 
class  AIMFormationV
 AIMFormationV computes an agent's position based on its order inside a V-shaped formation and the reference position or -object of the formation. More...
 
class  AIMLinearPath
 Intended for creating and representing linear paths. More...
 
class  AIMLodGroup
 Manages the AIMSensor instance which is currently attached to the game object's AIMContext component. More...
 
class  AIMOrbit
 By using AIMOrbit the agent will move along the orbit of one target percept (front-end component). More...
 
class  AIMPathConnector
 Used for providing path points to behaviours derived from AIMFollowPath by using the method GetPoints. More...
 
class  AIMPathfinding
 This class is intended as a connector in order to integrate a custom pathfinding algorithm properly into Polarith AI so that it can cooperate with AIMFollowWaypoints In addition, we provided some useful heuristics in order to check whether the path has to be recalculated automatically. More...
 
class  AIMPerceiver
 This class and AIMFilter<T> are working together in order to provide the percept data collected by an AIMEnvironment to the agent behaviours. More...
 
class  AIMPerceptBehaviour
 This class extends the AIMBehaviour so that it is able to work with IPercept<T> instances which are relevant for the associated agent (front-end component). More...
 
class  AIMPerformance
 This component dramatically improves the performance in scenes by optimizing the update calls of agents (Pro only). More...
 
class  AIMPhysicsController
 A very simple and basic physics-based controller component suitable for the use in 3D projects where the agent has a clear orientation to a ground plane. More...
 
class  AIMPhysicsController2D
 A very simple and basic physics-based controller component suitable for the use in 2D projects. More...
 
class  AIMPlanarAvoid
 Obsolete, use AIMAvoid instead. More...
 
class  AIMPlanarAvoidBounds
 Implements an avoidance behaviour which uses a percept's bounding box information (front-end component). More...
 
class  AIMPlanarConvolution
 AIMPlanarConvolution modifies an objective value based on its neighbours (front-end component). More...
 
class  AIMPlanarFleeBounds
 AIMPlanarFleeBounds uses the opposite direction to the bounding box of the percept as target direction (front-end component). More...
 
class  AIMPlanarInterpolation
 AIMPlanarInterpolation finds the interpolation parameter for a possible better solution located between two receptors (front-end component). More...
 
class  AIMPlanarSeekBounds
 AIMPlanarSeekBounds uses the bounding box of the percept as a possible target (front-end component). More...
 
class  AIMPlanarSensor
 The AIMPlanarSensor is a special type of AIMSensor with the assumption that there is a (virtual) ground in the world (front-end component). More...
 
class  AIMPlanarShaper
 AIMPlanarShaper is useful for creating a custom AIMPlanarSensor asset. More...
 
class  AIMPursue
 AIMPursue anticipates where the percept will be in the future and takes this position as a target (front-end component). More...
 
class  AIMRadiusSteeringBehaviour
 This class extends the AIMSteeringBehaviour through adding a kind of local perception model based on an RadiusSteeringBehaviour.InnerRadius and RadiusSteeringBehaviour.OuterRadius (front-end component). More...
 
class  AIMReduction
 AIMReduction is intended to reduce the magnitudes of the Reduction.TargetObjective under certain conditions (front-end component). More...
 
class  AIMRetention
 AIMRetention is used to remember objective values for multiple frames (front-end component). More...
 
class  AIMSeek
 AIMSeek uses the percept's position as the target (front-end component). More...
 
class  AIMSeekBounds
 AIMSeekBounds uses the bounding box of the percept as a possible target (front-end component). More...
 
class  AIMSeekNavMesh
 Uses the NavMesh.Raycast(Vector3, Vector3, out NavMeshHit, int) to detect edges near to the agent (front-end component). More...
 
class  AIMSensor
 This asset defines how an agent, having an AIMContext, component samples its environment (front-end component). More...
 
class  AIMSimpleController
 A very simple and basic character controller component suitable for the use in 3D projects. More...
 
class  AIMSimpleController2D
 A very simple and basic character controller component suitable for the use in 2D projects. More...
 
class  AIMSpatialSensor
 The AIMSpatialSensor is a special type of AIMSensor that is applicable for general 3D scenes (front-end component). More...
 
class  AIMStabilization
 AIMStabilization increases the objective values along the movement direction of the agent (front-end component). More...
 
class  AIMSteeringBehaviour
 AIMSteeringBehaviour provides the base functionality for writing and mapping objective values (front-end component). More...
 
class  AIMSteeringFilter
 Derived AIMFilter<T> component using SteeringPercept as type for the extracted percept data. More...
 
class  AIMSteeringPerceiver
 Derived AIMPerceiver<T> component using SteeringPercept as type for extracting percept data. More...
 
class  AIMSteeringTag
 This component might be used to complete extracted SteeringPercept data with customizable information. More...
 
class  AIMUnityPathfinding
 As a concrete implementation of AIMPathfinding, this class is used for calculating a path based on Unity's NavMesh. More...
 
class  AIMWander
 A simple SteeringBehaviour which is intended to let the agent wander around randomly (front-end component). More...
 
class  Align
 Align fits an agent's orientation to the orientation of one target percept (back-end class). More...
 
class  Arrive
 Arrive is used in order to modify the velocity of an agent if it reaches a target (back-end class). More...
 
class  Avoid
 Active avoidance behaviour (back-end class). More...
 
class  AvoidBounds
 Active avoidance behaviour that utilizes percept bounding box information (back-end class). More...
 
class  ConstraintSolver
 This solver is used for solving MCO problems in Context. More...
 
class  Context
 Context builds the foundation of the AI system by providing access to all important modules (back-end class). More...
 
class  Decision
 Class holding the results from Context.Evaluate. More...
 
class  DistanceValidator
 DistanceValidator can be useful in order to recalculate the path if the agent is too far away from it. More...
 
class  Evade
 Evade anticipates where the percept will be in the future and flees from this position (back-end class). More...
 
class  FilteredEnvironmentAttribute
 An attribute for string fields that represent an AIMEnvironment.Label. More...
 
class  Flee
 Flee uses the opposing direction to the percept as target direction (back-end class). More...
 
class  FleeBounds
 FleeBounds uses the opposite direction to the bounding box of the percept as target direction (back-end class). More...
 
class  FleeNavMesh
 Flees from navmesh edges near to the agent (back-end class). More...
 
class  Follow
 By using Follow the agent follows one target independent on its distance to the agent (back-end class). More...
 
class  FollowPathTargetIndexAttribute
 An attribute intended to be used for AIMFollowWaypoints.TargetIndex. More...
 
class  Formation
 This class extends the SteeringBehaviour through adding general local information about an agent's position inside of a formation. More...
 
class  FormationArrow
 Builds an arrow-shaped formation, by computing the position for a specific individual (back-end class). More...
 
class  FormationBox
 Builds a box-shaped formation, by computing the position for a specific individual (back-end class). More...
 
class  FormationCircle
 Builds a circle-shaped formation, by computing the position for a specific individual (back-end class). More...
 
class  FormationCross
 Builds a cross-shaped formation, by computing the position for a specific individual (back-end class). More...
 
class  FormationLine
 Builds a line-shaped formation, by computing the position for a specific individual (back-end class). More...
 
class  FormationV
 Builds a V-shaped formation, by computing the position for a specific individual (back-end class). More...
 
interface  IEvaluationPreparer
 Classes implementing this interface are responsible for executing processes in order to prepare the (parallel) update of AI agents. More...
 
interface  IPercept
 Classes implementing this interface serve as container for perceived data. More...
 
struct  LodElement
 A tuple containing references to an AIMSensor and a corresponding distance. More...
 
class  LodList
 A container that stores LodElement instances, whereby a LodElement is an AIMSensor-distance pair. More...
 
class  MoveBehaviour
 MoveBehaviour is the abstract base class for all the behaviours in the Move module of Polarith AI (back-end class). More...
 
class  NavMeshAgentValidator
 Checks the path of the given navmesh Agent. More...
 
class  NavMeshFeeler
 
class  Orbit
 By using Orbit the agent will move along the orbit of one target percept (back-end class). More...
 
class  PerceptBehaviour
 This class extends the MoveBehaviour so that it is able to work with IPercept<T> instances which are relevant for the associated agent (back-end class). More...
 
class  PlanarAvoid
 PlanarAvoid is intended to simply avoid obstacles based on their center positions (back-end class). More...
 
class  PlanarAvoidBounds
 PlanarAvoidBounds implements an avoidance behaviour which uses a percept's bounding box information (back-end class). More...
 
class  PlanarConvolution
 PlanarConvolution modifies an objective value based on its neighbours (back-end class). More...
 
class  PlanarFleeBounds
 PlanarFleeBounds uses the opposite direction to the bounding box of the percept as target direction (back-end class). More...
 
class  PlanarInterpolation
 PlanarInterpolation finds the interpolation parameter for a possible better solution located between two receptors (back-end class). More...
 
class  PlanarSeekBounds
 PlanarSeekBounds uses the bounding box of the percept as a possible target (back-end class). More...
 
class  PlanarSensor
 The PlanarSensor is a special type of Sensor with the assumption that there is a (virtual) ground in the world (back-end class). More...
 
class  Problem
 Represents the multicriteria optimization (MCO) problem to be solved by the AI system, for instance by a ConstraintSolver. More...
 
class  Pursue
 Pursue anticipates where the percept will be in the future and takes this position as a target (back-end class). More...
 
class  RadiusSteeringBehaviour
 This class extends the SteeringBehaviour through adding a kind of local perception model based on an InnerRadius and OuterRadius (back-end class). More...
 
class  Receptor
 Represents one sensorial element used to form an AIMSensor. More...
 
class  Reduction
 Reduction is intended to reduce the magnitudes of the TargetObjective under certain conditions (back-end class). More...
 
class  RegularGrid
 A regular grid to speed up the access to relevant SteeringPercept instances, whereby it can be used for arbitrary scenarios, 2D and 3D as well, since it can be adapted as required. More...
 
class  Retention
 Retention is used to remember objective values for multiple frames (back-end class). More...
 
class  Seek
 Seek uses the percept's position as the target (back-end class). More...
 
class  SeekBounds
 SeekBounds uses the bounding box of each percept as a possible target (back-end class). More...
 
class  SeekNavMesh
 Utilizes the navmesh edges near to an agent as targets (back-end class). More...
 
class  Sensor
 This asset defines how an agent, having an AIMContext, component samples its environment (back-end class). More...
 
class  SpatialSensor
 The SpatialSensor is a special type of Sensor that is applicable for general 3D scenes (back-end class). More...
 
class  Stabilization
 Stabilization increases the objective values along the (local) Context.DecidedDirection (back-end class). More...
 
class  SteeringBehaviour
 SteeringBehaviour provides the base functionality for writing and mapping objective values (back-end class). More...
 
class  SteeringPercept
 Implements IPercept<T> and serves as container for perceived steering data used by all derived SteeringBehaviour instances. More...
 
class  Structure
 This is the structural element for all movement related classes. More...
 
class  TargetObjectiveAttribute
 An attribute for int fields that represent an objective index. More...
 
class  TargetValidator
 Verifies that the given Target has moved. More...
 
class  TimeValidator
 Checks if a specific time elapsed. More...
 
class  Validator
 A Validator is used for verifying something specific by calling the method Validate. More...
 
class  Wander
 A simple SteeringBehaviour which is intended to let the agent wander around randomly (back-end class). More...
 

Enumerations

enum  BoundsType { ColliderAABB, ColliderOBB, Visual }
 Intended to distinguish between the different types of bounding boxes, e.g., within the bounds behaviours (Pro only). More...
 
enum  LayerBlendingType {
  None, AssignGreater, AssignLesser, Addition,
  Subtraction, Multiplication, Division
}
 Defines how objective values are blended into context maps for individual SteeringBehaviour instances. More...
 
enum  LayerNormalizationType { None, Intermediate, Everything }
 Defines whether objective values should be normalized while they are blended for individual SteeringBehaviour instances. More...
 
enum  MappingType {
  Constant, Linear, InverseLinear, Quadratic,
  InverseQuadratic, SquareRoot, InverseSquareRoot
}
 Used within the MoveBehaviour.MapSpecialSqr(MappingType, float, float, float) and MoveBehaviour.MapSpecial(MappingType, float, float, float) methods in order to specify the desired type of the applied mapping function. More...
 
enum  NavMeshFeelerType { Circle, Fan }
 Defines how a set of feelers (made of raycast operations) is constructed around an agent. More...
 
enum  PatrolType { None, BackForth, Circular }
 Determines how a path is traversed after the agent has reached the end respectively the start of the path. More...
 
enum  PlanarMappingType { None, Automatic, PlaneXY, PlaneXZ }
 This type determines the mapping of results (e.g., behaviour result) to a plane. More...
 
enum  PredictionType { None, VelocityMagnitude, PredictionMagnitude }
 Primarily used within SteeringBehaviour instances to define which method is to be used for predicting the agent position. More...
 
enum  PresetVelocityType {
  None, Automatic, Up, Down,
  Forward, Back, Left, Right
}
 Primarily used in AIMSteeringBehaviour to determine the default forward direction of an agent. More...
 
enum  ValueWritingType {
  AssignGreater, AssignLesser, Addition, Subtraction,
  Multiplication, Division
}
 Sets the operation for writing objective values in MoveBehaviour.WriteValue. More...
 
enum  SpatialPartitionType { None, RegularGrid }
 Defines available spatial partitioning structures for the use in AIMPerceiver<T> implementations. More...
 
enum  VectorProjectionType { None, PlaneXY, PlaneXZ }
 Specifies how perceived vector data is projected. More...
 
enum  PlanarOrientationType { PlaneXY, PlaneXZ }
 Specifies how a Sensor is oriented with respect to a virtual axis-aligned plane. More...
 
enum  IndicatorType { Splat, Bar }
 Defines the available visualization types for the AIMContextIndicator. More...
 
enum  PerformanceType { Synchronous, Asynchronous, LoadBalanced }
 Determines the optimization method used by AIMPerformance for speeding up the AI application. More...
 
enum  SplatType { Circle, Pentagon, Ring }
 Defines the shape for the TriangleSplat shader and, thus, the texture used internally. More...
 
enum  NonInverseMappingType { Constant, Linear, Quadratic, SquareRoot }
 Used as constraint version of MappingType to avoid inverse mapping. More...
 
enum  ShapeType { Planar, Spatial }
 Defines the visual shape of the formation. More...
 
Imprint