1 августа вышла новая версия Three.js r179 — свежак прямо из репозитория!
Что такое Three.js
Three.js — это бесплатная JavaScript-библиотека с открытым кодом, позволяющая создавать браузерную 3D‑графику через WebGL и экспериментально WebGPU.
Ближайшие конкуренты Three.js — это Babylon.js (но это скорее мощный движок с фокусом на игры и RTC), Verge3D (больше визуальный конструктор, чем кодовая библиотека) и LUME (обновляется даже чаще Three.js). Но Three.js легче учить, гибче в кастомизации и популярнее для статических и интерактивных проектов.
Что нового в версии r179?
-
Новая функциональность: EXRLoader — добавлен
lossyDctChannelDecode— ускоренная и более компактная загрузка EXR‑текстур; Новый Output‑format API и цветовое пространство linear‑sRGB для правильной цветокоррекции; -
FBXLoader — исправлена ошибка с цветами вершин — теперь цвета в FBX импортируются корректно;
-
GTAOPass — улучшена производительность кэша Ambient Occlusion; Объекты Line2 исключаются из расчёта AO для правильной визуализации линий;
-
HTMLMesh — добавлена поддержка полей ввода типа
emailиpassword— можно делать интерфейсы прямо внутри сцены; -
LensflareMesh — перешли с
fragmentNodeнаcolorNode— улучшены эффекты бликов; -
LightProbeGenerator — поддержка
FloatTypeзагрузки кубических текстур с probe — круто для освещения среды; -
OutlinePass — удалены объекты Line2 из расчёта контура — линии остаются резкими и чистыми;
-
RapierPhysics — добавлена поддержка
RoundedBoxGeometry— закруглённые формы теперь работают прямо с физикой; -
RoomEnvironment — вместо старого ambient/intensity теперь используется
emissiveIntensityдля настройки освещения окружения сцены; -
RoundedBoxGeometry — добавлены типизация, описание параметров и экспорт через
toJSON()— упрощают конфигурацию геометрии; -
Другие улучшения — улучшения NodeMaterial: fog применяется только однажды, новые NodeUtils, событие компиляции через
compileAsync(), viewport и scissor API — всё для более стабильной работы и оптимизации рендеринга; -
Также доступен новый
setInstanceCount()дляBatchedMesh, методы ближайшей дистанции между линиями (Line3), улучшенный лог рендерера, более надёжная обратная глубина (reversed depth buffer), MRT‑поддержка для 2D‑текстур и др.
Обновлены страницы MaterialX, AnimationClip, Texture и другие. Добавлены новые примеры WebGPU: webgpu_postprocessing_dof_basic, webgpu_compute_texture_3d, улучшена поддержка MaterialX и отражений.
Итог
Three.js r179 — не революция, но набор продуманных улучшений для удобства работы: надёжная загрузка форматов, стабильность визуальных эффектов, гибкость NodeMaterial, WebGPU‑примеры и точная физика. Иными словами, идеальный апгрейд для структурированных проектов вкупе с работой в Blender 3D.
Постоянные обновления (графика, анимация и AI) — мой телеграм канал: https://t.me/photoudzen
Источники:
ссылка на оригинал статьи https://habr.com/ru/articles/934796/
Добавить комментарий