Создать lego создать игру

Обновлено: 28.11.2022

Назначение программы

Лего Диджитал Дизайнер – ПО, предназначенное для создания моделей и проектов, напоминающих кубики Лего. Она даёт пользователям следующие возможности:

  • Начинать разработку проектов с нуля.
  • Работа с готовыми моделями и основами, которые представлены в галерее на официальном сайте.
  • Загрузка собственных моделей на официальный сайт Lego Digital Designer за счёт графического 3D-редактора.
  • Редактировать уже сохранённые на компьютере или в архиве проги модели.

Программа интуитивно понятна, поэтому нередко её используют для моделирования дети школьного возраста. Утилита имеет качественную графику, она предлагает пользователям на выбор большое количество инструментов и цветовых оформлений для разработки своей, индивидуальной Lego Digital Designer модели. Пользователи здесь могут работать как со своими проектами, так и с чужими. Черпать идеи конструкций для моделирования можно на официальном сайте разработчиков. Здесь же можно и скачать понравившийся шаблон для работы бесплатно.

фото-1

Справка! Программа позволяет сохранять готовые работы на компьютер, чтобы в дальнейшем показывать их друзьям. Сохранённые конструкции можно редактировать и дополнять всевозможными инструментами, которые предлагают разработчики.

Функциональные возможности Lego Digital Designer

Функции утилиты помогают заниматься виртуальным моделированием как начинающим графическим дизайнерам, так и более продвинутым специалистам. Создавать Лего-модели могут также и дети. Программа работает в 3 главных режимах:

  • Digital Designer. Это базовый режим, который включает самые необходимые инструменты для работы. Он подойдёт для тех, кто хочет создавать модели по готовым инструкциям.
  • Mindstorms. Это более продвинутый режим, который позволяет работать с деталями и инструментами из одноименной серии.
  • Digital Designer Extended. Самый продвинутый режим, который подходит для пользователей, имеющих немалый опыт в моделировании Лего-конструкций. Здесь есть инструменты, детали и цветовое оформление, которых не встретить в базовом режиме работы.

фото-1

Вот, что о них говорят сами разработчики:

Каждый режим подразумевает возможность сохранять, редактировать сконструированные модели, а также использовать чужие конструкции для работы.

Как пользоваться программой

При открытии программы Lego Designer пользователь увидит:

  1. Панель управления. Она будет располагаться справа;
  2. Магазин с инструментами, шаблонами и деталями – Bricks, Template, Group находится слева;
  3. Главную рабочую зону с макетом модели;
  4. В верхней части окна утилиты можно найти специальную панель инструментов, с помощью которой можно переключаться между разными опциями, помогающими вращать, передвигать и переворачивать элементы будущей виртуальной модели.

фото-1


Перед тем как начать работу, следует открыть раздел Welcome Screen и выбрать специфику моделирования: с нуля или с уже готовой основой.Пользователь может проделывать все основные этапы работы через главную панель задач. Здесь же можно воспользоваться анимационными эффектами и иными графическими опциями.

фото-1

При необходимости детально рассмотреть получившуюся модель, необходимо зажать правую клавишу мышки. Теперь можно крутить курсор и наводить его на те части конструкции, которые следует подробно рассмотреть. При необходимости увеличить или уменьшить масштаб работы, можно воспользоваться колёсиком мышки или кнопками ‘+’ и ‘-‘.

фото-1

Чтобы вращать особые детали, которые уже находятся в составе сборной конструкции, но все ещё считаются свободными для проведения всевозможных работ, можно пользоваться режимом Higletool. Когда модель будет полностью собрана, пользователь может нажать на кнопку Building Guide Mode и увидеть, как виртуальный проект создавался с самого начала. Для этого Lego Digital Designer сначала разберёт имеющуюся модель, а затем соберёт её в ускоренной режиме при помощи режима анимации. Анимационный процесс сборки можно записать и сделать из него оригинальную презентацию.

Внимание! Программа Лего Дизайнер функционирует полностью бесплатно. При этом разработчики могут высылать пользователям недостающие детали для создания определенной модели. Для этого необходимо обратиться в службу поддержки.

Сохранять готовые конструкции можно в формате LXF. С готовых работ пользователи могут сделать скриншот в формате PNG. Но стоит учитывать, что выбор фона, на котором можно заскринить модель, ограничен. Если пользователю хочется сделать необычный и оригинальный скриншот, то фон можно дорисовать самостоятельно, используя сторонние программы для графического дизайна. Для создания скриншота нужно зайти в раздел View Mode. Здесь же пользователь сможет поменять фон конструкции. При выборе цветовой подложки программа издаёт характерный звук. Его легко можно отключить в этом же разделе меню.

фото-1

Пособие для самостоятельного обучения учащихся и педагогов дополнительного образования технической направленности работе в программе «LEGO Digital Designer».

Преимущества утилиты

Lego Digital Designer – качественная и продуманная до мелочей программа для виртуального моделирования, которая имеет немало преимуществ:

Недостатки

Несмотря на большое количество плюсов, утилита Лего Диджитал имеет и минусы:

  • Иногда программа может вылетать.
  • Цветовая гамма деталей весьма специфична.
  • Проектирование требует от человека наличия навыков точности.
  • Некоторые важные детали в программе могут отсутствовать.

Lego Digital Designer редко, но все-таки может вылетать и тормозить. Здесь особое значение также играет само устройство, на котором работает утилита. На устарелых компьютерах Lego Digital Designer может работать с ошибками.

Осторожно! Пользователи отмечают не самый богатый выбор деталей в базовом режиме моделирования. Однако все детали можно попросить у разработчиков на официальном сайте в разделе технической поддержки. Ожидание ответа может занять несколько суток.

Итоги

Lego Digital Designer — программа для 3D-моделирования, которая позволяет создавать проекты разного уровня сложности. Утилита отличается многофункциональностью, большим выбором инструментов, наличием трех режимов работы. LEGO Digital Designer имеет доступный интерфейс, поэтому использовать прогу могут также и дети. Создавать модели здесь можно с нуля или за счёт использования готовых шаблонов и 3D-моделей, которые загрузили другие пользователи. Весь функционал представлен для использования на бесплатной основе.

Полезное видео

Видео обзор программы и туториал по ее применению:

Последний шаблон серии Microgames предназначен для новых пользователей: они смогут поделиться своей первой 3D-игрой, на разработку и настройку которой уйдет не больше часа.

Мы уверены, что чем больше среди нас творческих людей, тем лучше становится мир. Наша цель — сделать разработку игр более доступной и простой для новичков. Именно поэтому мы запустили проект Microgames: пользователи научатся разрабатывать игры на Unity, а в процессе обучения смогут найти в сообществе новые идеи и пообщаться с другими разработчиками, которые тоже работают над своей первой игрой.

Если вы когда-то увлекались созданием миров из кирпичиков LEGO®, проект Microgame будет идеальным началом вашего творческого путешествия: для разработки собственной игры не требуется опыт программирования, к тому же это абсолютно бесплатно. Над созданием этого проекта мы работали вместе с LEGO Games, и у пользователей была возможность поучаствовать в открытом бета-тестировании. Глобальный релиз — это знаменательная для нас дата: впервые в редакторе Unity появились наборы LEGO System in Play и мини-фигурки LEGO.

В редакторе есть простые и понятные обучающие материалы, которые помогут новым пользователям меньше чем за час создать первый проект и опубликовать собственную 3D-игру. Работая в удобном для вас ритме, принимая собственные творческие решения и на ходу персонализируя свой проект, вы разберетесь, как взаимодействуют элементы игры. Вот лишь несколько способов сделать вашу игру интереснее.

Комбинируйте LEGO Behaviour Bricks — блоки, которые при взаимодействии производят неожиданный эффект. Вы построите по-настоящему интерактивный мир LEGO — один виртуальный кирпичик за другим.

Выберите для игры одну из четырех мини-фигурок LEGO (созданных LEGO Games специально для этого шаблона Microgame!).

Используйте Библиотеку модов (Creative Mods) для персонализации игры, а также дополнительные темы, которые можно загрузить из Unity Asset Store. Ваша игра станет действительно уникальной!

Делитесь готовой браузерной игрой с друзьями и находите новые идеи для творчества на нашем сайте Unity Play, где доступны игры других авторов.

С чего начать

Новые пользователи. Пользователям ноутбуков и персональных компьютеров нужно перейти на страницу LEGO Microgame и нажать кнопку Начать в верхней части страницы.

Посмотрите видео, чтобы узнать, как настроить Unity, создать игру, опробовать ее и поделиться ей с друзьями.

Библиотека модов и дополнения для персонализации игры

Идеальное сочетание знаменитых элементов LEGO и расширенных возможностей и процессов платформы Unity позволяет строить игровой мир из виртуальных кирпичиков точно так же, как из настоящих. Такая виртуализация дает новым пользователям возможность получить реалистичный и уникальный опыт работы с LEGO на новом уровне. При этом каталог дополнительных функций для ваших игр постоянно растет.

В Библиотеке модов (Creative Mods) и каталоге дополнений Asset Store доступно множество компонентов для игр, и их количество будет увеличиваться.

Девять способов сделать игру уникальной

На странице Unity Learn | LEGO Microgame вы можете найти девять классных дополнений, которые позволят персонализировать игру уже на этапе изучения основ Unity. В Библиотеке модов можно выбрать собственную мини-фигурку, создать врага или закрытую территорию, где можно спрятать трофеи. И не только это!

Если вы хотите разработать действительно потрясающую игру (особенно это касается взрослых любителей LEGO), вы можете купить виртуальные наборы, мини-фигурки и элементы LEGO в магазине BrickLink, собрать из них в Студии собственные компоненты для игры и импортировать их в проект!

Работа с дополнением из Библиотеки модов

Девять потрясающих дополнений

Unity Asset Store — это большой каталог двумерных и трехмерных моделей, текстур, шаблонов и других инструментов, с которыми разрабатывать игру будет проще. В Asset Store есть девять бесплатных дополнений, четыре из которых нужно будет «открыть» для получения к ним доступа. Сделайте игру еще более увлекательной, добавив в нее новую тему и другие возможности!

Открываемые дополнения

Knight’s Kingdom — поделитесь игрой, чтобы открыть

Space Cadet — обновите игру, чтобы открыть

Danger Zone — примите участие в геймджеме 19 ноября, чтобы открыть (см. ниже)

Island Adventure — расскажите о своей игре, чтобы открыть (см. ниже)

Краткий обзор дополнения LEGO Microgame (доступно в Unity Asset Store)

Как запустить LEGO Microgame в Unity Hub

Поделитесь игрой и получите советы профессиональных гейм-дизайнеров Unity и LEGO

Онлайн-курсы с Unity и LEGO

ЧТО? Увлекательные вебинары, на которых вы узнаете, как персонализировать игру и работать над проектом LEGO Microgame.

ЗАЧЕМ? Вебинары проводят профессиональные гейм-дизайнеры Unity и LEGO. Вы сможете задать им вопросы и получить отзыв о своей игре.

КОГДА? Вебинары проводятся еженедельно с 9 по 30 ноября в 20:00 по московскому времени. Длительность вебинара — 1 час. Всего состоится четыре вебинара. Вебинары будут записываться.

Геймджемы с Unity и LEGO

ЧТО? Во время этой интерактивной трансляции мы рассказываем о классных штуках, которыми вы можете разнообразить игру, и предлагаем поделиться с сообществом своим первым проектом LEGO Microgame.

ЗАЧЕМ? Вебинары проводят профессиональные гейм-дизайнеры Unity и LEGO. Мы вместе построим крутую полосу препятствий, которая наверняка вдохновит вас на новые идеи для собственной игры.

КОГДА? В четверг, 19 ноября, в 21:00 по московскому времени. Длительность геймджема: 2–2,5 часа.

КАК? Подписывайтесь на нас в Twitter, Facebook, Instagram или YouTube и следите за новостями — мы обязательно расскажем, как принять участие.

Презентация проекта LEGO Microgame

ЧТО? На этих мероприятиях пользователи могут продемонстрировать свой проект. О лучших мы расскажем на канале LET’S PLAY!

ЗАЧЕМ? Вы сможете не только оказаться в центре внимания, но и получить цифровую эмблему, которая будет видна на вашей странице. Мы поиграем в игры, прошедшие отбор, а лучшие из них через несколько дней получат награду во время трансляции на нашем канале UnityTech в Twitch.

КОГДА? Первая презентация состоится 19 ноября, контент принимается до 16 декабря включительно. О датах проведения последующих презентаций LEGO Microgame мы сообщим позже.

КАК? Переходите на страницу Unity Play, просматривайте презентации других пользователей и делитесь своими. Для загрузки контента вам потребуется Unity ID.

Создайте свой первый проект LEGO Microgame уже сегодня

Новые пользователи. Пользователям ноутбуков и персональных компьютеров нужно перейти на страницу LEGO Microgame и нажать кнопку Начать в верхней части страницы.

Моё детство примерно на 20% состояло из Dungeons & Dragons (D&D) и на 80% — из LEGO. Эти два занятия очень сильно пересекались. Мне, по разным причинам, не разрешали всё время играть в D&D. Но я, привлекая на помощь воображение, и достигнув в этом деле успехов, достойных плута 15 уровня, понял, что создание персонажей AD&D игрой не считается. Воссоздание вселенной DragonLance средствами LEGO очень хорошо помогало мне быть ближе к игре, которая мне очень нравилась.

Поэтому одним из моих любимых направлений в LEGO были замки. Я тратил многие часы, выдумывая подземелья для моих героев. Для того чтобы не терять свои находки, и из-за того, что я видел, как мои друзья в школе чертят карты подземелий, я составлял планы своих LEGO-моделей на миллиметровке. Кроме того, я пытался сохранить и сведения о том, как именно были устроены модели. Использование миллиметровки казалось логичным для изображения того, что, в основном, состояло из прямоугольных блоков. Но меня, в итоге, сгубило недостаточно хорошее понимание правил изометрической проекции.


Теперь, хоть я и стал старше, моя любовь к LEGO не угасла. И хотя я и не могу сказать, что очень уж горжусь своими моделями (их называют MOC-моделями), я почувствовал, что просто должен разобраться с тем, как мне документировать то, что создаю. Я никогда не умел очень уж хорошо рисовать. Поэтому я решил обратиться к компьютеру.

CAD для LEGO

Несколько лет я работал в сфере виртуального 3D-моделирования (а в сфере обычного 3D — и того больше). Я хорошо владею 3D-приложениями, но всё, чем я пользовался, заточено под анимированную графику и под производство фильмов. Все эти программы, как, собственно, и фильмы, рассчитаны на то, чтобы создать красивую картинку. Как именно что-то сделано, до тех пор, пока всё выглядит хорошо, не так уж и важно. Если, ради того, чтобы что-то выглядело бы очень хорошо, нужно «обмануть» законы физики, то это вполне приемлемо, так как это будет существовать только в виртуальном пространстве.

А вот системы автоматизированного проектирования (Computer-Aided Design, CAD), это уже нечто другое. CAD-приложения пришли на смену обычным чертежам. В них создают спецификации, иллюстрирующие то, как нечто может быть создано в реальном мире. От этих программ ждут точности и реализма.

Так как невероятно много людей увлечено LEGO, существует активное сообщество тех, кто создаёт LEGO-модели, используя CAD-программы. Преимущества такого подхода очевидны: можно задокументировать подробные сведения о модели, описать то, какие детали нужны для её создания, и то, как именно их нужно соединить друг с другом. Это, конечно, не замена реальному конструктору LEGO (ну, разве что для тех, кто любит CAD больше, чем LEGO), но это — отличное дополнение к хобби.

Для того чтобы построить виртуальную модель LEGO, нужны две вещи:

  • Виртуальные детали LEGO.
  • CAD-приложение.

Виртуальные детали LEGO

Для того чтобы раздобыть виртуальное представление практически любого из когда-либо созданных строительных блоков для LEGO-моделей, можете воспользоваться опенсорсным ресурсом LDraw. LDraw — это открытый стандарт для цифровых моделей LEGO, который включает в себя возможности по описанию размеров и ориентации элементов. В дополнение к работе по описанию деталей средствами LDraw, силами сообщества подготовлены 3D-модели для каждой детали. Это значит, что все желающие могут загрузить тысячи определений деталей, истратив на это не особенно много трафика.

Установка набора деталей

Виртуальные детали очень похожи на изображения, которые используются на сайтах, или на шрифты, применяемые на компьютере. Собственно говоря, соответствующие файлы можно хранить где угодно. Главное, чтобы приложение, в котором планируется работать с деталями, знало о том, где эти файлы находятся. В Linux LDraw-файлы обычно размещают в папке /usr/share/LDRAW . В Windows это обычно C:\Users\Public\Documents\LDraw .

LDraw даёт в наше распоряжение лишь спецификации для каждой детали. Вот, например, как выглядит код описания кубика 1x1:


Для того чтобы увидеть детали в более привычном облике, понадобится программа для их визуализации.

Приложение LDView для визуализации деталей

LDView — это среда для 3D-рендеринга, напоминающая POV-Ray или Cycles из Blender. Это приложение создано специально для рендеринга .ldr-файлов, то есть — CAD-файлов, содержащих данные в формате LDraw.

Если вы работаете на Linux, то, возможно, вы найдёте LDView в своём репозитории ПО. Если в репозитории этой программы не окажется — вы можете скачать установщик с сайта проекта. Если вы пользуетесь macOS или Windows, то вам, опять же, нужно будет воспользоваться сайтом LDView.

Просмотр отдельной детали

Легче всего начать цифровое конструирование моделей LEGO, попытавшись визуализировать отдельную деталь.

Сначала откройте ваш любимый текстовый редактор. Это может быть любая программа. Главное — чтобы она могла сохранять документы в виде обычного текста. Некоторые текстовые редакторы, в стремлении оказать пользователям добрую услугу, пытаются сохранять текстовые материалы в файлах, в которых, помимо текстов, есть ещё масса служебной информации (вроде .rtf и .doc). Существует множество хороших кросс-платформенных текстовых редакторов. Я, для наших дел, могу порекомендовать довольно-таки минималистичный редактор Geany.

Создадим новый файл с именем 1brick.ldr и введём в него следующий текст:


А теперь взглянем на наше скромное творение:


Только что вы создали простой CAD-файл, описывающий один кубик (а именно — модель номер 3001), цветовой индекс которого равняется 1 (это синий цвет), расположенный в позиции (0, 0, 0) по осям X, Y и Z. Поворот кубика регулируется с использованием средств матричного преобразования. Их применение, надо признать, не относится к простым математическим вычислениям. Правда, при конструировании LEGO-моделей произвольное вращение деталей требуется сравнительно редко, так как большинство деталей стыкуются друг с другом с использованием шипов.

Любая строка в файле, начинающаяся с 0, содержит либо комментарий, либо метаданные. Строка, начинающаяся с 1, содержит описание детали.

Вы можете попрактиковаться в перемещении и вращении деталей, внося изменения в свой CAD-файл. Обычный кубик имеет в высоту 24 LDU (LDraw Units). Это значит, что ставить детали друг на друга можно, меняя их координату Y с шагом в 24 единицы. Поворачивать детали можно, выполняя матричные преобразования.

Взгляните на этот код:


Вот результат его визуализации.


Конечно, перемещать детали можно вдоль любой из трёх осей. В спецификации LDraw сказано, что кубик 1x1 имеет 20 LDU в ширину и 20 LDU в длину. А это значит, что расставлять такие кубики вдоль оси X можно, меняя их позиции с шагом в 20 LDU.


Ещё два кубика

Порядок сборки модели

Чаще всего формат LDraw используется для того чтобы продемонстрировать порядок сборки модели. А это значит, что нужно описать последовательность шагов сборки. В LDraw это делается с использованием метакоманды STEP .

Для того чтобы испытать эту метакоманду, добавьте в свой файл, между описаниями деталей, следующее:


Готовый файл будет выглядеть так:


Теперь в вашем проекте описано два шага. На первом выводится первый кубик, на втором — второй. Можно пошагово просматривать .ldr-файлы, пользуясь клавишами-стрелками в верхней панели инструментов LDView, находящимися около подписи Steps .


Панель инструментов для пошаговой визуализации моделей

На одном шаге необязательно должен выводиться лишь один кубик. Как и в случае с инструкциями к наборам LEGO, установку нескольких деталей можно объединить в один шаг. Главное, чтобы это не повредило понятности инструкции.

В LDraw есть и другие команды. Например — тут можно рисовать линии, поясняющие расположение деталей, и делать прочие подобные вещи. Соответствующие сведения можно найти в спецификации.

Выяснение кодов деталей

Я хранил свою коллекцию LEGO в ящиках для рыболовных принадлежностей. Поэтому я мог быстро найти любую деталь из любого набора. Правда, по мере того, как росла коллекция, мне было нужно всё больше и больше ящиков. А в результате у меня стало уходить больше времени на поиск нужной детали.

Если учесть то, что в LEGO имеется более 11000 уникальных деталей, искать цифровые детали так же сложно, как и обычные. У каждой официальной детали LEGO есть собственный код. Например, тот кубик 2x4, который мы использовали в примере, имеет код 3001. Если вам известен код детали, вы можете просто использовать его в CAD-файле, и соответствующая деталь появится в вашей модели.

В дистрибутиве LDraw имеется файл parts.lst , в котором, с помощью grep, можно найти нужную деталь. Но детали там не всегда описаны по одной и той же схеме. Работая с этим файлом не всегда легко предугадать то, какие именно ключевые слова соответствуют тем или иным деталям. Например — как понять, какое слово, «curved» «sloped» или «angled», лучше всего характеризует некую деталь сложной формы?

Хотя искать детали можно и в parts.lst , в этом деле нам могут помочь некоторые специальные интернет-ресурсы:

    — это пользовательская группа, в которой есть база данных со сведениями о кодах деталей LEGO, построенная на основе сведений, взятых из LDraw. — хороший каталог деталей. — ещё один ресурс, на котором есть каталог деталей.

Другие средства для рендеринга моделей

После того, как вы создали свой шедевр, LDView может экспортировать вашу модель, что позволит вам отрендерить её в высоком качестве. Для этого можно воспользоваться POV-Ray — опенсорсной программой для фотореалистичного рендеринга трёхмерных моделей. В результате плоды ваших трудов можно будет представить в весьма привлекательном виде. Найти POV-Ray можно или в репозитории программ вашего дистрибутива Linux, или на сайте проекта.

Вот пример команды рендеринга:


Ниже показан результат визуализации.


Высококачественная визуализация модели

Если вам нужна программа для формирования инструкций по сборке моделей — попробуйте опенсорсную LPub3D. Эта программа выводит пошаговые инструкции и список деталей, необходимых на каждом шаге.


Исследование мира LEGO

Создание моделей из деталей LEGO — это интересно. Разработка собственных моделей — это воплощение той творческой энергии, которой фанаты LEGO заряжаются, занимаясь любимым делом. Теперь ваши LEGO-идеи больше не должны существовать лишь в форме бесплотных идей. Вы можете сохранить их в виде моделей и пошаговых инструкций.

Мир любителей LEGO — это приятное и креативное место, которое стоит посетить всем тем, кому нравится создавать цифровые модели, разрабатывать собственные детали, или делать с кубиками LEGO что-то такое, чего никто больше с ними не делает. Если вам нравится LEGO, то сегодня — самый лучший день для того чтобы стать частью LEGO-сообщества!

Всех с наступающим! Меня зовут Гриша, и я основатель CGDevs. Уже не за горами праздники, кто-то уже нарядил ёлку, поел мандаринов и во всю заряжается новогодним настроением. Но сегодня речь пойдёт не об этом. Сегодня мы поговорим про замечательный формат под названием LDraw и про плагин для Unity, который я реализовал и выложил в OpenSource. Ссылка на проект и исходники к статье, как всегда, прилагаются. Если вы так же, как и я любите лего – добро пожаловать под кат.




Формат LDraw

Начнём с того, что такое LDraw? LDraw – это открытый стандарт для LEGO CAD программ, позволяющий пользователям создавать модели и сцены LEGO. В целом существую разные программы и плагины, с помощью которых можно визуализировать LDraw (к примеру, есть плагин для Blender).

Сам формат хорошо задокументирован, и мы поговорим про его последнюю версию, а точнее про 1.0.2.

LDraw – это текстовый формат, файлы которого должны быть созданы с кодировкой UTF-8. Файлы, поддерживаемые форматом, должны иметь расширение ldr, dat или mdp. Каждая строка файла – это отдельная команда, отвечающая за определённую функцию.

Важной деталью формата является правосторонняя система координат (Y направлен вверх) – подробнее обсудим позже в контексте юнити, а также то, что формат является рекурсивным (большая часть файлов содержит указание на другие файлы).


Команды LDraw

В целом с этой информацией можно ознакомиться в официальной документации, но рассмотрим немного в контексте Unity. Всего формат LDraw поддерживает 6 типов команд.

0. Комментарий или мета команда – это специальные команды, которых мы почти не будем касаться в плагине. Пример: 0 !META command additional parameters

1. Ссылка на файл. По сути, самая сложная в интеграции и интересная команда. Выглядит она как — 1 colour x y z a b c d e f g h i file , где параметры являются TRS матрицей (подробнее про TRS можно прочитать в этой статье). В контексте юнити в форме


2. Линия – не используется в случае Unity, нужно чтобы подчеркнуть грани определённым цветом в CAD системах.

3,4. Треугольник и квадрат. Команды достаточно простые, но есть один важный нюанс, так как формат LDraw не рассчитан на 3д моделирование, то обход треугольников и квадратов в нём не стандартизирован. Это важно, так как юнити в зависимости от обхода треугольника определяет направление calculated нормали, а также какая сторона треугольника является задней, а какая передней (что так же важно для отрисовки и куллинга)

Пример команд:
Треугольник — 3 colour x1 y1 z1 x2 y2 z2 x3 y3 z3
Квадрат — 4 colour x1 y1 z1 x2 y2 z2 x3 y3 z3 x4 y4 z4

5. Опциональная линия – тоже не используется.


Цвета в LDraw

DAT – по сути это базовые элементы из которых уже собираются детали, либо какие-то базовые детали. Если не рендерить отдельные детали – указанный в них цвет не важен. Чаще всего там стоят стандартные цвета официального стандарта.

LDR – это самое интересное, с точки зрения цветов, и где Scope играет роль. Правило довольно простое, хотя на сайте описано сложным языков. Если вы из одного ldr ссылаетесь на другой – игнорируйте цвет указанный в корневом.

Для примера часть файла 30051-1 — X-wing Fighter — Mini.mpd (X-wing на картинке выше):

Во всех dat файлах мы учитываем указанный цвет, а в команде 1 72 0 -8 -70 1 0 0 0 1 0 0 0 1 30051 — Nose.ldr – игнорируем 72, и используем значения из файла 30051 — Nose.ldr.

MDP – это файл модели, чаще всего содержит в себе описание нескольких ldr файлов. С точки зрения цвета так же не особо важен. Единственное, что мы учитываем при парсинге — это мета-команду FILE.


Модели в LDraw

Про формат поговорили, теперь пора поговорить немного про плагин для Unity.


Плагин для Unity

Плагин предоставляет возможность генерировать 3д модели на основе файлов LDraw. Результаты вы можете увидеть в картинках из статьи. Важно: если у вас слабое устройство, лучше открывайте только сцены mini в папке Demo. Модели не оптимизированы и всегда генерируют backface.

А теперь поговорим немного про реализацию. На данный момент поддержана большая часть описанного выше.

Одной из, пожалуй, самых главных особенностей являются разные системы координат. Проблема в том, что в формате правосторонняя система координат, а в Unity – левосторонняя. Что это, по сути, означает, что все повороты и TRS матрица будут работать неверно. Отрицательный Y обыграть просто – отражаем все координаты относительно Vector3.up и получаем нужные (умножаем на -1). Но вот в случае с TRS матрицей всё сложнее. Так как формат рекурсивный, то просто отражать матрицу – нельзя, так как Matrix.Identity везде превратится в матрицу отражения и каждая вложенность будет отражать нашу модель по оси Y, что приведёт к неправильному отображению (если сохранять положительный scale). Пока я пришёл к не совсем верному решению в виде того, что разрешил отрицательный scale, что нужно будет переделать в будущих версиях.

Вторая особенность, это ориентация треугольников. Для квадов реализовано то, чтобы треугольники смотрели в одну сторону:

Но вот однозначно определить базируясь на формате, в какую сторону в принципе должны быть направлены треугольники — нетривиальная задача. По этой причине сейчас генерируются обе стороны всегда.

Кроме того, из-за того, что формат рекурсивный, иерархическая система Unity пришлась как никогда кстати.

С помощью рекурсии в двух методах, мы генерируем нужные нам меши и применяем TRS (реализацию можно прочитать в прошлой статье), и таким образом получаем в удобном формате все необходимые для нас смещения:

И по итогу мы получаем такие красивые визуализации:



Подробнее можно посмотреть в репозитории на Github.

В целом по развитию плагина очень много идей, хочется ввести такие функциональности, как:

  1. Сглаживание некоторых форм
  2. Генерация только front face
  3. Конструктор и выгрузка моделей обратно в формат LDraw
  4. По круче шейдер для пластика с subsurface scattering (и правильный набор материалов в целом)
  5. Unwrap UV для лайтмапов
  6. Оптимизация моделей (сейчас большинство состоят из 500к+, а к примеру модель эйфелевой башни 2.8 миллона полигонов)

Спасибо за внимание, надеюсь вы узнали для себя что-то новое, и вас заинтересовал формат и плагин! Если будет время – буду продолжать его развивать и буду рад помощи в этом нелёгком деле.

Lego и Unity создают LEGO Микрогейм , интересное предложение, которое позволит вам воплотить в жизнь свои собственные видеоигры, основанные на кубиках Lego и минифигурках. Конечно, лучше всего то, что вы можете сделать это очень легко, настолько, что вам не нужно будет иметь предыдущие знания программирования.

LEGO Microgame, создайте свою идеальную игру Lego

Создание собственных видеоигр возможно, всегда была вашей большой мечтой. Проблема в том, что вы должны быть реалистами, а это не так просто, как кажется, по крайней мере, если вы хотите делать определенные вещи. Однако мы должны сказать вам, что появляется все больше и больше инструментов, которые очень помогают в каждом творческом процессе.


LEGO Microgame - одно из таких предложений, плод совместной работы Lego Games и Unity. Но что именно, мы видим.

Основу LEGO Microgame очень легко понять. По сути, он использует все преимущества игрового движка Unity для создавайте свои собственные игры очень наглядно. Здесь нет необходимости сокращать какой-либо код, поэтому первоначальное трение значительно снижается. Кроме того, это дает возможность экспериментировать и приступить к работе всем, кто не знает.

Конечно, затем вы можете повысить сложность и сложность ваших творений, используя дополнительные инструменты, которые также доступны вам, например, элементы, которые используются в Студия BrickLink или разные Модификации которые доступны в Unity и помогают ввести новые элементы управления, физику объектов и даже дизайн игровых меню.

Без сомнения, очень привлекательное предложение во всех отношениях. И самое лучшее, что вы можете делиться своими творениями с другими пользователями. Более того, таким образом вы получите доступ к новым функциям, которые позволят вам улучшать будущие творения.

Если в какой-то момент вы подумали, что было бы круто создать свой собственный набор Lego, теперь у вас нет оправдания не делать этого. Кто знает, станете ли вы когда-нибудь за будущими запусками Lego Games, благодаря всему, чему вы научитесь с LEGO Microgame.

Как начать создавать свой первый набор Lego

  1. Во-первых, скачать LEGO Microgame со страницы загрузки Unity
  2. В версии Unity 2019.4 LTS запустите установщик
  3. После завершения процесса вам будет предложено создать учетную запись Unity, сделайте это
  4. Создав учетную запись и войдя в нее, выберите интересующую вас Microgame. В этом случае Lego Microgame
  5. Как только вы начнете, вы увидите первое руководство, которое поможет вам ознакомиться со средой и ее инструментами.

Готово, как видите, среда, которую предоставляет Unity, довольно наглядна, и, используя исключительно клавиатуру и мышь, вы сможете сформировать первый проект, который послужит примером, а затем все, что вы можете придумать.

Когда вы закончите, вы можете поделиться этим проектом с другими пользователями, чтобы они могли просто насладиться им или дать вам обратную связь, чтобы улучшить его.

Читайте также: