Будущая замена полигонам. Или что такое воксели?

от автора

Привет, друзья! Давно не виделись. Не будем затягивать приветствия, а сразу перейдём к теме нашего блога! Все знают, что такое пиксели, ведь так? Это элемент изображения в растровой графике. А что такое воксели? Речь сегодня пойдёт именно о них, ну что, поболтаем немножко о наших кубиках.

В блоге мы с вами затронем понятия вокселя, где он применяется, от куда пошёл, порассуждаем о перспективном будущем вокселей и пробежимся по нынешним реалиям. Устраивайся поудобнее, ведь мы отправляемся в мир, где на замену полигонам пришли воксели!

Если хочешь усвоить всю эту информацию в простой и расслабляющей форме, то можешь пройти по ссылке на видео!

Начнем с начала, что такое воксели?

Как гласит википедия, это элемент объёмного изображения, содержащий значение элемента растра в трёхмерном пространстве. Грубо говоря, это тот же пиксель, но только в 3D с координатой «Z».

Само понятие voxel (воксел) образовано от слияния двух слов volumetric и pixel, что означает (объёмный и пиксель).

Воксельная графика является одним из способов отображения 3D графики, и она является альтернативой полигонам. В сегодняшние дни в 3D моделировании объектов используют в основном только два способа:

  • либо с помощью плоских полигонов, тем самым создавая полую модель без внутреннего наполнения, которая будет обволакиваться полигонами

Моделирование с помощью полигонов
Моделирование с помощью полигонов
  • либо с помощью объёмных кубиков «вокселей», которые полностью заполняют внутренности 3D модели, где каждый такой кубик несёт в себе информацию о том, чем онявляется, например, кожей, мышцами, костями и т.д.

Моделирование с помощью вокселей
Моделирование с помощью вокселей

Сравнить моделирование вокселями с моделированием полигонами можно на примере кубика из пластилина, где микрочастички пластилина — это воксели, и кубика из бумаги, где его грани — это полигоны. Следовательно, если вы попытаетесь проткнуть два этих кубика, допустим гвоздём, то на одном получите отверстие в форме гвоздя, а на другом отверстие, ведущее в пустоту. То есть, в отличие от полигонов и пикселей, воксели — это истинный 3D кирпичик, а не 2D плоскость, которая окружает пустое 3D пространство.

Применение воксельной графики

Теперь давайте поговорим о применении вокселей в деле. И для начала нам нужно разобраться, от куда ноги растут, и рассказать о том, как появились воксели. Появились они прямиком из медицины, с появлением первых компьютерных томографов, или в простонародье КТ. Вообще, первые математические алгоритмы для КТ были разработаны еще в 1917 году австрийским математиком Иоганном Радоном.

Иоганн Радон
Иоганн Радон

А уже в 1963 году американский физик Аллан Кормак повторно (но отличным от Радона способом) решил задачу томографического восстановления, а в 1969 году английский инженер-физик Годфри Хаунсфилд сконструировал «ЭМИ-сканер» — первый компьютерный рентгеновский томограф.

Аллан Кормак
Аллан Кормак
Годфри Хаунсфилд
Годфри Хаунсфилд
«ЭМИ-сканер» (КТ)
«ЭМИ-сканер» (КТ)

Теперь то мы можем сделать вывод, что наиболее широкое применение воксели нашли в медицине. Ряд медицинских устройств, например, КТ, УЗИ, МРТ, выдают изображения с большого количества рентгеновских или ультразвуковых снимков под разными углами. После они сканируются и создаётся трёхмерный массив плотностей различных участков тканей исследуемого органа. Этот массив представляет собой «объёмную картину» элементом которой является воксель.

Примеры медицинских воксельных моделей
Примеры медицинских воксельных моделей
Примеры медицинских воксельных моделей
Примеры медицинских воксельных моделей
Примеры медицинских воксельных моделей
Примеры медицинских воксельных моделей

Ну, если бы воксели не использовались в играх, то мы бы о них сейчас не говорили. Так что давайте плавненько перейдём к ним.

Воксели стали применятся в играх с 1992 года, и первой из них стала игра Comanche: Maximum Overkill. Представляла она собой аркадный вертолётный авиасимулятор.

Comanche: Maximum Overkill
Comanche: Maximum Overkill

В игре использовался собственный движок компании, «Voxel Space», полностью написанный на ассемблере. Где воксельная графика позволяла отображать более детализированные и реалистичные ландшафты по сравнению с векторной графикой того времени. Можем сравнить её с Aces Of The Pacific WWII, Birds of Prey и Dawn Patrol. Эти игры тоже были разработаны в пределе 1992 — 1994 года. И на картинках мы с вами можем увидеть большую разницу в проработке ландшафта.

Примеры других игр сделанных в 92-94х годах, но только из полигонов
Примеры других игр сделанных в 92-94х годах, но только из полигонов
Примеры других игр сделанных в 92-94х годах, но только из полигонов
Примеры других игр сделанных в 92-94х годах, но только из полигонов
Примеры других игр сделанных в 92-94х годах, но только из полигонов
Примеры других игр сделанных в 92-94х годах, но только из полигонов

Кстати, кто назовёт культовую отечественную игру, с использованием вокселей? Ответ будет в конце блога!

Главный недостаток воксельной графики

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

Карта высот в своей красе
Карта высот в своей красе

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

Как строиться ландшафт благодаря карте высот
Как строиться ландшафт благодаря карте высот

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

Наглядный пример как это происходит
Наглядный пример как это происходит

Так же воксель может представлять различные свойства. И как мы ранее говорили, «это истинный 3D кирпичик». А это значит, что достать его из объекта очень легко, так как это частичка, из которого строятся различные объекты, как и в реальной жизни, только у нас частицы очень маленькие. Поэтому в играх с частичной разрушаемостью или полной используются воксельные движки. Яркими примерами можно сделать 7 Days to Die, No Man’s Sky, Space Engineers, Trove. 

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

Перспективное будущее воксельной графики 

Теперь давайте перейдём к перспективам воксельной графики. И они колоссальны! Вы даже представить себе не можете, как. Да я и сам не могу. Как мы уже понимаем, воксели требуют много аппаратно-вычислительных мощностей. И чем реалистичнее мы строим объект, тем больше ресурсов мы потребляем, но в нынешнее время все железяки оптимизированы под полигоны. Если бы мы только смогли воспроизвести гигантское количество вокселей. Мы могли бы делать фотореалистичные игры, а также реальными в плане физики, могли бы делать более правдоподобное поведение света, газа и воды. Например, у нас есть море, и его нужно анимировать, чтобы отображались волны и морская пена, но посредствам полигонов, которые представляют собой «панель» это сделать сложно, а вот воксели как раз подошли под это. Можете взглянуть на модель снизу. Здесь используется очень много частиц, что и позволяет добиться фотореализма.

Ну или представьте себе батон из «S.T.A.L.K.E.R.», и он полностью сделан из вокселей. Из очень, очень большого количества вокселей, тогда вы сможете разрезать его где хотите, как и под любым углом, и увидеть точное пересечение.

Мой пример с хлебом
Мой пример с хлебом

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

Потуги воссоздать человеческий мозг
Потуги воссоздать человеческий мозг
Потуги воссоздать человеческий мозг
Потуги воссоздать человеческий мозг

Также мы сможем сделать реалистичное разрушение всего и вся, например, в шутере реалистичные повреждения, попадание от пуль, взрывов и так далее. Как можем увидеть на кадрах демке Voxel Plugin для Unreal Engine.

Лучше их глянуть в видеоролике!
Лучше их глянуть в видеоролике!
Лучше их глянуть в видеоролике!
Лучше их глянуть в видеоролике!
Лучше их глянуть в видеоролике!
Лучше их глянуть в видеоролике!

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

Кстати, прогресс не стоит на месте. Навряд ли кто-то знает или видел. Но у компании Euclideon есть свой воксельный движок с технологией Unlimited Detail. Unlimited Detail — программная технология в трёхмерной компьютерной графике, предназначенная для хранения и рендеринга виртуальной трёхмерной сцены посредством облака точек в режиме реального времени. На кадрах ниже продемонстрированы места, которые были сгенерированы из 3D сканов реальных мест. Результаты хоть и выглядят немного странно, но поражают своим качеством детализации. И это действительно будущее наших игр. И не только игр, а в общем, графики.

Это реально сделано из вокселей!
Это реально сделано из вокселей!
Это реально сделано из вокселей!
Это реально сделано из вокселей!
Это реально сделано из вокселей!
Это реально сделано из вокселей!
Это реально сделано из вокселей!
Это реально сделано из вокселей!

Вот представьте, когда мы сможем делать модели из микроскопических вокселей, практически не заметных глазу, и наше железо начнёт рендерить это, и мы подкрутим туда еще освещение в реальном времени, это будет нечто. Я даже боюсь представить, вдруг настанет тот момент, когда мы уже не сможем отличить реальность от игры и будет как в 4-й серии 1-го сезона Рика и Морти.

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

Нынешние реалии

Ну, о будущем помечтали. А что сейчас? Для чего нам сейчас воксели? Пока что полигонами пользоваться выгоднее, и это, бесспорно. В ближайшие десятки лет никто из гигантов игровой индустрии не перейдёт на полную замену полигонов. Следовательно, удел вокселей и воксельной графики стал визуальный стиль и игры где нужно, например, возможность рыть туннели под землёй.

Вернёмся визуальному стилю. Все началось 18 ноября 2011 г. А что у нас было 18.11.11? Да, все верно, выход легендарной игры Minecraft.

Принцип простой: воксели — это же кубы. Так в чем проблема, сделаем игру, где есть только кубы. Хотя большое заблуждение считать Minecraft воксельной игрой. В Minecraft для хранения данных о местности используются принципы воксельного ландшафта, но не используются методы рендеринга вокселей. Вместо этого он использует рендеринг полигонов для отображения каждого вокселя в виде кубического «блока». Ну а дальше пошло-поехало.

Да, есть множество игр, где используют воксельные движки для разрушения ландшафта. Но там, как и везде, идёт совмещение полигонов и вокселей. Ну а если говорить о полностью воксельной игре. В нынешнее время люди стали прибегать к вокселям в играх не ради полного разрушения и реализма, а просто ради стилизации игры. У нас же есть пиксель-арт.

Вот чем по-вашему отличаются 2 этих изображения?

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

Когда говорят о вокселях, какие первые игры приходят вам на ум? Может быть эти?

Приходят на ум только кубики?
Приходят на ум только кубики?
Приходят на ум только кубики?
Приходят на ум только кубики?

А как вам эти игры?

Вот уже лучше, нет кубов
Вот уже лучше, нет кубов
Вот уже лучше, нет кубов
Вот уже лучше, нет кубов

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

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

В мобильном гейминге вообще все просто. После выхода Crossy Road,которая задала тенденцию на воксели, на мобилках появилось колоссальное количество подражателей. Но воксели пошли на столько далеко, что все начали переводить и пиксельные игры в воксел, та же Flappy Bird, Chrome Dino (гугл динозаврик) и т.д. С каждым днём таких игр все больше. Если есть простенькая популярная 2D пиксельная игра, то ждите адаптацию на вокселях.

Ну а на ПК дела обстоят поинтересней. Можно найти добротные игры полностью из вокселей. Например, Cube World, Unrailed, Cloudpunk и ещё многое другое.

Ну и не могу не поставить в пример недавно вышедшую игру Teardown. Представляет она из себя песочницу, где у вас есть миссии и полная разрушаемость. Она действительно показывает, на что способны воксели. Эта игра нам дарит богатый игровой опыт, который мы мало где видели. А теперь представьте такую же игру, но где воксели в 100 раз меньше и остаётся такая разрушаемость.

Все бегом играть!
Все бегом играть!
Все бегом играть!
Все бегом играть!
Все бегом играть!
Все бегом играть!

Хочу стать воксель-артером!

Воксели также являются очень крутым инструментом для дизайнеров, художников и творческих людей. Давайте попытаемся вместе притронуться к ним. Не буду затрагивать разные программы для работы с вокселями, а просто остановлюсь на MagicaVoxel.

Это самое популярное ПО для воксель-арта. Бесплатно, простой интерфейс, и богат на инструменты, что ещё нам надо? Качаем, заходим и наслаждаемся! Вот, например, мои работы! Воксели дают возможность прикоснуться тебе к 3D. Как ни как, а в блендере такое сделать сложнее.

А вот вам подборка крутых работ из интернета.

Красотища же!
Красотища же!
Красотища же!
Красотища же!
Красотища же!
Красотища же!
Красотища же!
Красотища же!

Ну а если мы хотим сделать простенькую игру? То можно ещё подключить Mixamo. Тоже бесплатно. Просто загружаем нашего персонажа и вуаля!

У нас есть готовые анимации для персонажа раннер сделать уже сможем. И благодаря этому мы, считай, получаем LVL UP. Лично я раньше рисовал 2D модельки для своих проектов, а теперь могу позволить себе какое никакое 3D. Это, кстати, ответ на то, что говорилось ранее. Мобильный рынок захлестнули такие игры и это только начало. Скоро все, кому не лень будут делать игры на вокселях, так как чтобы сделать 3D модель, много знаний не надо, а анимацию можно легко прикрутить.

Заключение 

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

Лично я считаю, что за ними однозначно будущее. Ну а каким оно будет, мы уже узнаем потом. А как вы считаете, воксели это будущее или нет? Напишите своё мнение в комментариях по этому поводу, а также делитесь своим первым опытом с воксельной графикой!

И да, про культовую отечественную игру с использованием вокселей. Это Вангеры!

Да, они тоже использовали воксельные технологии для ландшафта. И на этом все. Надеюсь, что я поведал вам что-то новенькое.

Всем удачи и до скорых встреч!


ссылка на оригинал статьи https://habr.com/ru/post/667984/


Комментарии

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *