Предотвратить перекрытие созданных игровых объектов в единстве

Я пытаюсь сделать простой 2D платформер в единстве. Мне удалось переместить плеер и все остальное. Проблема, с которой я сейчас столкнулся, заключается в том, что сборные конструкции, которые случайно появлялись в игре, перекрываются. Итак, мой вопрос заключается в том, как предотвратить перекрытие игровых объектов. Префабы, которые я использовал, имеют разные размеры (длину). Вот код С#, который я использовал:

    public class spawnscript : MonoBehaviour {
    public GameObject[] obj;
    public float spawnMin;
    public float spawnMax;

    // Use this for initialization
    void Start () {
        Spawn ();
    }

    void Spawn()
    {
        Instantiate (obj [Random.Range (0, obj.GetLength (0))], transform.position, Quaternion.identity);
        Invoke ("Spawn", Random.Range (spawnMin, spawnMax));
    }
}

вот скриншот игры


person Kiran Balachandran    schedule 06.03.2015    source источник
comment
проблема со зданиями как на картинке   -  person Kiran Balachandran    schedule 06.03.2015
comment
Вам нужен код нереста, чтобы учитывать объекты, которые уже были размещены. К сожалению, без хорошего, минимального, полного примера кода будет очень трудно объяснить, как это сделать так, чтобы это было полезно для вас. Вам также нужно очень четко представлять, как вы хотите размещать объекты, так как эта деталь отсутствует в вашем вопросе. Достаточно ли просто случайным образом выбрать сам объект и разместить его встык в игровом мире? Или вы хотите какое-то другое поведение размещения/разрешения конфликтов? Пожалуйста, будьте конкретны.   -  person Peter Duniho    schedule 06.03.2015


Ответы (1)


person    schedule
comment
Добро пожаловать и продолжайте делать игры :) - person LumbusterTick; 24.03.2015