我想要做的是找到一種方法來知道播放器的左側/右側是否有東西,但由于某種原因,我的代碼不起作用。
Vector3 rayDirection = new Vector3();
switch (currentCameraSide)
{
case CameraSide.Left:
rayDirection = -transform.right;
break;
case CameraSide.Right:
rayDirection = transform.right;
break;
}
// Start the ray pos from the player's head
Vector3 playerStartPoint = transform.position (transform.up * 1.5f);
// The direction of the ray (left/right)
Vector3 playerEndPoint = playerStartPoint rayDirection;
if (Physics.Raycast(playerStartPoint, playerEndPoint, out RaycastHit raycastHitA, sideCameraRayLenght, aimColliderMask))
{
Debug.Log($"Hitting: {raycastHitA.transform.name}");
}
基本上發生的事情是無論玩家面對什么方向,擊中的方向總是左邊(可能的世界坐標?)
uj5u.com熱心網友回復:
Raycast 以您使用它期望的形式
- 一個開始位置
- 一個方向
你給它兩個位置......
-> 簡單地使用它rayDirection自己作為第二個引數
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/336653.html
