Планета в LowPoly
Делал на заказ небольшой фрилансик, планету в 3d в lowpoly.
Редактор Blender, сборка, настройка и рендер в Unity3d
Вышло вроде живо, вот и решил поделиться скриншотом
Делал на заказ небольшой фрилансик, планету в 3d в lowpoly.
Редактор Blender, сборка, настройка и рендер в Unity3d
Вышло вроде живо, вот и решил поделиться скриншотом
Сделал за пару обедов на работе. Все ассеты с моих старых проектов, кроме здания и террейна - их сделал под эту сцену.
Модели из блендера, рендер Unity
Гифку с пролетом камеры вокруг модели вставить не смог, больше 20мб пикабу отказывается грузить, так-что оставлю ссылкой [https://vk.com/doc162527088_505420047]
В связи с разработкой игры решил писать небольшие посты по теме процесса создания. Возможно, кому-то будет интересно узнать какой использовался ресурс или урок, как был реализован тот или иной элемент, а мне будет полезно получить комментарии и критику.
Жанр игры - стратегия-головоломка.
Используемые среды: Unity, Blender, Gimp.
Чтобы не быть голословным прилагаю изображения нескольких уровней (на данный момент без графического интерфейса):
P.S.
В ближайшее время: "Идея создания игры"
Здравствуйте, здесь я покажу как настроить рендер в Unity для графики в стиле Low poly. Я уже давно моделил фургончик для проекта, который до сих пор не довел до конца) Его и возьмем. В итоге у нас получится красивый и стильный фургончик)
Мне нравится графика в стиле Low Poly, но при стандартных настройках рендера она выглядит ужасно. Я поместил фургончик в сцену, сделал камеру изометрической и поставил так, как мне нравится. Вот что вышло.
И хотелось бы сразу уточнить, что описанные мной настройки скорее всего не подойдут для игр. Производительность при таких настройках оставляет желать лучшего. А подойдет такой рендер чисто для демонстрации своих моделей и сцен)
Первым делом поработаем с настройками качества рендера.
Идем Edit - Project settings. Открывается окно с настройками проекта. Нас интересуют две вкладки: “Player” и “Quality”.
1)Во вкладке Player мы меняем Color Space на Linear. Почитав руководство на официальном сайте я так и не смог понять в чем различие между Linear и Gamma.
2) Во вкладке “Quality” ставим Levels на Ultra. Просто повышает качество изображения на максимум.
Shadow Resolution на Very High Resolution. Повышает разрешение теней на самый высокий уровень.
Shadow Projection на Close Pit. Касается метода проецирования теней. При этом параметре тени будут лучшего разрешения.
В результате получаем:
Далее создаем в сцене два источника света типа “Directional’.
Располагаем свет подобным образом.
Первый (front_light) - солнце. Можете менять его положение как вам угодно.
Второй (back_light) нужен чтобы подсветить тени объектов холодным синим цветом. Расположить его желательно противоположно к первому.
1) front_light, так как является солнцем, задаем желтый цвет.
- Intensity (интенсивность) на 1. Можете поиграться с этим параметром. Чем выше, тем ярче светит солнце и наоборот.
- Shadow Type ставим Realtime. Для рендера нам этого будет достаточно. При разработке игр используют чаще mixed, реже - baked.
- Normal Bias лучше ставить в 0. Но иногда при таком значении появляются артефакты. А при слишком высоком значении ребра как будто просвечивают. Так что нужно подбирать на глаз.
2) Для back_light цвет подбираем холодный. Например синий. Только нужно не переборщить. Подбираем интенсивность на глаз. И оставляем его без теней.
В результате:
Теперь займемся окружением. Переходим Window - Rendering - Lighting Settings.
1) Нужно изменить skybox на обычный монотонный цвет. Для этого в ассетах создаем материал и выбираем шейдер skybox/cubemap. Для него подбираем контрастный основной модели цвет. Для желтого это синий. Во вкладке Lighting добавляем наш материал вместо стандартного Skybox Material.
2) Далее меняем Environment Lighting - Source на Color. И в Ambient Color подбираем приятный цвет на глаз. Я хотел сделать теплую атмосферу для этой сцены и выбрал красноватый.
Результат:
И последний шаг - постобработка.
1) На Asset Store ищем “Post Processing Stack” скачиваем и импортируем.
2) Далее в ассетах под правой кнопкой мыши добавляем Create - Post-Processing Profile. У меня он называется “test_pikabu”. Это профайлер для настроек обработки. Потом на камере добавляем компонент “Post Processing Behavior”. И в него добавляем наш созданный профайлер.
Нажав на test_pikabu у нас появится окно с настройками в инспекторе.
С этими настройками можно играться бесконечно. Я покажу что выбрал я.
1) Ambient Occlusion. Затенение от окружения. Затеняются те места, куда плохо проходит свет от глобального освещения. Я оставил по дефолту.
2) Bloom. Если в сцене будут яркие цвета - вокруг них появится светящийся ореол. Сильно с этим не нужно перебарщивать. Настроить на глаз
3) Color Grading. Коррекция цвета. Сначала нужно поменять Tonemapper на Filmic.
И дальше играться с настройками температуры, яркости, контрастности и т.д.
На этом все. Можно скринить и показывать) Результат:
Я вел паблик Monti blog, но это было нечто хаотичное, психанул и все поудалял. Сейчас же решил основательно им заняться. Расписал стратегию, все как положено) Так что заходите, подписывайтесь. Обещаю, будет интересно)
Ссылка: https://vk.com/monti_blog
Получилось конечно так себе - есть кое какие несостыковки - кое где я накосячил, в некоторых местах как ни странно внешняя коробка дома со внутренней в скайриме не совпадает, проверял через редактор.
Прошу сильно тапками не кидать, я программист а не моделлер и Low Poly это моё увлечение.
Параллельно записываю процесс создания, потом ускорю раз в 20 и выложу.
Готово почти всё кроме одной стены (ну забыл я её) и мелких объектов, которые скоро доделаю.
Всем привет! Сегодня пятница и я впервые решился выложить пятничное моё.
В честь надвигающегося Нового Года я смоделировал небольшую Low Poly сценку в Блендере и срендерил её в Unity3d
Прошу сильно не кидаться тапками - я программист а не 3d artist и это лишь хобби.
Записал весь процесс и ускорил в 10 раз, получился залипательный таймлапс.
Доброго всем времени суток, продолжаю серию постов про образовательную робототехнику. Здесь я описываю результаты и просто ход выполнения своей научной работы.
Кратко: разрабатываю специальную робо-накидку на одежду, которая сможет оцифровывать часть двигательных навыков мастеров своего дела и передавать это тем, кто только учится.
Подробнее: часть 0: https://pikabu.ru/story/elearning_obrazovatelnaya_robototekh...
В сегодняшнем посте я покажу два скромных видео тестов визуализации отдельного гироскопа и простого движения руки.
Этот абзац можно пропустить, если Вас интересует только визуализация данных в Blender и Unity.
По отклику на первый пост понял, что интересующихся людей достаточно много (для меня лично). По комментариям хочется добавить следующую информацию:
1) Проект еще находится на стадии тестирования схемы прототипа. Иными словами рабочий вариант есть, но он еще не стабилен.
2) Часть людей писали мне на почту по вопросам сотрудничества. И по этому тем, кто захочет мне еще написать сразу скажу, что проект не коммерческий сейчас. На оборудовании самом потом не планируется основная коммерциализация. Как только протестирую схему, то она будет выложена в открытый доступ и её можно будет собрать самому для некоммерческого использования. Финансирования как такового тоже нет. Поэтому приглашаю в первую очередь академическую публику, где интеллектуальные достижения (совместные статьи, свидетельства ИС) можно зачесть в пользу работы (диссертации, диплома) или тех, кто для себя хочет покопаться в каких-то задачах. Так же могу помочь это дело красиво оформить для защиты. К сожалению большего пока нет.
3) Очень много писали, что подобных проектов много. И это правда. Особенность моего проекта в том, что мою версию можно будет собрать самостоятельно и в пределах 12-15 т.р. на 45 точек (сенсоры абсолютной ориентации), что покрывает модели обеих кистей и скелет человека. При аналогах более 100 т.р. зарубежом.
4) Был вопрос про нейронные сети и машинное обучение. Про это будет не ранее, чем я соберу серию данных по экспериментам и найду там закономерности. Сейчас пока есть только 1 полностью собранный простой эксперимент, потому что в прототипе замкнулся где-то провод и оно перестало работать. Поэтому я сейчас продолжаю собирать компактную, защищенную версию после анализа неудачи с этой версией. Потом настрою фильтр Маджвика для преобразования данных в углы поворота. Потом соберу на одном человеке не одну, а пару десятков однотипных данных. И только потом буду анализировать их.
Начнем с того, а как строится модель человека (руки)?
Мы точно знаем, где будут располагаться датчики физически (как их крепить и прятать провода - это отдельная тема для поста).
Мы можем легко сделать модель (искать по слову риггинг) в Blender 3D. Потом можно сделать скинниг (саму картинку человека надеть).
Конкретно за этот вариант спасибо русскоязычному сообществу по блендеру и конкретно sungreen http://blender-3d.ru/forum/index.php/topic,1756.0.html
Там же Вы можете найти эту модель и код визуализации данных по COM-порту (пока не важно как вы смогли отправить данные в ком-порт, по проводу или по bluetooth).
Про Wi-Fi будет отдельный пост. Также в следующем посте расскажу как подключить библиотеку для блендеровского питона (нет, это не pip install *packet_name*).
Кости между собой связаны, а значит то, что датчики показывают нам локальные показания, не зависимо друг от друга - не проблема. Теперь они связаны.
Проверка работоспособности одиночного гироскопа на этой модели.
(тут я просто смотрю вообще в ту ли сторону движется рука или нет, в ту)
Этот тест уже на Unity сделан совместно с бакалавром в университете.
(просто по очереди сгибаю и разгибаю пальцы на руке)
Пока лучшего видео нет. Т.к. основные силы брошены на железо.
Может и не очень видно, но после этого видео стало ясно, что нулевой дрейф гироскопа неизбежно ведет к критическим ошибкам, и достаточно быстро. Конечно, про это можно было знать заранее (и я знал это), но было невероятные проблемы включить магнитометр (дешевые i2c'ные китайские никак не хотели работать), поэтому делали без него.
Сейчас этой проблемы нет, т.к. смог подключить чип BMX055, где идет еще и магнитометр.
В следующем посте будет простая пошаговая инструкция как покрутить гироскопом (можно и с магнитометром и с акселерометром еще, в зависимости, что в COM-порт отправите) в Blender с нуля без применения специфических программ типа Processing (скетч так же выложу).
Кто не знал - в блендере применяется третий питон, поэтому не надо учить узконаправленные языки программирования.
Итак, как и было обещано ранее, сегодня меняем пустые источники света в кабине на полноценные пропы-лампы.
Для начала потребуется сделать модель лампы. Сделаем что-то простое:
Также нарисуем текстуру, а также карту эмиссии:
Пихаем модель в Unity, прикручиваем источник света, настраиваем яркость и цвет. Также настраиваем эмиссию текстуры модели, дабы была видимость, что лампа светится:
Ну а дальше обычным способом расставляем этот проп в кабину в нужны места. Бежим проверять:
Ночной вид:
И еще:
На этом все, а завтра будем оптимизировать внешнюю модель, а также добавлять на нее различные детали.