Well what if it's way below the speed of light?
Two rockets, traveling at 300m/s, 300,000,000 meters apart, parallel, and side by side.
One fires a laser cannon at the other.
It takes the light one second to reach the target. But during that second, the target has moved forward 300 meters.
So wouldn't the left-hand rocket have to lead on the target and fire his laser cannon at a point 300 meters ahead of the target?
And wouldn't the light travel a slightly longer path and take slightly longer than a second?
Remember, neither one's going even close to the speed of light.
But the path that the light takes is clearly the hypotenuse of a right triangle with the two sides of 300 and 300,000,000.
In fact, what if the right-hand rocket had a mirror on it, the first rocket would get a reflection of his laser pulse after he'd traveled a little over 600 meters after firing, right?
They key issue you are ignoring is time dilation and how the right angle triangle works
When you have speeds very close to c, the time dilation is very significant and results in massively different times.
When you have very small speeds, then the time dilation is quite small, but so is the extra distance.
You now have a right angle triangle with one side length of 1, and another with a side length of 1 million. The hypotenuse is basically the same as that 1 million. The square of the hypotenuse is 1 trillion and 1, i.e. 1000000000001. The hypotenuse is less than 1 million and 5 ten millionths.
This difference is tiny, and the tiny time dilation can take care of it.
In fact, we can see this with approximations.
For small angles, sin(x) can be approximated as x, which equates to our speed as a fraction of the speed of light. (this part is important as it establishes the angle and velocity are effectively the same).
cos(x) can be approximated as 1-x^2/2
The key factor involved in time dilation and the like is sqrt(1-x^2), which can also be approximated as 1-x^2/2 for small x.
For the full one, using the appropriate values we have our rockets separated by 299792458 m, travelling at 299.792458 m/s.
The light for them takes 1 second, and they end up with the speed of light for light.
For an observer outside, there is still time dilation. Now it takes a staggering 1.0000000000005 s (approximately, excel struggles to calculate it due to rounding errors).
This means the rockets have travelled 299.79245800015 m, and thus the total path length of the light is 299792458.00015 m (again, rounding errors, excel doesn't have enough precision to calculate all the extra digits) which again gives the speed of light for light.
The full process would be something like:
Determine time taken for light in their frame (t=d/c =>d=t c).
Calculate time dilation to determine how long it would take the outside observer to observe the light path, (t'=t/sqrt(1-(v/c)
2))
Calculate how far they have travelled in that time (l=t' v)
Calculate total path length (d'=sqrt(d
2+l
2))
Calculate speed of light for outside observer c'=d'/t'
Trying to stick that all into one equation:
Note firstly that I will let y=sqrt(1-(v/c)
2) and thus t'=t/y
c'=d'/t'
=sqrt(d
2+l
2)/(t/y)
=y*sqrt((t c)
2+(t' v)
2)/t
=y*sqrt((t c)
2+(t v/y)
2)/t
=y*sqrt(c
2+(v/y)
2)
=c*sqrt(y
2+(v/c)
2)
=c*sqrt(1-(v/c)
2+(v/c)
2)
=c*sqrt(1)
=c.
As such, regardless of what velocity you put in (as long as it is physically possible) and how far apart you make them, both observers see light travelling at the speed of light.
Just like throwing a ball on a train, to the outside observer you will appear to throw it partly forwards, but to people on the train/in the rocket, you will appear to shine the light directly out.