Понедельник, 25 Ноября 2024, 15:42

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Игрок проходит сквозь стены
Gotor228Дата: Суббота, 02 Марта 2024, 11:55 | Сообщение # 1
уже был
Сейчас нет на сайте
Игрок(капсула проходит сквозь стены, колайдеры висят, риджетбади висят только на игроке
когда он ил=дет к стена она его потихоньку выталкивает, но это ему не капли не мешает пройти через нее
https://youtu.be/IwHONk-X1FM

что делать?


Сообщение отредактировал Gotor228 - Суббота, 02 Марта 2024, 11:56
mihailshДата: Четверг, 07 Марта 2024, 12:00 | Сообщение # 2
был не раз
Сейчас нет на сайте
Мне думается, надо двигать через rigidbody.
Тут снизу как двигать физ объекты. move objects
CoreДата: Четверг, 07 Марта 2024, 14:58 | Сообщение # 3
заслуженный участник
Сейчас нет на сайте
Движение игрока обычно реализуют через RigidBody.velocity



Сообщение отредактировал Core - Четверг, 07 Марта 2024, 15:14
CoreДата: Четверг, 07 Марта 2024, 15:10 | Сообщение # 4
заслуженный участник
Сейчас нет на сайте
Цитата mihailsh ()
Мне думается, надо двигать через rigidbody.

mihailsh, На видео как раз используется MovePosition из RigidBody. Так же все методы по ссылке, которую вы дали, либо не подходят для реализации движения игрока вообще (SmoothDamp, Lerp), либо изменяют позицию напрямую, что вызывает тряску и прохождение сквозь стены. Повторюсь - используйте velocity :)




Сообщение отредактировал Core - Четверг, 07 Марта 2024, 15:13
mihailshДата: Четверг, 07 Марта 2024, 21:15 | Сообщение # 5
был не раз
Сейчас нет на сайте
Цитата Core ()
Так же все методы по ссылке, которую вы дали, либо не подходят для реализации движения игрока

Снизу же. - How to move an object using physics.
Статья большая.
CoreДата: Четверг, 07 Марта 2024, 23:07 | Сообщение # 6
заслуженный участник
Сейчас нет на сайте
Там только AddForce рассматривается, который прибавляет velocity каждый раз, когда ты его вызываешь. Не очень хороший вариант. Придется писать ограничение для ускорения, чтобы игрок при долгом нажатии в космос не улетал.

mihailshДата: Пятница, 08 Марта 2024, 01:21 | Сообщение # 7
был не раз
Сейчас нет на сайте
Цитата Core ()
ам только AddForce рассматривается, который прибавляет velocity каждый раз


MovePosition еще есть. а вот задание скорости почему-то они не учли. жаль. Надеюсь видео помогло вопрошающему.


Сообщение отредактировал mihailsh - Пятница, 08 Марта 2024, 01:31
tacДата: Суббота, 01 Июня 2024, 20:03 | Сообщение # 8
уже был
Сейчас нет на сайте
Похоже тут так и не ответили на вопрос, как не допустить прохождения через стены. Давайте только уточним, что двигаемся без физики, как в примере из туториала:

public float speed = 2;

void Update()
{
float x = Input.GetAxis("Horizontal");
float z = Input.GetAxis("Vertical");

Vector3 movement = new Vector3(x, 0, z);
movement = Vector3.ClampMagnitude(movement, 1);

transform.Translate(movement * speed * Time.deltaTime);
}
  • Страница 1 из 1
  • 1
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг