Построение параллелепипедов и кубов по координатам вершин
Есть n-ое количество трехмерных фигур - параллелепипедов и кубов (вплоть до 20 млн), представленных координатами вершин. Как я могу получить такой результат, желательно с возможностью задания разных цветов для кубов? В примере "кубом" для удобства я назвал параллелепипеды

Координаты вершин для куба из примера:
cube1 = [[0, 0, 0], [1, 0, 0], [0, 0, -1], [1, 0, -1],
[0, 1, 0], [1, 1, 0], [0, 1, -1], [1, 1, -1]]
cube2 = [[1, 0, 0], [2, 0, 0], [1, 0, -1], [2, 0, -1],
[1, 1, 0], [2, 1, 0], [1, 1, -1], [2, 1, -1]]
cube3 = [[2, 0, 0], [3, 0, 0], [2, 0, -1], [3, 0, -1],
[2, 1, 0], [3, 1, 0], [2, 1, -1], [3, 1, -1]]
cube4 = [[0, 0, -1], [1, 0, -1], [0, 0, -2], [1, 0, -2],
[0, 1, -1], [1, 1, -1], [0, 1, -2], [1, 1, -2]]
cube5 = [[1, 0, -1], [2, 0, -1], [1, 0, -2], [2, 0, -2],
[1, 1, -1], [2, 1, -1], [1, 1, -2], [2, 1, -2]]
cube6 = [[2, 0, -1], [3, 0, -1], [2, 0, -2], [3, 0, -2],
[2, 1, -1], [3, 1, -1], [2, 1, -2], [3, 1, -2]]
Ответы (1 шт):
Автор решения: Andrew
→ Ссылка
ответ без кода.
- Создаешь скрипт
- в старт или эвейк запускаешь метод GenerateCubes() который принимает количество повторений кубов по координатам x, y, z
- сам метод берет готовый префаб с кубом с наперед назначенным шейдером (у которого можно менять цвет через рендерер)
- генеришь поле из кубов с неоюходимыми смещением. Размеры куба берутся по renderer.bounds. Циклом. Каждая следующая позиция будет renderer.bounds.x * i.
- Если нужно в высоту еще - то делаешь вложенный цикл и смещение у нового обьекта нужно будет делать на renderer.bounds.y * j.
- то же самое с глубиной если необходимо. Для всех циклов использовать входные данные в GenerateCubes
создавать обьект с префаба можно по instantiate
это если в двух словах. Это более чем детальные указания, код писать не буду. Он реально детский. Не сможешь разобраться по этим указаниям, лучше пойти разбираться с чем-то другим и вернутся в программирование через годик тренировки на консольных программах.