Switch back to sphere casting

This commit is contained in:
2022-08-18 12:06:09 -07:00
parent 6c513aafc7
commit 5c88184fec
6 changed files with 54 additions and 30 deletions

View File

@@ -8,17 +8,30 @@ namespace Scampz.GameJam.Assets.Scripts
private float rayCastDistance = 1f;
[SerializeField]
private float rayCastAngle = 45f;
[SerializeField]
private float sphereRadius = 2f;
//public bool IsWithinBounds()
//{
// var offsetAngle = Quaternion.AngleAxis(rayCastAngle, transform.right);
// return Physics.Raycast(transform.position, offsetAngle * transform.forward);
//}
public bool IsWithinBounds()
{
var offsetAngle = Quaternion.AngleAxis(rayCastAngle, transform.right);
return Physics.Raycast(transform.position, offsetAngle * transform.forward);
var ray = new Ray(transform.position, offsetAngle * transform.forward);
return Physics.SphereCast(ray, sphereRadius, rayCastDistance);
}
private void OnDrawGizmosSelected()
{
Gizmos.color = Color.red;
var offsetAngle = Quaternion.AngleAxis(rayCastAngle, transform.right);
Debug.DrawRay(transform.position, offsetAngle * transform.forward * rayCastDistance);
var direction = offsetAngle * transform.forward;
Debug.DrawLine(transform.position, transform.position + direction * rayCastDistance);
Gizmos.DrawWireSphere(transform.position + direction * rayCastDistance, sphereRadius);
}
}
}