Как сделать лего мультик в 3д программе
Последний шаблон серии 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 и нажать кнопку Начать в верхней части страницы.
Распродажи LEGO | |
Игра "Собери минифигурку" | |
LEGO цитатник | |
Журнал "LEGO Самоделки" | |
Мини-каталоги LEGO |
«- Позволь мне заметить, не достаточно просто заставить лего двигаться,
в них нужно вложить душу.» Теория большого взрыва, сезон 3, серия 21
Кубики Lego позволяют нам построить любой мир, который мы можем выдумать. Lego-анимация же позволяет вам придумать любую историю и воплотить её в жизнь в виде фильма.
Фильм на самом деле является просто набором самых обычных картинок (кадров), сменяющейся с такой частотой, что наш глаз просто не отличает их от настоящего движения. Поэтому принцип анимирования прост: сделать набор фотографий, в котором каждая последующая чуть отличается от предыдущей, и прокрутить его с достаточной частотой.
Чтобы сделать лего-мультик, вам как минимум понадобятся: идея, фотоаппарат, декорации, программа для монтажа и, конечно же, лего. И фантазия, конечно.
Таким образом, первое, с чего вам надо начать, чтобы сделать лего-мультик, это разобраться с "техническим" оснащением: фотоаппаратом, декорациями и программой для монтажа. К фотоаппарату крайне рекомендуется приобрести штатив или сделать из лего; иначе во время съёмки камера будет трястись, что будет сильно заметно в вашем фильме. При этом штатив тоже не полностью избавляет от этой проблемы; альтернативой является хорошая веб-камера, позволяющая делать снимки прямо с компьютера, не касаясь не камеры и, таким образом, "не сбивая" кадр.
С программой для монтажа всё сложнее. На большинстве компьютеров уже есть встроенная программа монтажа Windows Movie Maker . В ней можно сделать лего-мультик, но всё же в более профессиональных программах куда больше возможностей и эффектов. Большинство мультипликаторов пользуются следующими программами:
- Ulead Video Studios (также известна как Corel VideoStudio );
- Pinnacle Studios ;
- Sony Vegas ;
- Adobe Premier .
Чтобы начать снимать мультик, вам потребуется ответить на несколько вопросов:
1) Каким будет fps?
fps - Frames Per Second, кадров в секунду. Это сколько кадров в секунду промелькивает перед глазом зрителя. Обычно фильмы снимаются с частотой в 24 кадра в секунду, но в лего-анимации добиваться такой плавности не обязательно. Движения будут плавным и при 12fps. Посмотрите, с какой скоростью работает ваша программа видеомонтажа - обычно с 24fps, тогда если вы снимаете со скоростью 12fps, то один ваш кадр будет вдвое длиннее минимально возможной продолжительности кадра в вашей программе.
2) О чём будет фильм?
Иначе говоря, вам нужен сценарий, идея, лежащая в основе мультфильма. Хотя об этом можно написать отдельную статью, в лего-анимации всего два правила: 1) фильм должен быть таким, чтобы вы могли его снять; 2) больше правил нет. Это означает, что вашу фантазию ограничивают только ваши возможности: не надо писать сценарий для десятичасовой эпопеи или требующую гигантских лего-декораций, которые вы за жизнь не построите. Убедитесь, что у вас есть достаточно деталей для воплощения и декорации - не только лего-декорации, но и бумажные - то, что будет видно за лего-постройкой (вряд ли вы хотите, чтобы в кадр попала часть вашей квартиры?). И на этом, собственно, правила кончаются, и начинаются рекомендации. А именно, важно понимать, что съёмка даже короткого одноминутного фильма займёт у вас огромное количество времени. Поэтому если вы под вдохновением от прекрасного сериала решили скопировать его и снять что-нибудь в том же роде, то велика вероятность, что через неделю вам этим заниматься уже не захочется, а никакого презентабельного результата достигнуто не будет. Отсюда практический совет: идея должна пройти испытание временем. Запишите сценарий. В виде текстового файла, или от руки на бумаге. Перечитывайте, вносите коррективы, исправляйте. Если через неделю не возникнет желания выкинуть бумагу в помойку - значит, она достойна реализации.
3) Что будет в кадре?
Постройте декорации, сделайте минифигурки героев, посмотрите, не попадает ли в кадр пол или стена. Продумайте постановку всех сцен вашего фильма, убедитесь, что в какой-то сцене из середины фильма вы не выясните, что вы не можете эту сцену снять - а то это было бы очень обидно.
Наконец, самый главный и длительный процесс, который вас ожидает - сама анимация. Если вы впервые занялись анимированием, то начните с простого. С передвижения машинки по шоссе. Вам надо почувствовать скорость: на сколько нужно передвинуть машинку, чтобы потом в фильме она ехала с обычной скоростью (с учётом выбранного вами fps!). Или быстро? Или медленно? Такая сцена - универсальный полигон для испытания скорости фильма, так как слишком медленные или, наоборот, слишком быстрые движения движущихся объектов фильма - одна из главных недоработок большинства анимаций, и, наверное, самое сложное, с чем вам предстоит столкнуться при создании лего-фильма.
Однако скорее всего чаще вам придётся передвигать именно фигурки. Руки, голову и повороты туловища реализовать не так сложно; у начинающих первые проблемы возникают с ходьбой. Именно на эту тему - тему ходьбы - существует большинство tutorials (обучающих видео) на YouTube, предлагающих и подробно описывающих методики ходьбы. Даже если вы не знаете английский - не страшно, обычно во всех обучающих видео показываются все кадры одного шага фигурки, и вам достаточно только по картинке понять, как стоит фигурка в данном кадре. Обычно при 12fps количество кадров на обычный шаг варьируется в районе 4; при 24fps, соответственно, в районе 8.
После этого вашим лучшим другом станет практика. Ещё полезно смотреть лего-мультики зарубежных профессиональных аниматоров, скачивать и просматривать их по кадрам - тоже способ набираться опыта.
В результате после монтажа отснятого материала, добавления титров (но не на пол-фильма, как некоторые иногда делают. ), звуков, музыки и озвучки (если они требуются, конечно) - вы получаете готовый фильм.
Если вы уже подружились с анимацией, то можно попробовать реализовать что-то посложнее. Простая методика анимирования не позволяет отснять многие сцены: взрывы, пожары, или полёты фигурок или каких-либо других объектов.
Методы создания эффектов очень разные - от изучения Adobe After Effects до покадровой обработки материала в Photoshop'е . Для взрывов и пожаров существуют такие штуки, как спрайты, которые представляют собой набор картинок пожара/взрыва/чего-то ещё на транспаренси-фоне, то есть на прозрачном фоне, которые при наложении на видеоролик создают иллюзию пожара/взрыва/чего-то ещё. Чтобы создать иллюзию полёта какого-нибудь лего-объекта, тем или иным методом нужно наложить вырезанную картинку летящего объекта на фон. Большинство программ монтажа содержат такой эффект, как хромакей, позволяющий вырезать (фактически, заменить тем самым транспаренси-цветом) из ролика все пиксели с близким к какому-то (обычно, зелёному или голубому) цвету, и наложить на другую картинку, что в некоторых случаях сильно упрощает процесс, но чаще всего приходится просто работать в Photoshop'е с каждым кадром отдельно: вырезать всё, кроме ЛО (летающего объекта), и накладывать его на фон.
Некоторые эффекты можно сделать и прямо во время анимирования: например, играясь с освещением, применяя световые фильтры, или ставя вместо бумажных декораций монитор собственного компьютера с выведенной на экран картинкой фона.
2. Сколько вы готовы заплатить за такой справочник (справедливая цена, на ваш взгляд)?
3. Напишите любые другие комментарии, вопросы или пожелания.
4. Укажите Email или иной способ контакта, что бы я мог выслать вам обновления о проекте и узнать уведомить о старте предзаказа. Если не хотите светить почту в комментах, то именно для этого предлагаю заполнить форму.
1.9K постов 6.1K подписчиков
Правила сообщества
- Уважайте друг друга.
- Не присваивайте чужие работы.
- Тематика группы: LEGO. Аналоги допускаются.
- Не спамить, не флудить, не вбрасывать.
- Если правила сайта не понятны, я пропишу отдельно в правилах сообщества: НИКАКОЙ РЕКЛАМЫ. Вообще. Реселлеров, магазинов, частных лиц и прочего.
Судя по формулировке вопроса, ты уже обозначил для себя сумму ~3к. Я бы за такие деньги не купил. Но это моё мнение. Так или иначе можно всю необходимую информацию найти в свободном доступе. Компиляция всего этого стоит чего то, но такой подход мне кажется не верным. Имхо стоит выпустить в свободный доступ некоторую ограниченную версию. Какие то базовые вещи, с некоторыми нюансами. Чтобы человек понял есть ли смысл покупать что то не дешёвое, но более информативное.
У них же вроде продаётся свой набор с такой инструкцией+ кубиками и персонажами в комплекте.
Справедливо будет спросить - где Ваши работы? Презентуйте, а уж потом поднимайте вопрос об актуальности продажи Вашего учебника, но не наоборот же все это делать?
Ах да, знаменитый аниматор Крупский! в смысле Чуви! А где ваши анимации?
Сирени аромат
Повсюду распустилась сирень!
Солнечно, тепло на улицах.
Кусты сирени окрасились разнообразной палитрой лиловых оттенков! А этот нежный аромат!
Ммм. Сама природа сейчас вдохновляет
Так появилась закладка с сиренью.
🟣Полимерная запекаемая глина
Закладка "Красные маки"
Закладка изготовлена из запекаемой полимерной глины. После запекания материал становится прочным, а тонкие детали гибкими.
Для подвески использованы нитки для вышивания, а также цветки из полимерной глины.
Как я делаю аудиокниги. Новая книжка взята в работу
Всем привет! Вашему вниманию на оценку "Тайна золотой долины" | Клепов Василий Степанович аудиокнига глава 1
Вы скажете: какие могут быть приключения, когда на дворе война? Да вы просто не знаете, что приключения способны и пользу принести! Именно так решили Васька Молокоед, Димка Дубленая Кожа и Левка по кличке Федор Большое Ухо и отправились на поиски золота, чтобы купить на него танки для Красной армии. По дороге к Золотой Долине ребята постигают мудрость Снежной Тропы, хитрость краснокожих и нелегкую жизнь золотоискателей - все как в романах Джека Лондона и Фенимора Купера! Но совсем скоро им предстоит столкнуться с настоящими, совсем не детскими опасностями и раскрыть страшную тайну Долины.
Аудиоверсии: Вступление тут, 1 глава здесь
Приходите в телегу, там таких как я много)
Рассчитываю на критику, кидание тапками.
Закладки для книг и ежедневников "Коты"
Закладки сделаны из натуральной кожи растительного дубления.
Рисунок нанесен ручной резьбой, тиснением.
Роспись водными и акриловыми красками по коже.
Фиксируются на мягкую резинку.
Почти десять лет
Очень захотелось поделиться.
«НА БЕГУ» — короткометражный мультфильм (2021)
«Земляная кукушка всю свою стремительную жизнь проводит в бесконечной суете и страхе за себя и своего птенца. Она практически никогда не перестаёт бежать, и до дрожи боится всего, что окружает её саму и её чадо. Но далеко не всегда постоянная спешка хорошо кончается…»
Я учусь в СПбГИКиТ на режиссёра анимации и это мой первый курсовой проект. Он был сделан за два месяца в 2021 году силами команды из 26 человек. Так как я каталась с ним по фестивалям, его нельзя было выкладывать в сеть, но сейчас наконец настал его звездный час. Приятного просмотра!
Помощь творческим пикабушникам
Привет, Пикабу!
Спасибо всем, кто участвует в ДоброВспышке, видеть такое движение - большая радость. Присоединяюсь к этому позитивную начинанию.
Я - поэт, писатель, сценарист, редактор и составитель книг. Могу помочь доработать что-то из вашего творчества, подсказать идею или просто дать обратную связь как читатель.
Так же, если наберется достаточно желающих, готов издать сборник с вашими работами. Он будет доступен каждому пикабушнику бесплатно в цифровом формате.
Что будет в сборнике? Зависит от того, что пришлете, вариантов несколько:
1. Поэзия, возможно с иллюстрациями.
2. Проза, но обязательно небольшая.
3. Афоризмы, зарисовки, советы, короткие истории.
4. Ваши картины, иллюстрации, скетчи.
5. Все выше перечисленное в любых сочетаниях.
Все ли войдет? Каждый может получить от меня плюсик и внимание пикабушников в комментариях, но все же любой материал взять в работу не выйдет. Поэтому отбор будет, в следующем посте напишу от этом подробнее.
А когда результаты-то? Во многом зависит от вас, но ваш покорный слуга будет заниматься этим параллельно с другими проектами, поэтому не завтра :)
(Обычно уходит месяц-два на книгу, но это не считая сбора материалов)
P.s. Только позвольте сохранить анонимность и не выдавать где работаю и что пишу.
Закладка
Дочь сделала закладку для книги. Если что, это бабочка.
Мультсериал "Заберите меня с этой планеты" / Тест техники анимации
Паблики с блогом разработки мультсериала:
Под постами часто пишут одинаковые комменты, поэтому сразу обозначу:
- Когда выйдет мультфильм не знаю, т.к. условия слишком суровые с множеством переменных, не зависящих от меня;
- Я никогда не рассматривал вариант выполнить этот проект один;
- Я знаком со всей спецификой работы в анимации, имею опыт в этой сфере и осознаю масштаб объёмов работ;
- Делать комикс вместо мультсериала не буду, т.к. это не соответствует моим целям и интересам;
- Покадровкой не проще;
- Нет, это точно не 3д;
- 3д с шейдерами не использую, т.к. результат получается не такой, как мне нужен;
- Программа Toon Boom Harmony;
В комментах оставлю черновик трейлера, по которому можно понять сюжет.
Дизайнеры с Украины накинулись на Figma и Adobe
В то время как происходит первая дизайнерская война, в которой одна сторона требует закрытия доступа к Behance, Adobe и Figma для РФ, а вторая собирает бессмысленную петицию из уже 10.000 подписавшихся против войны, бездумно публикуя свои личные данные. Хотел бы напомнить остаткам здравомыслящих специалистов о необходимости озадачится резервированием всех облачных файлов (just in case). В случае с Фигмой в будущем в случае чего, вы сможете хоть и с потерями, но импортировать файлы в Скетч, а оттуда при необходимости перекинуть в XD. Быть уверенными только в ограничении к ресурсу не стоит, и затраченное время на подстраховку окупится в случае непредвиденных ситуаций.
А также, первой группе я бы хотел сказать, что те, против кого вы подстрекаете, собрали для вас целую петицию из более 10.000 человек, основным посылом которой было то, о чем вы и просили
Мы против любой войны, тем более войны с Украиной. В Украине живут наши коллеги, друзья и родственники. Украина не представляет угрозы для безопасности нашей страны. Война против нее несправедлива и бессмысленна. Мы не хотим, чтобы в Украине убивали наших коллег и друзей. Мы хотим вместе с ними жить, создавать и созидать в мире. Участвуя в войне, мы разрушаем эту связь.
Но видимо раз вы продолжаете, дело совсем не в действиях или бездействиях людей со второй стороны, а в принципе.
Второй же группе, я хотел сказать всего три вещи:
1. Ваша квалификация и навыки это ваши руки и голова, а не стоки, сети, площадки, или софт.
2. Будьте внимательными к тому под какими словами и формулировками вы ставите свои имена и фамилии, закон страны в которой вы живете и против который вы подписываетесь никто не отменял.
3. Проверьте свои имена в документе с петицией, на случай если она попадала туда без вашего ведома.
пруфы на всякий случай
PS: Я до последнего верил что творческие люди будут последними, кто будет противостоять друг против друга за пределами фриланс площадок, у меня нет слов.
wikiHow работает по принципу вики, а это значит, что многие наши статьи написаны несколькими авторами. При создании этой статьи над ее редактированием и улучшением работали, в том числе анонимно, 50 человек(а).
Конструктор Лего один из наиболее популярных, забавных и умных игрушек, когда-либо сделанных. Достижения в области потребительской электроники, доступные компьютеры, видеокамеры и цифровые камеры сделали возможным производить недорогие высококачественные Lego анимации.
Для новых идей перейдите на сайт по обмену видео, например, Youtube, и поищите Лего ролики. (Например, Лего Звездные воины, Лего Марио, Лего Бэтмен и т.д.).
Создайте и постройте свой набор, который должен состоять из 100% Лего, сцены из реального мира или их сочетания. Перед тем, как смотреть через камеру, убедитесь, что у вас есть представление о том, как ваше видео будет выглядеть. Пока вы это делаете, вы можете проверить наличие нежелательных элементов, которые должны быть закрыты или замаскированы, особенно в фоновом режиме.
Затем подготовьте лего персонажей. Вы можете использовать одну миниатюрную фигуру, как главного героя, но вы также можете использовать другие фигуры, чтобы сделать видео более экспрессивным. Если у вас нет подходящих героев, то вы всегда можете разрисовать фигурки сами.
Установите начальную сцену фильма, а также камеру, которая должна быть неподвижна, иначе видео будет дергаться. Используйте штатив или аналогичное устройство, чтобы камера не дергалась, и сделайте снимок.
Теперь пришло время передвинуть героев на сцене, но только совсем немного. Легче всего перемещать героев на два шага на платформе и на полдюйма на полу. Продолжайте так делать, пока не закончите фильм.
Используйте любое видео приложение на вашем компьютере, у которого есть настройки времени. Желательно то, на котором можно устанавливать до 15 кадров в секунду. Это даст наилучшие результаты.
Используйте iMovie, Windows Movie Make или другие программы для создания фильма, чтобы импортировать фотографии.
Всех с наступающим! Меня зовут Гриша, и я основатель 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.
В целом по развитию плагина очень много идей, хочется ввести такие функциональности, как:
- Сглаживание некоторых форм
- Генерация только front face
- Конструктор и выгрузка моделей обратно в формат LDraw
- По круче шейдер для пластика с subsurface scattering (и правильный набор материалов в целом)
- Unwrap UV для лайтмапов
- Оптимизация моделей (сейчас большинство состоят из 500к+, а к примеру модель эйфелевой башни 2.8 миллона полигонов)
Спасибо за внимание, надеюсь вы узнали для себя что-то новое, и вас заинтересовал формат и плагин! Если будет время – буду продолжать его развивать и буду рад помощи в этом нелёгком деле.
Читайте также: