Создание объектов

Форум для самых маленьких, а так же тех, кому недосуг читать справку самостоятельно.

Создание объектов

Сообщение s4Unknown 18 авг 2019, 14:37

Всем привет, я новичок(Вам это не важно:)))

Сразу к вопросу:

Как создать объекты через двойной цикл, чтобы они не накладывались друг на друга. (Нужно сделать типа сетки)
У меня получается так:
[img]
https://ibb.co/n0trdcV
https://ibb.co/0V9H8dD
https://ibb.co/94tyz97
[/img]

Синтаксис:
Используется csharp
using UnityEngine;

public class GenerateMap : MonoBehaviour
{
    public GameObject Prefab;
    [SerializeField]
    private int Size = 5;
    private void Start()
    {
        Generate();
    }

    private void Generate()
    {
        for(int x = 0; x < Size; x++)
        {
            for(int z = 0; z < Size; z++)
            {
                GameObject obj = Instantiate(Prefab, transform) as GameObject;
                Vector3 pos = new Vector3(x, 0, z);
                obj.transform.position = pos;
            }
        }
    }
}
 
s4Unknown
UNец
 
Сообщения: 6
Зарегистрирован: 18 авг 2019, 14:15

Re: Создание объектов

Сообщение AngryCat 18 авг 2019, 17:09

Вот код:
Синтаксис:
Используется csharp
using UnityEngine;

public class GenerateMap : MonoBehaviour
{
    public GameObject Prefab;
    [SerializeField]
    private int Size = 5;
    public float deltaX = 5; //Это размер твоего объекта по Иксу
    public float deltaZ = 5; //Это размер по Зеду

    private void Start()
    {
        Generate();
    }

    private void Generate()
    {
        for(int x = 0; x < Size; x++)
        {
            for(int z = 0; z < Size; z++)
            {
                GameObject obj = Instantiate(Prefab, transform) as GameObject;
                Vector3 pos = new Vector3(x * deltaX, 0, z * deltaZ);
                obj.transform.position = pos;
            }
        }
    }
}

Вообще, есть и более цивильные способы, например, использование сетки!
Здесь могла бы быть ваша реклама.
Аватара пользователя
AngryCat
Старожил
 
Сообщения: 716
Зарегистрирован: 20 июл 2018, 22:29
Skype: Дискорд - Флеш#4099


Вернуться в Почемучка

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 22