# What is the best way to raycast mutliple rays over a line

I am trying to raycast multiple rays from a line downward just like the picture below.
What is the best way to do that?
Notice that I don’t want to use a box overlap or sphere because I don’t want to get hit from the sides.

Here’s a little script that might do just that.

To raycast, you need a start point and a direction. The direction is simply Vector3.Down, but the start point/s needs to be a set of points on the line.

A point can be chosen using the formula: `Vector3 point = StartPointOfLine + Direction * DistanceAcrossLine;` This means that, if you wanted a point on a line, 5 units across, you would write: `Vector3 point = StartPointOfLine + Direction * 5;`

Here’s the full implementation for what you’re asking for. Hopefully it works, haven’t tried it:

``````    // Distance between each raycast
public float Step = 1f;

// Number of rays across the line
public int Rays = 10;

public Vector3 StartPoint = Vector3.zero;
public Vector3 Direction = Vector3.right;

void Start()
{
FireRaysOutSideOfLine();
}

void FireRaysOutSideOfLine()
{
for (int i = 0; i < Rays; i++)
{
Vector3 startPoint = StartPoint + Direction * i * Step;

if (Physics.Raycast(startPoint, Vector3.down, out RaycastHit hit))
{
// Raycast from side of line hit something

// Do whatever u want with 'hit'
}
}
}
``````

This script fires 10 rays facing down, each ray 1 unit apart from each other, out of the side of a line facing right. Hope that helps @akyu01