Перемешивание массива в Unity3D

308
14 февраля 2018, 08:56

Добрый всем день. Решил написать пятнашки на Unity3D, но застрял и приуныл. Хотел реализовать рандомное перемешивание пятнашек, но не могу понять где ошибаюсь, так что выручайте.

Вот так я планирую чтобы они у меня выглядели в начале:

А вот так я хочу их перемешать:

Итог при любых моих попытках реализовать всегда такой:

Получается, что часть фишек всегда залазит друг на друга.

public class Primer : MonoBehaviour {
    private GameObject[] plastinka;
    private GameObject[] newObject;
    private Transform[] plastinkatransform;

    void Start () {
        newObject = GameObject.FindGameObjectsWithTag("Plastinka");
        plastinka = GameObject.FindGameObjectsWithTag("Plastinka");
        plastinkatransform = new Transform[16];
        for (int i = 0; i < plastinka.Length; i++)
        {
           plastinkatransform[i] = plastinka[i].transform;
          }
        Shuffle(plastinkatransform);
      //  var random = new System.Random(DateTime.Now.Millisecond);
      // plastinka = plastinka.OrderBy(x => random.Next()).ToArray();
       for (int i = 0; i < plastinka.Length; i++)
        {
         newObject[i].transform.position = plastinkatransform[i].position;}
    void Shuffle(Transform[] deck)
    {
        for (int i = 0; i < deck.Length; i++)
        {
            Transform temp = deck[i];
            int randomIndex = UnityEngine.Random.Range(0, deck.Length);
            deck[i] = deck[randomIndex];
            deck[randomIndex] = temp;
        }
    }
Answer 1

Всем спасибо за комментарии, в итоге оказалось, что нужно перемешать массив состоящий из Vector3. Видно я не полностью понимаю как работает GameObject.transform.

READ ALSO
Очень долгое выполнение запросов через DbContext

Очень долгое выполнение запросов через DbContext

Стоит PostgreSQLВ ней таблица с чуть более, чем 300 тысяч строк

199
C# Ribbon сохранение и восстановление Quick Acces ToolBar item&#39;ов

C# Ribbon сохранение и восстановление Quick Acces ToolBar item'ов

Я работаю с элементом Microsoft Ribbon WPF 2010

223
Как правильно принимать файлы в Angular c ASP.NET Core Web API?

Как правильно принимать файлы в Angular c ASP.NET Core Web API?

У меня есть файл на сервере, который я хочу отправить клиентуЯ отправлю его так

306
сериализация xml

сериализация xml

При сериализации xml выкидывает ошибку !

217