C#
Помогите, делаю игру 2д юнити!!!
Я хочу сделать спавн шаров, которые дают урон главному герою 2д, от них нужно уворачиваться наверх и вниз, но когда я создаю в иерархии вариант 1 и в этом варианте point1 и point1(шары эти) и таких вариантов должно быть 3, я копирую один вариант и он дублируется, тоесть этих плинтов не 2 а 4 теперь, а мне нужно СКОПИРОВАТЬ чтобы сделать много вариантов а оно ДУБЛИРУЕТСЯ, помогите я вас прошу, как мне скопировать, я уже и ctrl+d и c и как ток угодно... Что делать?
Вы хотите создать несколько вариантов с разными шарами, которые дают урон главному герою, но при копировании объектов в иерархии получаете дубликаты.
Предлагаю следующее решение:
Вместо того чтобы просто копировать объекты в иерархии, создайте префабы. Префабы - это механизм в Unity, который позволяет создавать настраиваемые и многократно используемые игровые объекты.
Выберите вариант 1 в иерархии, и перетащите его в папку "Assets" (ресурсы) вашего проекта. Это создаст префаб вашего варианта 1.
Теперь, чтобы создать новые варианты, просто перетащите созданный префаб из папки "Assets" обратно в иерархию. Это создаст новый объект на основе префаба, и вы сможете изменять шары для каждого варианта независимо.
Если вам нужно внести изменения во все варианты сразу, вы можете изменить префаб в папке "Assets", и все объекты, созданные на основе этого префаба, автоматически обновятся.
Используйте этот подход для создания всех вариантов со своими наборами шаров. Вам не придется копировать объекты в иерархии и сталкиваться с проблемами дублирования.
Предлагаю следующее решение:
Вместо того чтобы просто копировать объекты в иерархии, создайте префабы. Префабы - это механизм в Unity, который позволяет создавать настраиваемые и многократно используемые игровые объекты.
Выберите вариант 1 в иерархии, и перетащите его в папку "Assets" (ресурсы) вашего проекта. Это создаст префаб вашего варианта 1.
Теперь, чтобы создать новые варианты, просто перетащите созданный префаб из папки "Assets" обратно в иерархию. Это создаст новый объект на основе префаба, и вы сможете изменять шары для каждого варианта независимо.
Если вам нужно внести изменения во все варианты сразу, вы можете изменить префаб в папке "Assets", и все объекты, созданные на основе этого префаба, автоматически обновятся.
Используйте этот подход для создания всех вариантов со своими наборами шаров. Вам не придется копировать объекты в иерархии и сталкиваться с проблемами дублирования.
Если вы хотите создать копию объекта, но не хотите, чтобы он дублировал все дочерние объекты, вам нужно использовать функцию "Duplicate Without Children" (дублировать без дочерних объектов).
Для этого выберите объект, который вы хотите скопировать, затем зажмите клавишу "Alt" и перетащите его в нужное место в иерархии. Это создаст копию объекта без дочерних объектов.
Если вы хотите создать много копий объекта, вы можете использовать функцию "Duplicate" (дублировать) и затем переместить каждую копию в нужное место в иерархии. Если вы хотите создать много копий объекта с разными названиями, вы можете использовать функцию "Rename" (переименовать) для каждого объекта после копирования.
Для этого выберите объект, который вы хотите скопировать, затем зажмите клавишу "Alt" и перетащите его в нужное место в иерархии. Это создаст копию объекта без дочерних объектов.
Если вы хотите создать много копий объекта, вы можете использовать функцию "Duplicate" (дублировать) и затем переместить каждую копию в нужное место в иерархии. Если вы хотите создать много копий объекта с разными названиями, вы можете использовать функцию "Rename" (переименовать) для каждого объекта после копирования.
Я бы программно спавнил.
//скрипт вешается на пустой объект либо на камеру
public GameObject circle;
public float deltaTimeSpawn = 2.0f;
public float timeToDestriyCircle = 10.0f;
// Start is called before the first frame update
void Start()
{
if (circle != null)
{
StartCoroutine(Spawn());
}
}
// Update is called once per frame
void Update()
{
}
IEnumerator Spawn()
{
while (!finish)
{
GameObject go = Instantiate(circle, Vector3.up * Random.Range(-5.0f, 5.0f), Quaternion.identity);
Destroy(go, timeToDestriyCircle);
yield return new WaitForSeconds(deltaTimeSpawn);
}
}
Похожие вопросы
- Кто шарит в играх на юнити, помогите
- Всем привет , проблема с юнити файлом
- Можно ли считать расстояние до LayerMask в юнити?
- Сделал код в юнити, но он не работает. Как исправить ошибку?
- Нужен человек для Юнити
- Скрипт на юнити 3д
- Скрипт на юнити 3д
- Пишет The name 'lastX' does not exist in the current context подскажите пжл что делать.ЮНИТИ
- Подскажите ГеймДев вуз для программиста, C# Юнити либои С++ Unreal Engine (Желательно хорошие/максимально хорошие)
- Как наложить сразу несколько текстур на модель Юнити?