Пятница, 01 Ноября 2024, 22:33

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

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Камера проходить сквозь стены
radionДата: Суббота, 02 Января 2016, 17:17 | Сообщение # 1
частый гость
Сейчас нет на сайте
Здравствуйте, появилась очевидная проблема. Проект на андроиде. Камера персонажа проходит сквозь стену. В тырнетах не смог найти ответ. К сожалению в программировании я не силен. Кто подскажет готовое решение? Как я понял, что нужно повесить скрипт, который будет проверять рэйкастами стены. Есть у кого нибудь? Буду очень благодарен
Dj_FroZTBiteДата: Суббота, 02 Января 2016, 17:48 | Сообщение # 2
Серебряная душа
Сейчас нет на сайте
Если ваша игра - FPS (От первого лица), перейдите к камере контроллера. В компонентах камеры найдите параметр Clipping Planes и измените значение на 0.01
Если ваша игра - TPS (От третьего лица), перейдите в создание объектов и создайте пустой (Create Empty). Присвойте пустому объекту компонент Box Collider (Нажать на Empty объект - Add Component - Box Collider в поиске). Задайте пустышке одинаковое положение с камерой. Далее, сделайте камеру дочерней по отношению к пустому объекту (В иерархии натяните камеру прямо на пустышку - они должны сгруппироваться так, что сверху будет пустой объект, а как бы в нём - камера).
Если что-то не так - отсоедините камеру от пустышки оттягиванием в иерархии и подвиньте пустышку. Снова соедините. [Помните, камера будет ПОД пустышкой!]

Плюсик в репутацию за помощь angel


Рук нет, есть только кривые культяпки.
radionДата: Суббота, 02 Января 2016, 18:18 | Сообщение # 3
частый гость
Сейчас нет на сайте
Спасибо, проблема решена! + Вам
SteelBeaRДата: Воскресенье, 13 Октября 2019, 20:05 | Сообщение # 4
уже был
Сейчас нет на сайте
Доброго времени суток! У меня очень похожая ситуация с автором данной темы, но вышеперечисленные методы не помогли.

Игра FPS под Android. Управление реализовано через джойстик и тачпад. Персонаж собран из пустышки (Empty), в которую помещена камера.

Персонаж проходит сквозь стены как Каспер. Пробовал добавлять коллизию на пустышку, пробовал на камеру, добавлял внутрь пустышки 3D капсулу с коллизией (чекбоксы на тригер везде отключены), менял у камеры параметр Clipping Planes.
Если на камеру добавить риджитбади - она проваливается сквозь пол. Если отключить в ней гравити (положение персонажа на уровне не меняется по оси Y) - все равно проходит сквозь стены.
Если риджитбади добавить на пустышку - при движении или повороте камеры персонаж улетает в "космос" так быстро, что даже Илон Маск обзавидуется.

Возможно проблема в данном фрагменте кода? (не программист - не силён)

Код
private void CharacterMove()
    {
        transform.Translate(joystick.Horizontal() * Time.deltaTime * speedMove, 0f, 0f);
        transform.Translate(0f, 0f, joystick.Vertical() * Time.deltaTime * speedMove);
    }


Подсобите гениальным решением =)

P.S. Проводил тесты коллизии стен, путем опускания на них шара с риджитбади - работает корректно. По этому сделал вывод что причина кроется в самом персонаже

Добавлено (14 Октября 2019, 00:06)
---------------------------------------------
Добавил в скрипт реализацию Рейкаста и переработал метод перемещения персонажа - все заработало

Сообщение отредактировал SteelBeaR - Воскресенье, 13 Октября 2019, 23:15
  • Страница 1 из 1
  • 1
Поиск:

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