Version: 2022.3
  • C#


struct in UnityEngine


Implemented in:UnityEngine.CoreModule

Suggest a change


Thank you for helping us improve the quality of Unity Documentation. Although we cannot accept all submissions, we do read each suggested change from our users and will make updates where applicable.


Submission failed

For some reason your suggested change could not be submitted. Please <a>try again</a> in a few minutes. And thank you for taking the time to help us improve the quality of Unity Documentation.




A ray in 2D space.

A ray is a line segment that extends from a point in space in a specified direction. Rays have a number of uses in Unity but the most common is probably raycasting. This technique involves tracing along the path of a ray from its origin to determine if it intersects with any objects. This is useful for plotting the paths of projectiles, determining lines of sight and implementing many common game mechanics.

Additional resources: Physics2D.Raycast, Ray class, RaycastHit2D class.


directionThe direction of the ray in world space.
originThe starting point of the ray in world space.


Ray2DCreates a 2D ray starting at origin along direction.

Public Methods

GetPointGet a point that lies a given distance along a ray.
ToStringReturns a formatted string for this 2D ray.