📄️ Overview
The result of ray behaviors depends on an entity and the ray casts created by the Ray Query. The entity can have a component which parametrizes this behavior. For example EnvironmentAvoidanceJobWrapper depends on EnvironmentAvoidanceComponent. The behaviors can be grouped together by the *Ray Query*.
📄️ IRaycastBehaviorJobWrapper
Ray behaviors are implementations of IRaycastBehaviorJobWrapper. The BaseSteeringSystem schedules them after their corresponding ray query is done, passing in its results. There are three interfaces relevant in creating a ray behavior. The most important one is a custom job IRaycastBehaviorJob which significantly simplifies creating the behaviors.