CapsuleCast иногда не работает при движении по наклонной плоскостиC#

Место общения программистов C#
Anonymous
CapsuleCast иногда не работает при движении по наклонной плоскости

Сообщение Anonymous »

Я пытаюсь переместиться по горизонтали с помощью следующего кода:

Код: Выделить всё

 Vector3 Move(Vector3 dir_movement, Vector3 position, int i)
{
if (i > maxi)
{
return Vector3.zero;
}

float  dist = dir_movement.magnitude + skinWidth;

float radius = capsuleCollider.radius;
float height = capsuleCollider.height;
Vector3 center = position;
Vector3 bottom = center - transform.up * (height / 2 - radius - skinWidth);
Vector3 top = center + transform.up * (height / 2 - radius - skinWidth);
RaycastHit hit;

if (Physics.CapsuleCast(top, bottom, radius - skinWidth, dir_movement, out hit, dist, layerMask))
{
Vector3 distToSurface = dir_movement.normalized *
(hit.distance - skinWidth);

Vector3 leftOver = dir_movement - distToSurface;

if (distToSurface.magnitude 

Подробнее здесь: [url]https://stackoverflow.com/questions/79857566/capsulecast-sometimes-does-not-work-when-driving-on-an-inclined-plane[/url]

Вернуться в «C#»