Hey, how do I let my raycast's continue until they are outside of the collider so I can get the back-end coordinates instead? I drew this picture in paint so you know what I'm on about: Thanks
Not sure if there's another method, but once you detect the raycast hit, you could send another raycast from the opposite side/direction that only hits the originally hit collider. Untested code, but this could do it: Code (CSharp): // do the initial raycast RaycastHit2D hit = Physics2D.Raycast(origin, direction, float.MaxValue, hittableLayers); // if it hit something if(hit.collider != null) { // add twice the distance from the starting point to the hit // which is a point on the other side of the object Vector3 newOrigin = origin + (direction * hit.distance * 2); // raycast from the back hit.collider.Raycast(newOrigin, -direction, float.MaxValue); } Depending on how complex your shape its, this may not give the true internal collision result you're looking for, but for convex shapes this should be able to do it.