Оповещение врага с микрофонным входом C #, Unity - PullRequest
0 голосов
/ 12 ноября 2018

У меня есть код, который берет микрофонный вход и преобразует его в число с плавающей точкой. Теперь мне нужно преобразовать этот вход в радиус в игре. Этот радиус определяет диапазон игроков. Предположим, я заорал в микрофон и получил радиус. Если враг находится в пределах радиуса действия, он получает предупреждение. Может кто-нибудь, пожалуйста, помогите мне сделать это. Создать для этого новый скрипт или мне нужно сделать это в контроллере плеера?

1 Ответ

0 голосов
/ 12 ноября 2018

Я бы порекомендовал, чтобы у вас был один скрипт, запущенный через вашу сущность игрока или в группе «контроллер сцены» (добавленной исключительно для запуска фоновых скриптов), которая содержит ваш скрипт «mic listener». Затем на ваш вражеский префаб добавьте скрипт 'mic data receive'.

1) Используйте FindComponent <> из вашего скрипта 'mic data receive', чтобы найти и получить тома из скрипта 'mic listener', или; 2) Используйте агрегатор сообщений pub / sub в скрипте 'mic listener', который транслирует сообщение с данными mic, а затем попросите класс противника 'mic listener' подписаться на эту информацию и рассчитать входящий / выходящий диапазон в зависимости от громкости Vs. расстояние.

Похоже, ваш основной вопрос касается связи между объектами и того, как организовать «услуги» / производителей информации. произвольные игровые объекты / конфиденциальные потребители информации.
Пройдите поиск лучших методов взаимодействия между объектами, и вы получите лучший ответ из документации команды Unity, чем я когда-либо мог предоставить.

Удачи!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...