3d Ripper UV Repair

3d Ripper UV Repair

Русский

В этой статье я объясню как восстановить текстурные координаты у игровых объектов «снятых» при помощи программы 3d Ripper.

После использования 3d ripper‘a многие столкнулись с проблемой потерянных текстурных координат у «рипнутых» моделей. Однако uv-координаты никуда не пропадали. Они присутствуют на модели, но скрыты от глаз в отличном от 1-ого текстурном канале. Для восстановления uv-координат у моделей из большинства игр я написал скрипт для 3ds max, который призван решить проблему «отсутствующих» uv.

скачать скрипт (download script)

Для импорта *.3dr файлов советую всегда пользоваться такими настройками, Recommended values для каждой игры выбирать свой:

Спойлер

0. Как запустить скрипт. Открыть 3ds max. Нажать на пункт меню MAXScript и нажать на Run Script…

Выбрать в открывшемся окне скрипт uv-repair-tools.ms и открыть его.

Откроется окно скрипта:

Скрипт подходит для 3ds max любой версии от 9 до 2012. Цифра в скобках означает uv-канал из которого восстанавливаются текстурные координаты. Название игр ничего не значит, написаны они в скрипте потому, что это были первые игры в которых я обнаружил uv-координаты в соответствующих каналах (в скобках).

Восстановление uv-координат состоит из двух этапов.

1. Определение uv-канала. Для определения в каком uv-канале находятся текстурные координаты можно воспользоваться модификатором Unwrap UVW и перейти к пункту 2. А можно затекстурить объект и поочерёдно выполнять пункт 2.

2. Нажать на кнопку. В этом пункте нужно нажать на кнопку. Если через модификатор в 3ds max вы точно узнали в каком uv-канале находятся текстурные координаты, то нажмите на кнопку соответствующую uv-каналу.

Если выбрали поочерёдное нажатие то тут всё просто: поочерёдно нажимайте на каждую кнопку пока не увидите, что текстура встала ровно на модели. После завершения преобразования объект автоматически преобразуется в Editable Poly.

После того как uv-координаты восстановлены попробуйте этот способ ещё на нескольких объектах. Бывает, что в одной и той же игре текстурные координаты у разных объектов находятся в разных uv-каналах. Для определения выбирайте разные типы объектов: главный персонаж, статические объекты, анимированные объекты, оружие, стекло, растительность, монстры, глаза, лампы (сами лампочки/свет), волосы и т.д. Если уверены, что тот или иной тип объектов имеет один и тот же uv-канал то можете выделить группу (иногда все) объекты и нажать на соответствующую кнопку.

ВНИМАНИЕ: В скрипте содержатся непонятные ошибки. Не стоит пренебрегать многократным нажатием на разные (и на одну и ту же) кнопки. Во время нажатия на кнопку с объектом происходят определённые преобразования, в которых участвуют как модификаторы и встроенный скриптовый язык так и луч с венеры отражённый в болотном газе.

3. Это интересно. Существуют игры, в которых uv-координаты действительно теряются. Для их получения можно попробовать следующее:

  • «рипнуть» объект из скриптовой сцены;
  • «рипнуть» модель с другого ракурса или другой игровой локации;
  • перед «рипом» отключить все эффекты оставив тем не менее макс. детализацию объектов;

Бывает и такое, что 3d ripper не справляется и «рипается» только куски уровня/объекта. Пример Mafia: The City of Lost Heaven. Как ни пытался на моей конфигурации компьютера ничего кроме персонажа и ландшафта «рипнуть» не удалось.

В некоторых играх разработчики используют анимацию (или их «подложку») текстурных координат. Пример Bad Company 2. Мало того, что объекты имеют различные каналы с координатами (определил 6 и 8), так ещё и координаты некоторых объектов смещены/уменьшены. Приходится выправлять руками.

Случается и так, что координаты восстановить не удаётся ни при каких условиях (0,1%), тут уж ничего не поделать.

Просьба: Если у какой нибудь игры вы определили uv-канал с текстурными координатами, не поленитесь напечатать название и номер uv-канала ниже в комментариях. В дальнейшем я возможно расширю инструментарий и информативность скрипта.

p.s.: я так же выкладываю сэмпл: в файле cod-bo-sample.max uv-координаты оригинальные, в файле cod-bo-sample-f.max uv-координаты исправлены. Текстуры прилагаются.

скачать пример

74 thoughts on “3d Ripper UV Repair

  1. Уведомление: kamagra 50 mg nízké náklady
  2. Уведомление: generique kamagra en paris

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

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