Воксел

Поделись знанием:
(перенаправлено с «Воксель»)
Перейти к: навигация, поиск

Во́ксел (в разговорной речи во́ксель, англ. Voxel — образовано из слов: объёмный (англ. volumetric) и пиксел (англ. pixel)) — элемент объёмного изображения, содержащий значение элемента растра в трёхмерном пространстве. Вокселы являются аналогами двумерных пикселов для трёхмерного пространства. Воксельные модели часто используются для визуализации и анализа медицинской и научной информации.





Представление в памяти

Как и в случае с пикселами, сами по себе вокселы не содержат информации о своих координатах в пространстве. Их координаты вычисляются из их позиции в трёхмерной матрице — структуре, моделирующей объёмный объект или поле значений параметра в трёхмерном пространстве.

Этим вокселы отличаются от объектов векторной графики, для которых известны координаты их опорных точек (вершин) и прочие параметры.

Воксельные модели имеют определённое разрешение. Каждый воксел имеет определённое значение, например, цвет.

Для хранения воксельной модели применяют массив размерами X×Y×Z. Несжатые воксельные модели (по сравнению с векторными) потребляют гораздо больше места в памяти для обработки. К примеру, одна несжатая модель размером 256×256×256 вокселей будет занимать память объёмом от 32 МБ (256*256*256=16777216 вокселей и как минимум 2 байта на воксель даже в 256-ти градациях серого, так как к ним надо добавить 256 градаций прозрачности, итого 16777216*2=33554432 байт=33554432/1024=32768 КБ = 32768/1024=32 МБ), в то время как векторной модели может потребоваться в десятки или даже сотни раз меньше.

Разреженное воксельное октодерево

Одной из новейших перспективных технологий, позволяющей делать эффективную детализацию воксельных объектов, является разреженное воксельное октодерево (sparse voxel octree). В числе её преимуществ: значительная экономия памяти, естественная генерация уровней детализации (аналога mipmap-карт) и высокая скорость обработки в рейкастинге.

Первый узел дерева — корень, является кубом, содержащим весь объект целиком. Каждый узел или имеет 8 кубов-потомков, или не имеет никаких потомков. В результате всех подразбиений получается регулярная трёхмерная сетка вокселей.

Докселы

Докселы — это вокселы, изменяющиеся во времени. Как ряд картинок составляет анимацию, так и ряд воксельных моделей во времени могут составлять трёхмерную анимацию.

Области применения

Благодаря тому, что трёхмерная матрица хранит значение воксела для каждого единичного элемента объёмного пространства, воксельные модели хорошо подходят для моделирования непрерывных сред и полей значений (например, распределение угарного газа в атмосфере над городом), в то время как векторные более предназначены для моделирования дискретных объектов.

Медицинские данные

Ряд медицинских устройств, как, например, сканеры компьютерной томографии, трехмерное УЗИ, МРТ выдают послойную информацию при сканировании. По завершении сканирования строится воксельная модель. Значения вокселей в этом случае отражают данные с устройства. В компьютерной томографии, например, это прозрачность тела по шкале Хаунсфилда, то есть прозрачность для рентгеновских лучей.

Для воксельных моделей (например, медицинских данных со сканера МРТ) просто реализуется вывод любого сечения модели. Это даёт возможность изучить любой срез данных.

Визуализация

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

Для улучшения качества изображения используются более сложные алгоритмы отрисовки: алгоритм Marching cubes и другие. Алгоритм «Marching Cubes» (бегущие кубики) строит изоповерхность, опираясь на данные вокселов. Обычная реализация алгоритма использует значения 8-ми соседних вокселов, чтобы отрисовать полигон внутри куба, образованного их координатами. Так как существует всего 256 возможных комбинаций, можно заранее их подготовить и использовать типовые «кирпичики» (уже в экранных координатах) для отрисовки больших объёмов данных в хорошем качестве.

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

Объёмные дисплеи

Объёмные дисплеи могут выводить модели в трёхмерном объёме. Такие дисплеи используют различные физические механизмы для показа светящихся точек в пределах некоторого объёма. Например, могут состоять из множества плоскостей, формирующих изображение, которые расположены одна над другой, или плоских панелей, создающих эффект объёмности за счёт своего вращения в пространстве[1][2].

Иногда для таких дисплеев указывается их разрешение в вокселах, например 128×128×128.

Вокселы в компьютерных играх

Вокселы давно используются в компьютерных играх, однако их использование ограничено из-за серьёзных требований к аппаратной части. Чаще всего в играх вокселы используются для отрисовки моделей. Иногда используются воксельные ландшафты вместо обычного поля высот — это позволяет создавать более сложные пространства с пещерами и мостами. Одной из самых важных возможностей воксельных ландшафтов, интерьеров и объектов является возможность их динамического изменения и разрушения в реальном времени.

Воксельные движки встречались в играх:

  • Компания NovaLogic использовала воксельные графические движки в сериях игр Delta Force, Armored Fist и Comanche.
  • Игры Command & Conquer: Tiberian Sun и Command & Conquer: Red Alert 2 от компании Westwood Studios использовали воксельные модели транспортных средств.
  • Игра Blade Runner.
  • Игра Outcast использовала вокселы для прорисовки объектов.
  • Игра Amok.
  • Игра Вангеры использовала большие многоуровневые непрерывные воксельные пространства с изменяемыми «живыми» ландшафтами.
  • В движке Build Engine есть возможность использования воксельных объектов. Такие объекты используются в шутерах Shadow Warrior и Blood, построенных на этом движке, а также в переработанном Duke Nukem 3D High Resolution Pack.
  • Игра Thunder Brigade.
  • Master of Orion III использует воксельную графику для отображения космических битв и солнечных систем.
  • В игровом движке CryEngine 2, который использовался в играх Crysis, Crysis Warhead и Crysis Wars, вокселы использовались для построения пустых пространств под поверхностью ландшафта уровня.
  • Игры Worms 3D и Worms 4: Mayhem использовали «покселы» (англ. poxel, образовано от voxel (воксел) + polygon (полигон)) для динамически разрушаемого трёхмерного ландшафта, подобного ландшафту в двухмерных версиях.
  • Игра Hexplore.
  • Игра Minecraft использует подобие воксельной графики для создания случайно генерируемого ландшафта, но рендеринг производит с помощью полигонов.
  • Игра Voxelstein 3D использует воксельный движок «Voxlap», благодаря которому вся геометрия игры построена на вокселах и полностью разрушаема[3].
  • Движок id Tech 6 компании id Software будет использовать инновационную технологию «Sparse Voxel Octree» (SVO, рус. Разреженное воксельное октодерево) для визуализации статических объектов (ландшафта, массивных строений и т. д.) игрового уровня.
  • Графический движок OTOY, ориентированный на серверное исполнение, будет использовать вокселы для построения геометрии уровня и трассировку лучей для освещения.
  • Игра Ace of Spades использует воксельный движок Voxlap.
  • Игра Cube World использует воксельную графику для создания случайно генерируемого игрового мира, моделей игроков и NPC.
  • Игра Trove использует воксельный движок, написанный на C++.

См. также

Напишите отзыв о статье "Воксел"

Примечания

  1. [science.compulenta.ru/391937/ Объемные дисплеи: очередной шаг к массовому производству] Компьюлента, 24.12.2008.
  2. [www.osp.ru/cw/2002/28-29/54537/ Истинно объемное изображение.] Computerworld Россия, 06.08.2002
  3. [voxelstein3d.sourceforge.net/ Сайт Voxelstein 3D]

Ссылки

  • [www.cs.sunysb.edu/~vislab/projects/volume/Papers/Voxel/index.html Fundamentals of Voxelization] (англ.). IEEE Computer, Vol. 26, No. 7 (июль 1993 года). Проверено 9 июля 2010. [www.webcitation.org/65XTHidqM Архивировано из первоисточника 18 февраля 2012].
  • Дмитрий Чеканов. [www.thg.ru/graphic/voxel_ray_casting/onepage.html Рендеринг с помощью вокселей: новый уровень графики в играх?] 3. Tom's Hardware (30 октября 2009 года). — Статья, описывающая вокселы, октодеревья, рейкастинг, их перспективы и ограничения. Проверено 6 февраля 2010. [www.webcitation.org/65XTIBJtu Архивировано из первоисточника 18 февраля 2012].
  • Рони Ягель Кафедра информатики, Университет шт. Огайо, США. [www.osp.ru/os/1996/05/178968/ Рендеринг объемов в реальном времени]. Открытыe системы (издательство) (16 мая 1996 года). Проверено 11 февраля 2010. [www.webcitation.org/65XTLmYBF Архивировано из первоисточника 18 февраля 2012].
  • Рони Ягель Кафедра информатики, Университет шт. Огайо, США. [www.osp.ru/os/1996/05/178971/ Аппаратный рендеринг объема]. Открытыe системы (издательство) (16 мая 1996 года). Проверено 11 февраля 2010. [www.webcitation.org/65XTNNZhx Архивировано из первоисточника 18 февраля 2012].
  • [www.gamedev.ru/code/terms/Voxel Voxel (Воксель)]. GameDev.ru (23 марта 2007 года). Проверено 9 июля 2010. [www.webcitation.org/65XTOmS8U Архивировано из первоисточника 18 февраля 2012].
  • Сергей Книгин. [www.really.ru/index.php?option=com_content&view=article&id=107:------&catid=15&Itemid=97 Что мы увидим, когда мы это увидим]. Really.ru (21 февраля 2007 года). Проверено 10 июля 2010. [www.webcitation.org/67lYqV4FF Архивировано из первоисточника 19 мая 2012].
  • hitan. [www.codenet.ru/progr/video/voxel/index.php Воксели (Voxel)] 3. CodeNet.ru (7 марта 2009 года). Проверено 10 июля 2010. [www.webcitation.org/65XTPWQuL Архивировано из первоисточника 18 февраля 2012].
  • [www.jonof.id.au/forum/index.php?topic=1664.0;wap2 List of all Voxel Engines] (англ.). jonof.id.au (14 марта 2009 года). Проверено 10 июля 2010. [www.webcitation.org/65XTQKPxT Архивировано из первоисточника 18 февраля 2012].

Отрывок, характеризующий Воксел

– В генералы и матушку произвели? – сказал князь Aндрей улыбаясь.
Пелагеюшка вдруг побледнела и всплеснула руками.
– Отец, отец, грех тебе, у тебя сын! – заговорила она, из бледности вдруг переходя в яркую краску.
– Отец, что ты сказал такое, Бог тебя прости. – Она перекрестилась. – Господи, прости его. Матушка, что ж это?… – обратилась она к княжне Марье. Она встала и чуть не плача стала собирать свою сумочку. Ей, видно, было и страшно, и стыдно, что она пользовалась благодеяниями в доме, где могли говорить это, и жалко, что надо было теперь лишиться благодеяний этого дома.
– Ну что вам за охота? – сказала княжна Марья. – Зачем вы пришли ко мне?…
– Нет, ведь я шучу, Пелагеюшка, – сказал Пьер. – Princesse, ma parole, je n'ai pas voulu l'offenser, [Княжна, я право, не хотел обидеть ее,] я так только. Ты не думай, я пошутил, – говорил он, робко улыбаясь и желая загладить свою вину. – Ведь это я, а он так, пошутил только.
Пелагеюшка остановилась недоверчиво, но в лице Пьера была такая искренность раскаяния, и князь Андрей так кротко смотрел то на Пелагеюшку, то на Пьера, что она понемногу успокоилась.


Странница успокоилась и, наведенная опять на разговор, долго потом рассказывала про отца Амфилохия, который был такой святой жизни, что от ручки его ладоном пахло, и о том, как знакомые ей монахи в последнее ее странствие в Киев дали ей ключи от пещер, и как она, взяв с собой сухарики, двое суток провела в пещерах с угодниками. «Помолюсь одному, почитаю, пойду к другому. Сосну, опять пойду приложусь; и такая, матушка, тишина, благодать такая, что и на свет Божий выходить не хочется».
Пьер внимательно и серьезно слушал ее. Князь Андрей вышел из комнаты. И вслед за ним, оставив божьих людей допивать чай, княжна Марья повела Пьера в гостиную.
– Вы очень добры, – сказала она ему.
– Ах, я право не думал оскорбить ее, я так понимаю и высоко ценю эти чувства!
Княжна Марья молча посмотрела на него и нежно улыбнулась. – Ведь я вас давно знаю и люблю как брата, – сказала она. – Как вы нашли Андрея? – спросила она поспешно, не давая ему времени сказать что нибудь в ответ на ее ласковые слова. – Он очень беспокоит меня. Здоровье его зимой лучше, но прошлой весной рана открылась, и доктор сказал, что он должен ехать лечиться. И нравственно я очень боюсь за него. Он не такой характер как мы, женщины, чтобы выстрадать и выплакать свое горе. Он внутри себя носит его. Нынче он весел и оживлен; но это ваш приезд так подействовал на него: он редко бывает таким. Ежели бы вы могли уговорить его поехать за границу! Ему нужна деятельность, а эта ровная, тихая жизнь губит его. Другие не замечают, а я вижу.
В 10 м часу официанты бросились к крыльцу, заслышав бубенчики подъезжавшего экипажа старого князя. Князь Андрей с Пьером тоже вышли на крыльцо.
– Это кто? – спросил старый князь, вылезая из кареты и угадав Пьера.
– AI очень рад! целуй, – сказал он, узнав, кто был незнакомый молодой человек.
Старый князь был в хорошем духе и обласкал Пьера.
Перед ужином князь Андрей, вернувшись назад в кабинет отца, застал старого князя в горячем споре с Пьером.
Пьер доказывал, что придет время, когда не будет больше войны. Старый князь, подтрунивая, но не сердясь, оспаривал его.
– Кровь из жил выпусти, воды налей, тогда войны не будет. Бабьи бредни, бабьи бредни, – проговорил он, но всё таки ласково потрепал Пьера по плечу, и подошел к столу, у которого князь Андрей, видимо не желая вступать в разговор, перебирал бумаги, привезенные князем из города. Старый князь подошел к нему и стал говорить о делах.
– Предводитель, Ростов граф, половины людей не доставил. Приехал в город, вздумал на обед звать, – я ему такой обед задал… А вот просмотри эту… Ну, брат, – обратился князь Николай Андреич к сыну, хлопая по плечу Пьера, – молодец твой приятель, я его полюбил! Разжигает меня. Другой и умные речи говорит, а слушать не хочется, а он и врет да разжигает меня старика. Ну идите, идите, – сказал он, – может быть приду, за ужином вашим посижу. Опять поспорю. Мою дуру, княжну Марью полюби, – прокричал он Пьеру из двери.
Пьер теперь только, в свой приезд в Лысые Горы, оценил всю силу и прелесть своей дружбы с князем Андреем. Эта прелесть выразилась не столько в его отношениях с ним самим, сколько в отношениях со всеми родными и домашними. Пьер с старым, суровым князем и с кроткой и робкой княжной Марьей, несмотря на то, что он их почти не знал, чувствовал себя сразу старым другом. Они все уже любили его. Не только княжна Марья, подкупленная его кроткими отношениями к странницам, самым лучистым взглядом смотрела на него; но маленький, годовой князь Николай, как звал дед, улыбнулся Пьеру и пошел к нему на руки. Михаил Иваныч, m lle Bourienne с радостными улыбками смотрели на него, когда он разговаривал с старым князем.
Старый князь вышел ужинать: это было очевидно для Пьера. Он был с ним оба дня его пребывания в Лысых Горах чрезвычайно ласков, и велел ему приезжать к себе.
Когда Пьер уехал и сошлись вместе все члены семьи, его стали судить, как это всегда бывает после отъезда нового человека и, как это редко бывает, все говорили про него одно хорошее.


Возвратившись в этот раз из отпуска, Ростов в первый раз почувствовал и узнал, до какой степени сильна была его связь с Денисовым и со всем полком.
Когда Ростов подъезжал к полку, он испытывал чувство подобное тому, которое он испытывал, подъезжая к Поварскому дому. Когда он увидал первого гусара в расстегнутом мундире своего полка, когда он узнал рыжего Дементьева, увидал коновязи рыжих лошадей, когда Лаврушка радостно закричал своему барину: «Граф приехал!» и лохматый Денисов, спавший на постели, выбежал из землянки, обнял его, и офицеры сошлись к приезжему, – Ростов испытывал такое же чувство, как когда его обнимала мать, отец и сестры, и слезы радости, подступившие ему к горлу, помешали ему говорить. Полк был тоже дом, и дом неизменно милый и дорогой, как и дом родительский.
Явившись к полковому командиру, получив назначение в прежний эскадрон, сходивши на дежурство и на фуражировку, войдя во все маленькие интересы полка и почувствовав себя лишенным свободы и закованным в одну узкую неизменную рамку, Ростов испытал то же успокоение, ту же опору и то же сознание того, что он здесь дома, на своем месте, которые он чувствовал и под родительским кровом. Не было этой всей безурядицы вольного света, в котором он не находил себе места и ошибался в выборах; не было Сони, с которой надо было или не надо было объясняться. Не было возможности ехать туда или не ехать туда; не было этих 24 часов суток, которые столькими различными способами можно было употребить; не было этого бесчисленного множества людей, из которых никто не был ближе, никто не был дальше; не было этих неясных и неопределенных денежных отношений с отцом, не было напоминания об ужасном проигрыше Долохову! Тут в полку всё было ясно и просто. Весь мир был разделен на два неровные отдела. Один – наш Павлоградский полк, и другой – всё остальное. И до этого остального не было никакого дела. В полку всё было известно: кто был поручик, кто ротмистр, кто хороший, кто дурной человек, и главное, – товарищ. Маркитант верит в долг, жалованье получается в треть; выдумывать и выбирать нечего, только не делай ничего такого, что считается дурным в Павлоградском полку; а пошлют, делай то, что ясно и отчетливо, определено и приказано: и всё будет хорошо.
Вступив снова в эти определенные условия полковой жизни, Ростов испытал радость и успокоение, подобные тем, которые чувствует усталый человек, ложась на отдых. Тем отраднее была в эту кампанию эта полковая жизнь Ростову, что он, после проигрыша Долохову (поступка, которого он, несмотря на все утешения родных, не мог простить себе), решился служить не как прежде, а чтобы загладить свою вину, служить хорошо и быть вполне отличным товарищем и офицером, т. е. прекрасным человеком, что представлялось столь трудным в миру, а в полку столь возможным.
Ростов, со времени своего проигрыша, решил, что он в пять лет заплатит этот долг родителям. Ему посылалось по 10 ти тысяч в год, теперь же он решился брать только две, а остальные предоставлять родителям для уплаты долга.

Армия наша после неоднократных отступлений, наступлений и сражений при Пултуске, при Прейсиш Эйлау, сосредоточивалась около Бартенштейна. Ожидали приезда государя к армии и начала новой кампании.
Павлоградский полк, находившийся в той части армии, которая была в походе 1805 года, укомплектовываясь в России, опоздал к первым действиям кампании. Он не был ни под Пултуском, ни под Прейсиш Эйлау и во второй половине кампании, присоединившись к действующей армии, был причислен к отряду Платова.
Отряд Платова действовал независимо от армии. Несколько раз павлоградцы были частями в перестрелках с неприятелем, захватили пленных и однажды отбили даже экипажи маршала Удино. В апреле месяце павлоградцы несколько недель простояли около разоренной до тла немецкой пустой деревни, не трогаясь с места.
Была ростепель, грязь, холод, реки взломало, дороги сделались непроездны; по нескольку дней не выдавали ни лошадям ни людям провианта. Так как подвоз сделался невозможен, то люди рассыпались по заброшенным пустынным деревням отыскивать картофель, но уже и того находили мало. Всё было съедено, и все жители разбежались; те, которые оставались, были хуже нищих, и отнимать у них уж было нечего, и даже мало – жалостливые солдаты часто вместо того, чтобы пользоваться от них, отдавали им свое последнее.
Павлоградский полк в делах потерял только двух раненых; но от голоду и болезней потерял почти половину людей. В госпиталях умирали так верно, что солдаты, больные лихорадкой и опухолью, происходившими от дурной пищи, предпочитали нести службу, через силу волоча ноги во фронте, чем отправляться в больницы. С открытием весны солдаты стали находить показывавшееся из земли растение, похожее на спаржу, которое они называли почему то машкин сладкий корень, и рассыпались по лугам и полям, отыскивая этот машкин сладкий корень (который был очень горек), саблями выкапывали его и ели, несмотря на приказания не есть этого вредного растения.
Весною между солдатами открылась новая болезнь, опухоль рук, ног и лица, причину которой медики полагали в употреблении этого корня. Но несмотря на запрещение, павлоградские солдаты эскадрона Денисова ели преимущественно машкин сладкий корень, потому что уже вторую неделю растягивали последние сухари, выдавали только по полфунта на человека, а картофель в последнюю посылку привезли мерзлый и проросший. Лошади питались тоже вторую неделю соломенными крышами с домов, были безобразно худы и покрыты еще зимнею, клоками сбившеюся шерстью.