front-end: AIMSteeringFilter
inherits from: AIMFilter<T>
The AIMSteeringFilter has two functions.
First, by attaching a Steering Filter to an agent and plugging in a Steering Perceiver, the environment data (relevant to steering algorithms) which is received by the perceiver is made available to the agent and its behaviours. So the data can be accessed by a behaviour by specifying its property FilteredEnvironments
.
Second, the Steering Filter figures out the percepts which should be provided to behaviours based on the percept position with respect to the agent position. All percepts within the set Range
are considered relevant for behaviours. Moreover, setting an appropriate Range
can increase the performance significantly. A negative Range
is treated as infinity so that all percepts are provided to behaviours.
More detailed information about the perception pipeline is given by the corresponding manual pages.
This component has got the following specific properties.
Property | Description |
---|---|
SteeringPerceiver | Reference to a game object holding a SteeringPerceiver component. If valid, then the corresponding environments connected to the perceiver are listed below. |
ObjectTag | If no SteeringPerceiver is set, you can use this tag in order to identify any game object in the current scene that holds such a perceiver. This lookup is done once during the application start. |
Range | If a percept distance to an agent is greater than Range , it is ignored by the filter and, thus, not provided to behaviours. If the range is negative instead, everything is simply passed through. |
The distance check concerning the Range
parameter is performed using the object and agent positions only, as against bounding box information is ignored. Note, if a percept is dropped by the filter, no behaviour will ever process it, even a greater behaviour radius will not help. The actual performance is dependent on both the Steering Perceiver and the Steering Filter. Having a good parametrization for those two, can have a significant effect on the performance of your game AI.