2D Physic collison always null ?

Hy guys my problem is, that when my Raycast touches the 2DBoxcollider of a cube my Debug.Log keeps returning null.

May somebody help me with this?

My code:


[RequireComponent (typeof(BoxCollider))]
public class collision : MonoBehaviour {

	private BoxCollider2D collider;
	private Vector2 center;
	private Vector2 size;
	public Transform player;
	public movement Movement;
	private float rayDistance = 2f;

	public LayerMask collisionMask;
	Ray2D ray;
	RaycastHit2D hit;

	public float bounce = 2f;
	void Start () {
		Movement = GetComponent<movement>();
		collider = GetComponent<BoxCollider2D>();
		center = collider.center;
		size = collider.size;
	}
	
	// Update is called once per frame
	void Update () {
	
				if (Movement.dirV !=0) {
						for (int i =0; i<3; i++) {

								float offsetX = (player.transform.position.x + center.x - size.x / 2) + size.x / 2 * i;		
								float offsetY = (player.transform.position.y + center.y )+ (size.y / 2 * Movement.dirV);
		
								ray = new Ray2D (new Vector2 (offsetX, offsetY), new Vector2 (Movement.dirH, Movement.dirV));
								Debug.DrawRay (ray.origin, ray.direction);
				Physics2D.Raycast(ray.origin, ray.direction, rayDistance, collisionMask);
					Debug.Log (hit.collider);				
					

			}
						
			}

When you’re calling Physics2D.Raycast, you need to assign it to the hit object;

hit = Physics2D.Raycast(ray.origin, ray.direction, rayDistance, collisionMask);
if(hit != null)
{
    Debug.Log(hit.collider.gameObject);
}