Flee uses the opposing direction to the percept as target direction (back-end class).
It inherits from Seek and works like its base class except that it negates the result direction for obtaining objective values.
Back-end class of AIMFlee. This behaviour is thread-safe.
Public Fields | |
| bool | ForEachReceptor |
If set to true the algorithm is applied for each receptor instead for each percept. More... | |
| float | InnerRadius = 0.0f |
| The minimum radius for considering percepts. More... | |
| float | OuterRadius = 20f |
| The maximum radius for considering percepts. More... | |
| MappingType | RadiusMapping = MappingType.InverseLinear |
| Determines how the startMagnitude is mapped according to the InnerRadius and OuterRadius. More... | |
| Vector3 | ResultDirection |
| The direction vector used for obtaining objective values. More... | |
| float | ResultMagnitude |
| The magnitude value used for obtaining objective values. More... | |
| int | TargetObjective |
| Defines the objective for writing values. More... | |
| float | MagnitudeMultiplier = 1f |
| Is multiplied to the ResultMagnitude in order to weight between different behaviours. More... | |
| float | SensitivityOffset |
| Is added to the Structure.Sensitivity as threshold for writing objective values. More... | |
| ValueWritingType | ValueWriting = ValueWritingType.AssignGreater |
| Sets the type for writing objective values. More... | |
| LayerBlendingType | LayerBlending = LayerBlendingType.None |
| Sets the operation for blending the behaviour results into the context. More... | |
| LayerNormalizationType | LayerNormalization = LayerNormalizationType.None |
| Sets the method for normalizing intermediate objective values while they are blended into the context. More... | |
| MappingType | ValueMapping = MappingType.InverseLinear |
| Sets the mapping type for obtaining objective values. More... | |
| bool | UseSignificance = true |
| Determines if the SteeringPercept.Significance (if there is a AIMSteeringTag) is multiplied to the ResultMagnitude in order to weight between different percepts. More... | |
| bool | UseSensorProjection = true |
If true, Sensor.ProjectionMode is used as VectorProjection. More... | |
| VectorProjectionType | VectorProjection = VectorProjectionType.None |
| Sets the type for projecting the perceived vector data into a plane. More... | |
| PresetVelocityType | PresetVelocity = PresetVelocityType.None |
| If the value is anything other than PresetVelocityType.None, a game object's rotation and default forward direction is used to approximate its actual velocity. More... | |
| PredictionType | Prediction = PredictionType.None |
| If set to anything other than PredictionType.None, the position of the Self percept is updated according to the given velocity. More... | |
| float | PredictionMagnitude = 0.0f |
| Scales the velocity vector used for predicting the possible future position of an agent if Prediction is set to PredictionType.PredictionMagnitude. More... | |
| readonly IList< T > | Percepts |
| All percepts which are relevant for an agent. More... | |
Protected Fields | |
| Vector3 | startDirection |
| Direction from the self position to the percept position (including distance magnitude). More... | |
| float | startMagnitude |
| Magnitude obtained from mapping the percept position relative to InnerRadius and OuterRadius. More... | |
| float | sqrInnerRadius |
| Squared InnerRadius. More... | |
| float | sqrOuterRadius |
| Squared OuterRadius. More... | |
| readonly SteeringPercept | self = new SteeringPercept() |
| The data of the associated agent itself (read only). More... | |
| readonly SteeringPercept | percept = new SteeringPercept() |
| The data of the currently processed percept (read only). More... | |
| IList< float > | objective |
| Quick access to the currently processed objective. More... | |
| ISensor< Structure > | sensor |
| Quick access to the currently processed sensor. More... | |
| IReceptor< Structure > | receptor |
| Quick access to the currently processed receptor. More... | |
| Structure | structure |
| Quick access to the currently processed structure. More... | |
| Vector3 | velocity = Vector3.forward |
| The forward direction the agent moves towards and/or looks at by default. More... | |
Properties | |
| override bool | forEachPercept [get] |
| Determines if PerceptSteering is called within SteeringBehaviour.Behave (read only). More... | |
| override bool | forEachReceptor [get] |
| Determines if ReceptorSteering is called within SteeringBehaviour.Behave (read only). More... | |
| override SteeringPercept | Self [get, set] |
| The data of the associated agent itself. More... | |
Public Methods | |
| override void | Behave () |
| This method executes the main context steering algorithm and is called within Context.Evaluate in order to set/modify objective values for the associated Context.Problem. More... | |
Protected Methods | |
| override void | PerceptSteering () |
| Processes the steering algorithm for each percept using the same data for each processed receptor. More... | |
| override void | ReceptorSteering () |
| Processes the steering algorithm for each receptor for each percept separately. More... | |
| override bool | StartSteering () |
| Sets the startDirection and startMagnitude accordingly to the position of the processed percept relative to the InnerRadius and OuterRadius of this behaviour. More... | |