Юнити враг проходит сквозь стены

raycast зрение противника

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Убийство противника,врага Unity C# Collider and Raycast
Добрый день друзья подскажите пожалуйста как решить проблемку. Есть персонаж и два врага. Персонаж.

ИИ противника
Хотел научиться создавать искусственный интеллект и сразу же столкнулся с проблемой, как мне.

RayCast
Для осуществления взаимодействия между миром и игроком использую «рейкаст». Работает нормально, НО.

Raycast
Здравствуйте! хотел сделать приложение типа галерея через drag and drop получилось только вот не.

Скорее всего имитация угла обзора. А то враг если будет смотреть только вперёд, то не заметит игрока, стоящего рядом сбоку.
В таком случае оптимальнее было бы сначала определить — находится ли объект в поле видимости в принципе, например как описано в этой статье в самом низу (одна строчка кода)
https://poqxert.ru/blog/unity/. iya-i-ugol

а затем уже пустить один луч, чтобы убедится — не заслоняет ли цель преграда.

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Raycast 2D
Здравствуйте, возможно вопрос глупый, но я не так давно работаю в Unity. Можно ли с помощью луча.

Движение противника.
Пишу игру-типичный и самый обычный лабиринт. Столкнулся с такой проблемой, захотел сделать.

Raycast vs OnCollisionEnter
Здравствуйте! В больнинстве видеоуроков когда Player прыгает то для того чтобы понять.

Не бесконечный Raycast
Имеется вот такой код на raycast: Ray ray = Camera.main.ScreenPointToRay (Input.mousePosition);.

Исходники RayCast
Здравствуйте. Подскажите в каком направлении копать. В общем мне нужно вывести вызов RayCast в.

Не работает RayCast
Здравствуйте, противник должен когда подходит к персонажу останавливаться, вроде как работает, но.

Источник

Unity: игрок почему-то проходит сквозь твердые объекты

У меня есть игрок с компонентами: Rigidbody2d и 2d box collider , а также есть с такими же компонентами ящики. У меня почему-то игрок проходит сквозь ящики, но такого не должно быть.
Скрин с настройками компонентов игрока: http://joxi.ru/4AkvDWEFypp0M2
Скрипт передвижения игрока:

Особенность: если ящик стоит на месте, то через него не получается пройти, а если ящик двигается — то игрок проходит сквозь (не сразу, но проходит)

Скрипт движения ящика:

1 ответ 1

Как правильно заметил Виталий, надо двигать объекты через физику, а не перемещать его мгновенно. Для этого наиболее удобно будет подходить Rigidbody2D.MovePosition. Делаете все то же самое только изменяете позицию не напрямую в трансформ, а говорите ригидбоди чтобы он изменял позицию. Есть подобный метод и для вращения.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками unity3d или задайте свой вопрос.

Похожие

Подписаться на ленту

Для подписки на ленту скопируйте и вставьте эту ссылку в вашу программу для чтения RSS.

дизайн сайта / логотип © 2021 Stack Exchange Inc; материалы пользователей предоставляются на условиях лицензии cc by-sa. rev 2021.9.13.40199

Нажимая «Принять все файлы cookie» вы соглашаетесь, что Stack Exchange может хранить файлы cookie на вашем устройстве и раскрывать информацию в соответствии с нашей Политикой в отношении файлов cookie.

Источник

Проблема стрельбы врагов через стены по игроку в TDS Unity2D (игра с видом сверху)

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Вспышка после выстрела в TDS игре на Unity2D (игра с видом сверху)
Я хочу сделать вспышку после выстрела в игре. Но не знаю как это реализовать и не знаю где брать.

Наведения врага на игрока оружием в TDS ( игра с видом сверху) в Unity2D
Я хочу сделать чтобы враг наводился на игрока за которого я управляю и начинал стрелять! Но не знаю.

Дистанция стрельбы в TDS игре на unity2D (вид сверху)
Я хочу сделать так, чтобы когда игрок приближался на определенную дистанцию к врагу, то он начинал.

NavMesh в Unity2D (игра с видом сверху
У меня проблема! Я хочу сделать чтобы враги обходили стены. Но я не знаю как это реализовать. На.

Asort, добрый день!

Попробуй реализовать проверку на видимость с помощью raycast. То есть вы бросаете луч от игрока к врагу или наоборот и проверяете встаёт ли между ними какой либо объект и задаёте свою логику обработки этого события. На сайте API скриптов Unity есть пример реализации.

Источник

unity. физический объект проходит через стену

наверно подход не правильный со сменой позиции физ-объекта персонажа при помощи transform. есть физ. объекты-враги, есть физ. объект-персонаж, есть стены, тоже(пока, может не надо) с rigidbody, у всех коллайдеры, на персонаже в rigidbody заблочены Rigidbody ->Constraints ->Freeze по всем позициям и вращениям(иначе враги начинают его крутить-вертеть, а я хочу зафиксировать смещение персонажа по любой из осей при взаимодействии с врагами), персонаж перемещается не Rigidbody.AddForce, а через translate:

результат: персонаж проходит через стены

цель — исключить проход персонажа через стены

1 ответ 1

«Статичный коллайдер (Static Collider) Это игровой объект, у которого есть коллайдер, но нету Rigidbody. Статичные коллайдеры используются для геометрии уровней, которая всегда стоит на месте и совсем не двигается. Встречные Rigidbody объекты будут врезаться в статичный коллайдер, но его не сдвинут.» https://docs.unity3d.com/ru/530/Manual/CollidersOverview.html

Уберите Rigidbody со стен, но оставьте коллайдер, тогда персонаж с коллайдером не будет проходить сквозь стены. Также для статических объектов (для оптимизации, например, освещения) в инспекторе в правом верхнем углу ставим галочку static. https://docs.unity3d.com/ru/530/Manual/StaticObjects.html

Всё ещё ищете ответ? Посмотрите другие вопросы с метками unity3d или задайте свой вопрос.

Похожие

Подписаться на ленту

Для подписки на ленту скопируйте и вставьте эту ссылку в вашу программу для чтения RSS.

дизайн сайта / логотип © 2021 Stack Exchange Inc; материалы пользователей предоставляются на условиях лицензии cc by-sa. rev 2021.9.13.40199

Нажимая «Принять все файлы cookie» вы соглашаетесь, что Stack Exchange может хранить файлы cookie на вашем устройстве и раскрывать информацию в соответствии с нашей Политикой в отношении файлов cookie.

Источник

Персонаж проходит сквозь стену (Коллайдеры стоят) [дубликат]

  1. Коллайдеры стоят на всём;
  2. RigidBody стоит только на мне;

Изначально использовал метод перемещения такой :прибавлял к *.position transform.forward/right. Но сейчас возникла проблема, иногда при «столкновении» с объектом я прохожу через стену. Главное предположение — тонкий коллайдер, т.е. у меня прибавление к позиции гораздо больше толщины, но возникает проблема другая, что нужно сделать, чтобы не возникала такая проблема. Вектор изменить не могу, т.к. скорость измениться, а толщину Коллайдера тоже, так как придётся переделывать некоторые модельки. Пробовал через AddForce, но мешает ускорение, так же пытался использовать *.velocity, но не могу одновременно идти, например, прямо и вправо.

Можете посоветовать другие способы передвижения(AWSD)?

2 ответа 2

Формально значения берутся со стрелочек или с штурвальчика на геймпаде и возможно с WASD — но не уверен, а проверять влом. ( Input.GetAxis («Horizontal»); ) от такого кода не будет постоянного ускорения как видно из официального видеопримера.

Изменение параметров указанных в ответе Stranger in the Q приведет к лишним затратам ресурсов. Это делать нежелательно. Но допустимо если движение изначально реализованы по-человечески, а не через «телепортацию», как в даном случае.

пытался использовать *.velocity, но не могу одновременно идти, например, прямо и вправо.

Через Volocity так же можно сделать движение и в том числе диагональное, как того хочется.

Уверяю, в интернете можно найти примеры. Вот код из головы который поддерживает бег по диагонали, который можно попробовать довести до толка:

Источник

Читайте также:  Краска для стен по дереву для наружных работ
Оцените статью