3d форум по Blender

Blender => Вопросы от новичков => Тема начата: Moorven от 01 Октябрь 2023, 11:39:10

Название: Открывание двери в BGE
Отправлено: Moorven от 01 Октябрь 2023, 11:39:10
Как сделать автоматическое открывание двери если герой находится рядом с ней в BGE?
Название: Re: Открывание двери в BGE
Отправлено: sungreen от 01 Октябрь 2023, 12:07:58
Можешь уточнить у тебя bge или upbge, и что имено не получается?
По сути нужно сделать Collision Sensor https://upbge.org/#/documentation/docs/latest/manual/manual/logic/sensors/types/collision.html
Название: Re: Открывание двери в BGE
Отправлено: Moorven от 01 Октябрь 2023, 14:06:52
Наверное bge, версия блендера 2.79
Название: Re: Открывание двери в BGE
Отправлено: sungreen от 01 Октябрь 2023, 15:13:03
у тебя что-то уже сделано? что не получается?
Название: Re: Открывание двери в BGE
Отправлено: Moorven от 02 Октябрь 2023, 10:21:38
Да сделано, попробовал через коллизию и вроде бы получилось, но теперь другая проблема - я касаюсь двери и запускается анимация открытия, но сквозь дверной проём я всё-равно не могу пройти т.к. коллайдер остался на месте дверного проёма.

Пробовал привязать отдельный невидимый объект с к самой двери через три вершины на ней но в режиме тестирования он куда то смещается в сторону и не двигается с анимацией двери
Название: Re: Открывание двери в BGE
Отправлено: sungreen от 02 Октябрь 2023, 13:55:24
выложи модель, так будет быстрее понять проблему
Название: Re: Открывание двери в BGE
Отправлено: Moorven от 02 Октябрь 2023, 14:02:18
https://disk.yandex.ru/d/ZHr3rLBrrkUriQ (https://disk.yandex.ru/d/ZHr3rLBrrkUriQ)
Название: Re: Открывание двери в BGE
Отправлено: sungreen от 02 Октябрь 2023, 18:44:53
скачал, смотрю, можешь еще описать логику дверей - они всегда открываются при приближении перса или нужно что-то делать? если для открытия двери нужно только к ней подойти и другого ничего не нужно, то можно будет использовать другую логику ...
Название: Re: Открывание двери в BGE
Отправлено: Mihanik от 03 Октябрь 2023, 08:00:16
Тоже скачал посмотрел,  у меня есть версия upbge на исходниках 2.78, так вот там всё работает, за исключением, того, что, когда перс подходит,  дверь начинает постоянно опускаться подниматься. но пройти через неё можно. С логикой пока не разбирался, некогда... может вечером тож чего предложу...

ЗЫ:А ну да в коллизию тыкаешься пока она не поднимется.
Название: Re: Открывание двери в BGE
Отправлено: sungreen от 03 Октябрь 2023, 08:19:19
Тут как раз нужно чтобы автор пояснил задуманную логику. Есть несколько вариантов, например запустить анимацию открытия-закрытия двери и не дожидаться пока перс пройдет или запустить анимацию открытия двери, подождать пока перс пройдет и запустить анимацию закрытия двери. Еще вариант - открыть и не закрывать (совсем просто и тоже может не противоречить сюжету).
Поскольку по сюжету нажимать ничего не нужно, то предлагаю использовать сенсор Near, по нему можно отловить два события "приблизился к двери ближе чем на ..." и удалился от двери дальше чем на ...". Но событие повесить не на саму дверь, а на портал. Это позволит избежать смещения зоны взаимодействия из-за перемещения двери вверх или вниз.
Для какой логики готовить пример?

ЗЫ: Можно проработать несколько вариантов открытие-закрытие двери, поскольку и для Насти тоже потребуется.
Название: Re: Открывание двери в BGE
Отправлено: Moorven от 03 Октябрь 2023, 09:15:53
Давайте тогда через сенсор Near попробуем сделать.

И ещё мне кажется было бы неплохо движение двери сделать не через анимацию а с помощью смещения по оси Z до определённых значений (верх и низ), тогда такую дверь можно будет дублировать без создания отдельной анимации для каждой двери.
Название: Re: Открывание двери в BGE
Отправлено: sungreen от 03 Октябрь 2023, 09:25:10
https://disk.yandex.ru/d/BSZy3nyp2Otang
Название: Re: Открывание двери в BGE
Отправлено: sungreen от 03 Октябрь 2023, 09:49:08
>> И ещё мне кажется было бы неплохо движение двери сделать не через анимацию а с помощью смещения по оси Z

программист?
Название: Re: Открывание двери в BGE
Отправлено: Moorven от 03 Октябрь 2023, 09:55:54
Скорее нет чем да, с питонами не знаком совсем :)
Название: Re: Открывание двери в BGE
Отправлено: sungreen от 03 Октябрь 2023, 12:26:54
Файл заменил https://disk.yandex.ru/d/BSZy3nyp2Otang .
Пример содержит две двери. Двери можно добавить, если выделить одновременно Potal+Door и сделать Shift+D, далее в логике портала указать на какую дверь посылается сообщение "open".

Название: Re: Открывание двери в BGE
Отправлено: Moorven от 03 Октябрь 2023, 16:53:13
Странно, у меня почему то перестал двигаться герой.

Хотя кирпичи управления вроде бы прежние остались.  :-\
Название: Re: Открывание двери в BGE
Отправлено: sungreen от 03 Октябрь 2023, 16:56:04
в твоем файле? там случайно раскладка клавы не влияет
Название: Re: Открывание двери в BGE
Отправлено: Moorven от 04 Октябрь 2023, 09:12:07
Мне кажется это может быть связанно с версией блендера, т.е. из старой в новую импортируется без проблем а обратно может работать не корректно.
Название: Re: Открывание двери в BGE
Отправлено: sungreen от 04 Октябрь 2023, 10:57:26
мы с тобой в одной версии работаем, 2.79, не так ли?
Название: Re: Открывание двери в BGE
Отправлено: Moorven от 05 Октябрь 2023, 08:46:16
Да, получается что в одной. Тогда не знаю с чем может быть связан баг  ???
Название: Re: Открывание двери в BGE
Отправлено: sungreen от 05 Октябрь 2023, 12:03:52
чем я могу тебе помочь?
Название: Re: Открывание двери в BGE
Отправлено: Moorven от 05 Октябрь 2023, 14:28:06
sungreen, спасибо! я могу просто посмотреть принцип которым ты открывал дверь и попробовать скопировать его в свой исходник.
Название: Re: Открывание двери в BGE
Отправлено: sungreen от 05 Октябрь 2023, 15:56:17
упс, я так и думал, что ты посмотришь как это сделано и скопируешь к себе, у меня твои человечки с самого начала не работали ...

если тебя дверь устраивает, то выстави еще раз свой рабочий файл, я впилю дверь в него и отдам тебе рабочий, без вопросов ...
Название: Re: Открывание двери в BGE
Отправлено: sungreen от 06 Октябрь 2023, 05:12:23
Вот еще вариант двери через арматуру
https://disk.yandex.ru/d/4UbVxchnKoe6zA
Суть - объектов стало больше, но логика проще.
Арматура принимает событие от сенсора Near при приближении объекта со свойством pers и запускает перемещение своей единственной кости.
Дверь и портал привязаны к арматуре. Двери еще привязана к кости, что заставляет её подниматься при открытии.

Теперь двери можно копировать и расставлять по локации. Они должны автоматом открываться при приближении перса. Для коприрования через шифт выдели AutoDoor, A_Door, A_Portal и сделай Shift+D. Далее перемести созданную новую арматуру AutoDoor.xxx в требуемое место.
Название: Re: Открывание двери в BGE
Отправлено: Moorven от 06 Октябрь 2023, 09:49:08
sungreen, спасибо! попробую)