Как сделать, чтобы при нажатии на персонажа в юнити он говорил фразу
Я новичок в юнити и не могу разобраться Как сделать, чтобы при нажатии на персонажа проигрывался звук скачанный из браузера
Ответы (1 шт):
Автор решения: MSReturn
→ Ссылка
если это для 3D объекта , тогда можно создать луч , Raycast , из камеры в точку нажатия , проверить если луч попал в игрока, тогда можно вызвать метод воспроизводящий mp-3 файл , или иной поддерживаемый формат.
using UnityEngine;
public class ClickSound : MonoBehaviour
{
public AudioClip clickSound;
private void Update()
{
if (Input.GetMouseButtonDown(0))
{
Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
RaycastHit hit;
if (Physics.Raycast(ray, out hit))
{
if (hit.collider != null && hit.collider.gameObject.name == "Player")
{
PlayClickSound();
}
}
}
}
private void PlayClickSound()
{
if (clickSound != null)
{
AudioSource audioSource = GetComponent<AudioSource>();
if (audioSource == null)
{
audioSource = gameObject.AddComponent<AudioSource>();
}
audioSource.PlayOneShot(clickSound);
}
}
}
1.В поле с audioSource перетащите требуемый файл 2.Нужно повесить данный скрипт на игрока , у которого должен быть добавлен компонент MeshColider или какой либо другой колайдер + компонент AudioSource. 3.Поменять имя игрока в скрипте на действительное