Работа с физикой
Last updated
Last updated
Юнити предоставляет возможность настраивать коллизию между объектами слоев при помощи матрицы коллизий. При помощи них можно снизить количество нежелательных коллизий.
В целях оптимизации убираем коллизию между слоями которые по задумке не должны взаимодействовать. И не забываем использовать эти слои.
Если нужно создать какую-то логику на триггерах, то делаем так: на единичных объектах (например игрок) или тех что меньше по кол-ву должен висеть коллайдер (isTrigger или нет, не важно) с rigidbody, а на множественных объектах должен висеть триггер со скриптом, который содержит логику триггера
Некоторые советы по работе с рейкастами:
Используем минимально необходимое количество рейкастов.
Не увеличиваем длину луча больше чем необходимо, длина луча влияет на производительность
Не используем рэйкасты внутри апдейтов, без необходимости
Используй layerMask для ограничения того, с чем сталкивается луч. Если необходимо, чтобы луч пересекался со всеми слоями кроме тех, что мы задаем в layerMask - используем оператор ~ для битовой маски (~layerMask.value)