Чтобы заспавнить объект в Unity, нужно использовать функцию Instantiate. 25 Она позволяет создавать новые объекты в сцене во время выполнения игры на основе существующих объектов в проекте. 5
Синтаксис функции: Instantiate(Object, position, rotation, parent). 1
Объект (Object) — префаб или игровой объект, который нужно заспавнить. 1 Этот параметр обязателен. 1Положение (position) — позиция, в которой нужно создать объект. 1 Если положение не указано, объект создаётся в расположении игрового объекта сценария, к которому добавлена функция Instantiate. 1Ориентация (rotation) — ориентация созданного объекта. 1 Можно использовать Quaternion.Identity, чтобы создать объект с нулевым вращением. 1Родитель (parent) — трансформ объекта, который нужно установить как родителя созданного игрового объекта. 1
Пример использования функции из скрипта: 2
using UnityEngine;public class InstantiateExample : MonoBehaviour{ public GameObject objectToInstantiate; // Назначаем объект, который нужно заспавнить void Start() { Instantiate(objectToInstantiate) }}
В приведённом коде objectToInstantiate — игровой объект, который нужно заспавнить. 2 Функция вернёт клонированный объект с дефолтными значениями для положения и ориентации. 2
Также можно создать префаб — сохранённый экземпляр игрового объекта, который можно использовать повторно в игровых сценах. 2 Для этого нужно найти игровой объект в окне иерархии, затем перетащить его на пустую область в окне проекта. 2 После этого Unity создаст новый префаб с тем же именем, что и игровой объект. 2 Теперь созданный префаб можно передать в функцию Instantiate для создания нового экземпляра. 2