CPU3DИИ-инструменты для 3D и видео

Hunyuan3D 2.1 без CUDA: обновление добавило ROCm и PBR-текстурирование

Порт Hunyuan3D 2.1 на железо без CUDA обновился 9 августа 2026 года, и в нём появилось то, чего раньше не было совсем: поддержка видеокарт AMD через ROCm (Linux и Windows) и PBR-текстурирование. Прежняя версия описания прямо утверждала, что текстурирование без CUDA невозможно; теперь оно проверено от начала до конца и на AMD, и на Apple Silicon.

Сам порт — это установщики, слой совместимости и веб-интерфейс на Gradio вокруг оригинального Hunyuan3D 2.1 от Tencent. На вход одна картинка, на выходе меш в одном из семи форматов (obj, glb, ply, stl, fbx, dae, 3mf), а теперь ещё и текстуры: GLB с настоящим PBR-материалом или архив с OBJ, MTL и картами.

Раскрытие. Репозиторий ведёт Владимир Талызин — он же автор и владелец cpu3d.com. Мы пишем о собственной работе и говорим об этом прямо: все числа ниже взяты из описания репозитория, ссылка на первоисточник стоит выше, и проверить их может кто угодно.

Что появилось в обновлении

  • PBR-текстурирование без CUDA. Генерация albedo и metallic-roughness плюс запекание UV — проверено и на ROCm, и на Apple MPS.
  • Растеризатор, которому не нужен компилятор — реализация на чистом PyTorch. Именно она делает текстурирование возможным на Windows: тамошняя ROCm-сборка PyTorch не умеет линковать расширения на C++ вовсе.
  • Внимание, которое помещается в память. Разбитое на куски SDPA держит пик выделения на видеокартах без flash attention и даёт результат бит в бит такой же, как без разбиения.
  • Проверка перед стартом, которая отказывает, а не роняет машину. Настройки выше того, что переживёт видеокарта, отклоняются с объяснением: на ROCm — потому что иначе будет сброс драйвера, на MPS — потому что Metal просто не выдаст такой буфер.
Чайник: исходная картинка и четыре ракурса текстурированной модели
Слева вход, справа четыре ракурса текстурированного результата. Чайник — проверка на топологию: сквозное отверстие в ручке сохраняется, а неглазурованное донце текстурируется отдельно от глазури. Снимок из репозитория, посчитан на Radeon 8060S.

Сколько это занимает

Один и тот же вход и одинаковые настройки на двух машинах. Обе — худший случай для этой модели: flash attention нет ни там, ни там, поэтому обе считали пресетом «Safe», то есть 6 ракурсов по 256 точек.

ШагRadeon 8060S (gfx1151, Windows, ROCm 7.2)Apple M4 Pro, 24 ГБ
Форма: 30 шагов, октодерево 192примерно 6,4 мин5,7 мин
PBR-текстура: 6 ракурсов, 256 точекпримерно 2,5 мин8,5 мин
Растеризация: 80 тыс. граней, 2048x2048примерно 80 мс152 мс

Обратите внимание: Radeon 8060S — это встроенная графика, и текстурирование на ней быстрее, чем на Mac. На M4 Pro с 24 ГБ этому этапу тесно, прогон уходит примерно в 8 ГБ подкачки.

Кроссовок: исходная картинка и четыре ракурса текстурированной модели
Настоящая проверка PBR — несколько материалов в одном предмете: протектор подошвы, сетка верха и шнурки разделяются чисто. Снимок из репозитория.

Почему текстуры считаются в 256 точек, а не в 768

Дело не в объёме памяти, а в том, как он растёт. Многоракурсное внимание склеивает все ракурсы в одну последовательность, и матрица внимания растёт квадратично. Замерено, а не прикинуто: 6 ракурсов по 256 точек — 4,2 ГиБ, всё считается; 6 по 512 — 67,5 ГиБ, машина зависает; 8 по 768 — 607,5 ГиБ, безнадёжно. Поэтому на железе без flash attention работает пресет «Safe», а проверка перед стартом отклоняет всё, что выше предела: на ROCm он равен 5 ГиБ.

Отдельная грабля Windows

У драйвера дисплея есть сторож: если одна операция на видеокарте не вернулась за 2 секунды, Windows сбрасывает GPU. Процесс при этом не падает — он продолжает считать на видеокарте, которая теперь возвращает неверные числа. После такого сброса перемножение матриц 1024x1024 из единиц дало 947,3 вместо 1024, при том что суммы оставались точными. Меши и текстуры молча выходят испорченными, и выглядит это как ошибка в самом конвейере. Лечится поднятием TdrDelay до 60 секунд, а scripts/doctor.py отдельно проверяет, что видеокарта ещё считает правильно.

Что нужно, чтобы поставить

На каждую платформу свой установщик: install.sh для Apple Silicon, scripts/install_rocm.sh для AMD под Linux, scripts/install_rocm_windows.ps1 для AMD под Windows. Скачать придётся примерно 30 ГБ весов: около 15 ГБ на форму, 6,5 ГБ на текстуры и 4,5 ГБ на facebook/dinov2-giant. Интерфейс переведён на английский, китайский и русский.

Лицензий тут две, и это важно. Веса идут под Tencent Hunyuan 3D 2.1 Community License: она не распространяется на ЕС, Великобританию и Южную Корею, а коммерческое использование ограничено порогом в 100 млн активных пользователей в месяц. Код самих обёрток — MIT, отдельным файлом.

Что это значит для справочника

В нашем справочнике этот порт стоит карточкой Hunyuan3D 2.1 без CUDA (Mac и AMD). Паспорт и текст карточки пересобраны по обновлённому репозиторию: в платформах теперь Apple Silicon, MPS и ROCm, форматов экспорта семь, а к генерации формы добавилось текстурирование. Исходная модель, вокруг которой всё это построено, разобрана отдельно — Hunyuan3D 2.1.

Практический смысл обновления простой: до сих пор картинка в текстурированную модель превращалась на своём железе либо на NVIDIA, либо никак. Теперь тот же путь проходят встроенная графика AMD и ноутбук на Apple Silicon — медленнее, но целиком у себя, без облака и без чужих квот.

Смотрите также