Tiny Online Tools logoTiny Online ToolssearchПоиск инструментов…grid_viewВсе инструменты
Главнаяchevron_right3D-инструментыchevron_rightРедактор нормалей и касательных 3DРедактор нормалей и касательных 3D

Редактор нормалей и касательных 3D

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

upload_file

Нажмите для выбора или перетащите файлы сюда

Выберите 3D-модель — GLB, GLTF, OBJ, STL, PLY, FBX, DAE, 3MF или OFF

Допустимо: .glb,.gltf,.obj,.stl,.ply,.fbx,.dae,.3mf,.off

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

Похожие инструменты

Редактор 3D-материалов

Редактор 3D-материалов

Откройте модель GLB или GLTF и отредактируйте каждый PBR-материал внутри неё — бесплатно, прямо в браузере, ничего не загружая на сервер.

Редактор 3D-моделей

Редактор 3D-моделей

Редактируйте 3D-сцену прямо в браузере — без загрузки на сервер и без похода в Blender.

Редактор 3D-мешей

Редактор 3D-мешей

Объединяйте сетки, разделяйте несвязанные части, сваривайте вершины и разворачивайте грани в моделях GLB, OBJ, STL и PLY.

Инструмент 3D-трансформаций

Инструмент 3D-трансформаций

Перемещайте, вращайте, масштабируйте, центрируйте и ставьте на плоскость любую 3D-модель — преобразование запекается в геометрию.

Пакетный генератор QR-кодов

Пакетный генератор QR-кодов

Создавайте несколько QR-кодов за раз из списка URL-адресов или текстов.

Обрезка изображения

Обрезка изображения

Быстро обрезайте изображения прямо в браузере.

Разделить PDF

Разделить PDF

Разделите PDF на отдельные страницы или диапазоны страниц.

apps

Больше инструментов

Просмотрите нашу полную коллекцию бесплатных онлайн-инструментов.

Если модель отображается чёрной, дело обычно в этом

Нормали вершин сообщают рендереру, в какую сторону обращена поверхность. Без них освещение рассчитать невозможно, и поверхность выходит глухо-чёрной, равномерно серой или резко гранёной — в зависимости от того, насколько снисходителен рендерер.

Отсутствие нормалей встречается сплошь и рядом. Файлы STL нормали граней всё же хранят, но многие экспортёры записывают их нулями. Файлы OBJ часто опускают их полностью. А немало экспортёров glTF пропускают их в расчёте на то, что загрузчик сам их построит, — одни загрузчики так и делают, другие нет.

Операции

Проверка сообщает по каждому мешу, есть ли нормали, касательные и UV-координаты и индексирована ли геометрия. Начните отсюда.

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

Плоские нормали дают каждому треугольнику собственную нормаль: каждая грань затеняется независимо, и фаски видны. Это верный выбор для деталей механической обработки, стилистики low-poly и любой действительно гранёной геометрии. Учтите, что для этого приходится расщеплять общие вершины, поэтому их число вырастает.

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

Создать касательные вычисляет векторы касательных, которых требует наложение карт нормалей.

Удалить нормали убирает их полностью — иногда это нужно, чтобы следующий инструмент построил свои собственные.

Почему карта нормалей ничего не даёт

Это самая частая жалоба на освещение, и ответ почти всегда один — касательные.

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

Инструмент помечает любой меш, которому назначена карта нормалей и у которого есть UV-координаты, но нет атрибута касательных: такое сочетание — гарантированная проблема по меньшей мере в части рендереров, и оно остаётся невидимым, пока его не начнёшь искать.

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

Посмотрите на результат

В предпросмотре есть режим визуализации нормалей: каждая поверхность окрашивается по направлению, в которое она смотрит. Гладкие поверхности дают плавные цветовые градиенты, плоские — резко очерченные цветовые пятна, вывернутые нормали — инвертированные цвета. Читается это куда быстрее, чем попытка судить по освещению.

Конфиденциальность

Всё выполняется в вашем браузере. Ничего не загружается на сервер.