Top.Mail.Ru
Ответы

Как написать спавн предмета в точке. юнити

есть абстрактный предмет который должен спавниться в точке прикреплённой к игроку

По дате
По рейтингу
Аватар пользователя
Мудрец
8мес

Шаг 1: Создание префаба
Создайте префаб вашего предмета (например, куб или другой объект) и сохраните его в папке Assets.
Шаг 2: Создание объекта спавна
В окне «Иерархия» создайте пустой объект (Create Empty) и назовите его, например, «Точка появления».
Переместите этот объект в нужное место, где вы хотите, чтобы он появился (например, рядом с игроком).
Шаг 3: Написание скрипта
Создайте новый скрипт C# и назовите его, например, ItemSpawner. Присоедините этот скрипт к объекту SpawnPoint. Внутри скрипта напишите следующий код:
csharp

123456789101112131415161718192021
 using UnityEngine; 
 
public class ItemSpawner : MonoBehaviour 
{ 
    public GameObject itemPrefab; // Префаб предмета 
    public Transform player; // Ссылка на игрока 
 
    void Update() 
    { 
        if (Input.GetKeyDown(KeyCode.Space)) // Спавн при нажатии пробела 
        { 
            SpawnItem(); 
        } 
    } 
 
    void SpawnItem() 
    { 
        // Спавн предмета в позиции спавнера 
        Instantiate(itemPrefab, transform.position, Quaternion.identity); 
    } 
} 

Шаг 4: Настройка инспектора
Перейдите в Inspector для объекта SpawnPoint, куда вы добавили скрипт ItemSpawner.
Перетащите ваш префаб предмета в поле Префаб предмета.
Убедитесь, что поле Player ссылается на ваш игровой объект игрока.

Аватар пользователя
Просветленный
8мес

Создать GameObject через Instantiate и затем созданный объект сделать дочерним по отношению к точке через transform.