91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Raycasting光線投射

發布時間:2020-07-04 19:26:39 來源:網絡 閱讀:2231 作者:Aonaufly 欄目:開發技術

游戲開發人員可以使用光線投射,用于像瞄準,確定視線,測量距離之類的動作。Unity當中的Raycast的重載有很多。現在展示最常用的2中方法

bool Raycast( Vector3 origin , Vector3 direction , float distance ,LayerMask mask );

參數解釋
 origin : 是光線的開始位置
 direction : 光線的方向
 distance : 光線行進的距離(可為null)
 mask : 確定光線會撞上哪一層(可為null)


如果要確定攝像機前確定是否有某個物體,可以用如下代碼

void Update(){
    if (Physics.Raycast(transform.position , transform.forward , 10 )){
        print("there is something in front of the camera!");
    }
}

注意此代碼放在camera中


另一個

bool Raycast( Vector3 origin , Vector3 direction , out RaycastHit hit , float distance );

這個重載方法使用了一個RaycastHit類型的參數 , 它是光線碰撞到的對象

void Update(){
    float dirX = Input.GetAxis("Mouse X");
    float dirY = Input.GetAxis("Mouse Y");
    transform.Rotate(dirY , -dirX , 0 );
    UptateRaycastHit();
}
void UpdateRaycastHit(){
    RayCastHit hit;
    if( Physics.Raycast( transform.position , transform.forward , out hit ) ){
        Distroy( hit.collider.gameObject )
    }
}


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

扶绥县| 镇安县| 沂源县| 本溪| 陇南市| 兰州市| 泸西县| 漳州市| 神农架林区| 安平县| 辉县市| 余姚市| 额济纳旗| 萨嘎县| 栾川县| 永靖县| 靖江市| 盐源县| 许昌市| 华坪县| 泽普县| 元氏县| 浑源县| 溧阳市| 含山县| 东宁县| 密云县| 安达市| 北辰区| 德钦县| 双流县| 清丰县| 本溪市| 沙河市| 大英县| 南通市| 郓城县| 无棣县| 永登县| 莲花县| 独山县|