I have my raycast ignoring the layer its casting from and its showing that its hitting layer default now. which is layer 0.
Do I need to ignore default layer too? If so how do I ignore more then one layer.
int layerMask = 1 << LayerMask.NameToLayer(characterSettings.Faction);
layerMask = ~layerMask;
if(Physics.Raycast(FirePoint.position, FirePoint.forward, out hit, AIDetectionSetting,layerMask)){
Debug.Log(hit.collider.gameObject.layer);
}
This is a picture showing the ray cast.
Unless my ray cast debug isn’t showing the right ray cast
Debug.DrawRay(FirePoint.position, m_AIAgent.SharedMethod_TargetLookDirectionLookPoint(FirePoint.position, true) * 100, Color.red);
public Vector3 SharedMethod_TargetLookDirectionLookPoint(Vector3 lookPoint, bool raycastLookDistance)
{
// If the transform is null then return the forward direction.
if (m_TargetTransform == null) {
return m_Transform.forward;
}
return (m_TargetTransform.position - lookPoint).normalized;
}