RaycastComponent est un outil afin de rendre l'intégration des Raycast plus rapide dans l'éditeur de Unity.
Lorsque l'on utilise des Raycasts on peut se trouver avec beaucoup de variables à créer pour leurs options afin de les rendre modifiable dans l'éditeur.
Cet outil permet de regrouper toutes ces options et de plus rapidement intégrer l'utilisation des Raycasts mais aussi leurs modifications.
Les options pour la 3D et la 2D varie mais on trouve en commun le point d'origine et direction du rayon, une distance et un LayerMask (ou layer).
L'outil ajoute aussi une liste de string pour filtrer les tags des résultats.
Pour les Raycasts 3D il y a l'option QueryTriggerInteraction pour filtrer les colliders.
Quand aux 2D la profondeur (depth) et un ContactFilter2D si l'on souhaite utiliser un raycast 2D avec.
L'outil à de nombreuses méthodes pour modifier les options ou en override certains (la distance, profondeur et ContactFilter2D).
L'outil est serilizable lui permettant d'être affichée si la variable est public ou avec l'attribut SerializeField.
Il existe 3 constructeurs :
Valeurs par défaut.
Spécifie toutes les options
Copie un autre RaycastComponent
RaycastComponent2D en a 1 supplémentaire pour le ContactFilter2D.
L'outil contient aussi des méthodes pour rapidement et facilement modifier les options.
L'image représente un exemple d'intégration ainsi que l'utilisation de quelques méthodes.
L'outil est utilisable comme pour les Raycast, il suffit d'appeler les mêmes méthodes avec seulement une position, direction (ou aussi un Ray en 3D).
Il est possible de spécifier une distance sans avoir à modifier le RaycastComponent pour plus de facilité.
Pour la 2D il est aussi possible de spécifier une profondeur ou un ContactFilter2D.
L'image montre 2 exemples de leurs utilisations pour la 3D.