Форум программистов, компьютерный форум, киберфорум
Unity, Unity3D
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.78/41: Рейтинг темы: голосов - 41, средняя оценка - 4.78
0 / 0 / 0
Регистрация: 05.12.2014
Сообщений: 7

Создание массива массивов разного типа переменных

05.12.2014, 16:27. Показов 7670. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте!
Я новичок в скриптинге (C#), по этому возможно спрошу глупость, так как гугл не дал мне ответа. Задача: создать массив объектов с регулировкой параметров каждого элемента массива. В инспекторе должно выглядеть примерно так:

Object
....size
....Element 0 Gameobject
.....................float
.....................float
.....................int

Уже всю голову сломал как это реализовать.

Не судите строго, просто хочу понять как это делается... Заранее благодарю за ответы!!!!

Добавлено через 14 часов 39 минут
Возможно я не правильно сформулировал вопрос. В общем загорелось мне создать рандомный генератор объектов для определенных зон террейна. То, что у меня пока получилось выглядит так:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
    public float RminX,RmaxX,RminZ,RmaxZ;//Границы значений координат
    public int howObject;// кол-во создаваемых объектов
 
    public List <GameObject> DynamicObject= new List <GameObject>(); //список создаваемых объектов
 
 
    public void Start () {
 
        for (int j = 0; j <= DynamicObject.Count; j++){
 
            for (int i = 0; i <= howObject; i++){
 
                GameObject.Instantiate(DynamicObject[j], new Vector3(Random.Range(RminX,RmaxX),0,Random.Range(RminZ,RmaxZ)),transform.rotation);
            }
        }
    }
В этом коде неудобство в том, что допустим я помещаю в зону несколько объектов в равном кол-ве. Я же хочу добиться, чтобы для каждого объекта листа, как минимум, отдельно настраивался свой howObject (в идеале каждая переменная по отдельности). И еще недочет данного скрипта в том, что я не могу понять как расчитать высоту террейна (координату по оси Y). По умолчанию я указал 0, но это справедливо для ровного террейна без холмов.

Посоветуйте как мне улучшить скрипт согласно поставленной задаче.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
05.12.2014, 16:27
Ответы с готовыми решениями:

Нужен способ помещения разного рода типа данных в контейнеры типа массивов или структур
Сабж. Нужен способ помещения разного рода типа данных в контейнеры типа массивов или структур или... пободного рода простых для восприятия...

Присвоение переменных разного типа
Использую я значит вот такую строку, пытаясь получить возвращаемые данные char и ulong. ULONG ModuleAddress, char ModuleName =...

Сравнение переменных разного типа
Не задача, просто любопытно, почему именно так? static void Main(string args) { int i = 1; decimal j = 1; var...

3
211 / 201 / 63
Регистрация: 24.09.2014
Сообщений: 532
05.12.2014, 17:27
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
[System.Serializable]
public class howData
{
public GameObject DynamicObject;
public int how;
}
public List<howData> DynamicObject = new List<howData>();
 
    public void Start () {
 
        for (int j = 0; j <= DynamicObject.Count; j++){
 
            for (int i = 0; i <= DynamicObject[j].how; i++){
 var point = new Vector3(Random.Range(RminX,RmaxX),0,Random.Range(RminZ,RmaxZ));
point.y = Terrain.activeTerrain.SampleHeight(transform.position);
                GameObject.Instantiate(DynamicObject[j].DynamicObject,point,transform.rotation);
            }
        }
    }
както так
1
0 / 0 / 0
Регистрация: 05.12.2014
Сообщений: 7
05.12.2014, 18:51  [ТС]
arrjj,
Почти то что надо!!! Принцип создания я понял. Так же добавил в класс howData переменные
C#
1
public float RminX,RmaxX,RminZ,RmaxZ;//Границы значений координат
и получил доступ к изменению этих параметров. Также для корректной работы заменил эти переменные в вашем коде на DynamicObject[j].RminX (и т.д.) для того чтобы код увидел эти переменные. Единственное что не сработало, так это определение высоты по оси Y (15 строка вашего кода), значения создаваемых объектов как были 0 так и остались.
0
0 / 0 / 0
Регистрация: 05.12.2014
Сообщений: 7
07.12.2014, 17:03  [ТС]
Проблема с определением высоты террейна так и не решена... Что не так в скрипте? Подскажите пожалуйста...
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
07.12.2014, 17:03
Помогаю со студенческими работами здесь

Определения знака переменных разного типа
Используя перегрузку функций, написать программу определения знака переменных разного типа.

Ввод и вывод переменных разного типа
Вот что у меня получилось: Program blabla; var lambda,pi,fi:real; y:integer; f,x:char; begin writeln('vvedite lambda, pi, fi,...

Сортировка массивов разного типа
Само задание: Массив данных заполняется случайным образом. Рассмотреть массивы данных из элементов типа char и double. Использовать...

Вывод переменных разного типа через TextOut()
Приветствую. Начал изучать WinAPI и столкнулся с такой проблемой. Хочу вывести в окошко результат функции GetSystemMetrics(); Вывожу через...

Чтение из файла построчно переменных разного типа
Есть файл исходных данных input.txt. там содержатся данные о сети (точки начала и конца ветвей, марки провода и т.п.) есть файл...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит переходные токи и напряжения на элементах схемы. . . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru