Довідники Unity C# Instantiate

Що таке Instantiate в Unity C#?

Метод Instantiate у Unity використовується для створення копій об'єктів під час виконання гри. Це дозволяє динамічно додавати об'єкти в сцену, такі як вороги, кулі чи будь-які інші елементи, необхідні для геймплею. Метод працює з будь-якими об'єктами типу UnityEngine.Object, включаючи префаби, ігрові об'єкти та компоненти.


Основні характеристики методу Instantiate
  1. Створення копій: Метод створює точну копію вказаного об'єкта. Оригінал об'єкта залишається незмінним.
  2. Підтримка різних типів: Може працювати з об'єктами GameObject, компонентами та будь-якими нащадками класу UnityEngine.Object.
  3. Гнучкість: Дозволяє задавати позицію та обертання створюваного об'єкта.
using UnityEngine;

public class Spawner : MonoBehaviour
{
    public GameObject enemyPrefab; // Префаб ворога
    public Transform spawnPoint;  // Точка спавну

    // Метод для спавну об'єкта
    void Start()
    {
        // Створюємо об'єкт у вказаній позиції та з вказаним обертанням
        GameObject enemy = Instantiate(enemyPrefab, spawnPoint.position, spawnPoint.rotation);
        Debug.Log("Об'єкт створено: " + enemy.name);
    }
}


Додаткові можливості методу Instantiate
  1. Батьківський об'єкт: Ви можете вказати батьківський об'єкт для створюваного екземпляра, щоб керувати його ієрархією.
  2. Передача параметрів: Instantiate підтримує перевантаження, дозволяючи вказувати лише об'єкт, об'єкт з позицією та обертанням, або об'єкт з батьком.
using UnityEngine;

public class AdvancedSpawner : MonoBehaviour
{
    public GameObject enemyPrefab; // Префаб ворога
    public Transform parentTransform; // Батьківський об'єкт

    void Start()
    {
        // Створюємо об'єкт із зазначенням батька
        GameObject enemy = Instantiate(enemyPrefab, parentTransform);
        Debug.Log("Об'єкт створено з батьком: " + parentTransform.name);
    }
}
Коментарі
Додати коментар

Поки що коментарів немає