Как, наверное, каждый тридешник знает, что развертка текстурных координат – это самое муторное, долгое и уж никак не творческое занятие.
Порой я сам при создании 3d-персонажа (да и вообще любой 3d-модели) трачу на создание хорошей UV-развертки больше времени, чем на создание самой 3d-модели.
Хорошо если бы раскладка UV было единственной проблемой, но ей еще сопутствуют такие траблы как:
- Проблемы со швами (особенно если у вас есть карты бампа или дисплейсмента).
- Переделывание уже готовых ювишек, поскольку текстура тянется в определенных местах при анимации. Поэтому нужно сохранить и старые текстуры со старым мешем, и новые текстуры с новым мешем. В общем, сплошная головная боль.
И вот появляется Ptex! Разработали эту технологию в анимационной студии Диснея еще несколько лет назад. И все ждали этой технологии как манны небесной, поскольку – это было уж слишком многообещающе. Это как покупка квартиры, которая сама будет делать уборку.
Принцип работы Ptex очень прост: текстура сохраняется параметрически для каждого полигона вообще без видимых швов. Если грубо, то это работает, поскольку у каждого полигона есть свои координаты относительно своих соседних полигонов.
Вот пример того тиранозаврика, на котором Дисней демонстрировала возможности этой технологии.
Как вы видите – никаких швов между полигонами.
От нас, как от тридешников, вообще не требуется никаких действий. Мы просто нажимаем кнопку «создать текстуру Ptex» и вперед, рисовать.
Другие немаловажные преимущества Ptex:
- Поддерживаются сабдивы.
- Данные широкого дипазона: 8-bit, 16-bit и с плавающей точкой.
- Возможность сохранять любое количество текстур (диффуз, бамп, зеркальность, нормали, нормали с 3d-векторами) в одном .ptx файле.
И вот, после того как в прошлом году архитектуру Ptex сделали открытой – оставалось только ждать появления поддержки этого формата во всех 3d-пакетах.
Рад сообщить, что это время наступило!
Сначала этот формат внедрили в пиксаровский Renderman. Затем о поддержке этого формата было заявлено с выходом новой версии 3D-Coat. Несколько месяцев назад вышла одиннадцатая версия Houdini с поддержкой Ptex текстур. Autodesk объявила о скором выходе (через несколько недель) обновления для Mudbox с полноценной поддержкой формата Ptex. Также интеграция Ptex должна в скором времени произойти и в пакет для рисования текстур Mari (именно в нем рисовались текстуры для фильма Avatar).
Кстати, если вы у меня на Твиттере пропустили ссылку на отличную демонстрацию возможностей Ptex внутри Mudbox (которую проводили ребята из Pixar), то вам
А теперь немножко фантазии :). Если Autodesk уже взялась за внедрение этой технологии в Мудбокс, то думаю, скоро, поддержка появится и в Maya, и в 3ds Max, и в Softimage.
А там, гляди, и ZBrush подтянется!
Подпишитесь на обновление блога (вот 3 причины для этого).
Так что скоро будем рассказывать страшные истории своим детям: «А вот когда-то, мы все это делали руками, с помощью юви-развертки!»
Вам понравилась статья? Хотите отблагодарить автора? Расскажите о ней друзьям.
Или подпишитесь на обновление блога по E-Mail.
комментариев 16 к статье “Ptex — конец рутинной развертке текстурных координат”
Извините, в данный момент комметарии закрыты.
круто!
А текстуры не будут тянуться с тянущимися полигонами? Юв хоть и муторная вещь, но дает больше гибкости возможностью работать с текстурой в фотошопе. Для персонажей можно использовать Uvlayoutpro. Птех останется еще одним инструментом, а не заменой.
Любопытно… Жаль, в LW поддержки Ptex не будет, а если и появится, то когда-нибудь.
2Q ошибаетесь вот пример работы 3dcoat+lightwave)
http://www.3d-coat.com/3d-coat-33/
ps мне вот интересно, а что потом уже нельзя эти карты редактировать в фотошопе я например не представляю?
уважаемый,
не дезинформируйте публику,
никакой поддержки птекс в Мари нет и небыло,
на аватаре птексом точно не пользовались (там практически вся работа по текстурам была заверешена за год до выхода спецификации), сейчас они договорились с диснее о покупке их тулзов и возможно только в следующем году поддержка птекс в мари появится.
вот так и рождаются сплетни 🙂
Да, точно, подержки Ptex в Mari на данный момент нет. Извините.подтверждение (датированное мартом 2010-го года), что внедрение Ptex в Mari — это одна из первоочередных задач. Так что думаю это уже не за горами 🙂
При написании статьи использовал англоязычные источники, один из которых упоминал этот факт. Я и поверил на слово.
НО я нигде не говорил, что Ptex использовали при создании Аватара.
P.S. Нашел официальное
зная как работает фаундри «не за горами» это думаю примерно около года 🙂
По принципу действия, ptex — это то же самое, что и AUVTiles в ZBrush, только с более удобным интерфейсом. А AUVTiles в ZBrush был еще чуть ли не десять лет назад. Потому предпоследняя фраза в статье, на мой взгяд, черезмерно саркастична. Уверен, что никакой революции в «развёрткостроении» ptex не произведёт. И через пару/тройку лет про него также забудут. И в ZBrush эту новую «красивость» тоже внедрять не будут: Pixologic — это вам не Autodesk, Pixologic всегда впереди планеты всей, и лишние дубликаты лишних инструментов ему не нужны 😉
«по принципу действия, ptex – это то же самое, что и AUVTiles в ZBrush»
эээээ да вапщето практически ничего общего 🙂
Может я не совсем правильно понял принцип птекса…
Вот yuriki пишет:»…используя Ptex, вы рисуете на отдельных полигонах, которые автоматически (без вашего вмешательства и вы даже не заморачиваетесь тем, как это сделано) развернули на плоскости (а-ля UV) без искажений, но при этом Ptex содержит информацию о бесшовном соединении всех полигонов с соседними полигонами…» А это же самый натуральный AUV Tiles в ZBrush.
Кроме того, тот человек на сигграфе еще говорит, что каждый полигон получает индивидуальный ID, а потом машина автоматически один полигон к другому подгоняет соответственно его номеру ID. А это (хрен редьки не слаще) самый настоящий GUV Tiles в ZBrush.
В общем, в результате выходит, что Ptex — это аналог этих вещей в Mudbox, но (чем Mudbox и подкупает пользователей) с более удобным и дружественным интерфейсом.
А еще в ZBrush есть PUV Tiles — гибрид АUV Tiles и GUV Tiles, наверное самое близкое с PTEX решение, но такое же бесполезное.
Одним словом, пока сам не увижу, что Ptex не оставляет всяких досадных артефактов, как GUV Tiles, PUV Tiles и AUV Tiles — не поверю, что это что то новое в текстуринге))).
Вообще, против PTEX я ничего не имею, может я просто не знаю какого то программного кода, который структурно повторяет заклинания шаманов Вуду и помогает избегать всяческих неприятностей по работе и вообще по жизни))), просто мне не понравился сарказм в предпоследней фразе в статье, которую мы и обсуждаем.
PS: На работе приходится работать только в Mudbox, и я искренне ненавижу эту программу, как мог бы ненавидеть стандартный виндосовский Paint человек, умеющий работать в Photoshop)))
Ох…что-то я запутался.
УВ меппинг — это соответствие между координатами на поверхности трёхмерного объекта (X, Y, Z) и координатами на текстуре (U, V).
PTex(Per-Face Textures) — это чем отличается?
Судя по видео(http://area.autodesk.com/siggraph/video23 ) — там не очень понятно чем Ptex отличается. Зато рассказали про различия между Scalar Displacement и VectorDisplacement 🙂
Если очень грубо, то используя Ptex, вы рисуете на отдельных полигонах, которые автоматически (без вашего вмешательства и вы даже не заморачиваетесь тем, как это сделано) развернули на плоскости (а-ля UV) без искажений, но при этом Ptex содержит информацию о бесшовном соединении всех полигонов с соседними полигонами.
Надеюсь понятно объяснил.
Интересно, а когда появится поддержка 3ds Max ?
Работаю с 3дс максом много, а такой фишки на нее нет! Это же свнство какое-то от Диснея 🙂
Так еще с 2010 года появились специальные плагины под 3Ds MAX для поддержки PTEX, так же в современных рендерах есть поддержка PTEX…
Погуглите есть тонны плагинов и обсуждений на эту тему.
В конце то концов еще в 2009 появились инструменты для разработчиков под PTEX…
А вот к примеру у меня есть модель, состоящая из 20-30 деталий, с которой я буду работать в MudBox (каждая деталь, это отдельный Editable Poly) . Я надеюсь, Ptex равномерно сделает «свою развертку UVW» на все 20-30 деталий так, чтобы они не отличались между собой детализированностью?
То есть, вот с обычным » Unwrap UVW » мне приходится подгонять разверточную сетку каждой детали так, чтобы везде на них был одинаковый checker. Вот. А если он одинаковый, значит и детализирование будет везде одинаковой.
А что насчет Ptex? Я же его буду применять к каждой отдельной детали. Надеюсь различия в детализировании не будут.
надеюсь все понятно объяснил 🙂
PTex стоит в планах внедрения в blender 2.76