Unity Ray 射線


射線:射線是3D世界一個向一個方向發射的一條無終點的線,在發射軌跡中與其他物體發生碰撞時,它將停止發射。

用途:射線范圍比較廣,多用於碰撞檢測(如:子彈飛行是否擊中目標)、角色移動等。

Ray是一個結構體:

變量:

Direction:射線的方向

Origin:射線的起點。

構造函數:

Ray:構造一條射線。

方法:

GetPoint:返回距離單位沿射線點。

ToString:轉換成字符串。

相關API:

Ray ray=Camera.main.ScreenPointToRay(Vector3 Pos):返回一條射線由攝像機近裁面發射經過Pos的射線。

Ray ray=Camera.main.ViewportPointToRay(Vector3 Pos):返回一條射線Ray從攝像機到視口(視口外無效)指定一個點。

RaycastHit 光線投射碰撞信息:

barycentricCoordinate:碰到的三角形的重心坐標。

collider:碰到的碰撞器。

distance:從射線到碰撞點的距離。

lightmapCoord:在觸碰點的UV光照貼圖的坐標。

normal:射線觸碰表面的法線。

point:在世界坐標空間,射線碰到碰撞器的接觸點。

rigidbody:碰到的該碰撞器上的剛體。如果碰撞器沒有剛體則返回null。

textureCoord:在觸碰點的UV紋理坐標。

textureCoord2:在接觸點處的第二套UV紋理坐標。

transform:碰到的該剛體或碰撞器的變換。

triangleIndex:碰到的三角形索引。

Bool :Physics.Raycast(Ray ray,out RaycastHit);


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM