Не объект, а его внешний вид
3D-объект сам по себе — это только форма: плоскость, текст, куб, импортированная модель, USD-примитив или другая геометрия. Пока у объекта нет понятного материала и света, он может выглядеть плоско, слишком тёмно, пластиково или вообще не читаться в кадре.
Материал описывает поверхность: базовый цвет, прозрачность, отражения, блеск, roughness, specular, bump/normal и текстурные карты. Свет описывает, как эта поверхность освещается. Камера решает, под каким углом зритель видит сцену. Renderer3D или URenderer уже превращает эту связку в обычное изображение.
Поэтому материалы и свет — это не декоративная мелочь после 3D. Это отдельный смысловой слой сцены. Text3D без материала и света остаётся техническим объектом. Тот же Text3D с правильным shader, боковым светом, мягкой тенью и отражением уже становится полноценной графикой для заставки, титра или интерфейсного элемента.
Чем материалы отличаются от 2D-цветокоррекции
Color Corrector после Renderer3D меняет уже готовую картинку: пиксели, RGB, контраст и насыщенность. Материал до Renderer3D меняет то, как поверхность реагирует на свет внутри сцены. Это принципиально разные уровни управления.
Если объект выглядит слишком глянцевым, проблема обычно не в финальном Color Corrector, а в shader-настройках: specular, roughness, reflectivity, освещении или окружении. Если грань не читается, часто нужен не просто Brightness, а другой угол света, Fill/Key-разделение, AmbientLight или более грамотный материал.
Финальная 2D-доводка полезна после рендера: подогнать CG к видео, добавить grain, смягчить край, слегка подкрасить результат. Но базовая физика внешнего вида — цвет поверхности, блик, тень, отражение и рельеф — должна решаться внутри 3D/USD-сцены.
Классические материалы Fusion и USD-материалы
В классическом 3D Fusion чаще встречаются Blinn, Phong, CookTorrance, Reflect, BumpMap, Texture и MaterialMerge. Они подключаются к классическим 3D-объектам вроде Text3D, Shape3D, ImagePlane3D или импортированной геометрии и рендерятся через Renderer3D.
USD/U-сцена живёт в другой системе. UMaterial и связанные U-ноды работают с USD-примитивами, сценовыми атрибутами, материалами и рендером через USD-пайплайн. По смыслу они тоже задают внешний вид поверхности, но технически это не тот же самый поток, что классический Merge3D → Renderer3D.
Главная ошибка — считать все материалы одинаковыми. Если сцена собрана в классическом 3D, держи материалы в классическом 3D-пайплайне. Если сцена собрана через USD/U-ноды, используй USD-логику. Смешивать эти миры можно только через понятные точки конвертации или через финальный 2D-рендер, а не простым соединением проводов наугад.
Свет как часть композиции, а не просто яркость
PointLight, SpotLight, DirectionalLight, AmbientLight и DomeLight решают разные задачи. PointLight светит из точки, SpotLight даёт направленный конус, DirectionalLight имитирует далёкий источник, AmbientLight поднимает общую видимость, DomeLight помогает создать окружение и более мягкое освещение.
Грамотный свет строится не только по принципу 'сделать ярче'. Он должен объяснять форму объекта. Боковой или верхний ключевой свет показывает объём, слабый fill смягчает провалы, rim/back light отделяет объект от фона, ambient не даёт теням полностью провалиться. Для титров и логотипов это особенно важно: без света буквы часто выглядят как плоская заливка.
Свет также должен совпадать с остальным кадром. Если 3D-логотип кладётся поверх видео, направление бликов, контраст теней и цвет света должны быть похожи на окружение. Иначе объект будет казаться вставленным, даже если сам рендер технически правильный.
Текстуры, bump и карты
Текстура может задавать не только цвет. Она может управлять roughness, отражениями, прозрачностью, bump/normal-ощущением рельефа, масками материала и смешиванием нескольких поверхностей через MaterialMerge. Это позволяет сделать металл, пластик, стекло, ткань, экран, пыльную поверхность или стилизованный shader.
BumpMap и похожие ноды не меняют настоящую геометрию, но меняют ощущение микрорельефа при освещении. На титрах и простых объектах это часто даёт сильный визуальный эффект без тяжёлого моделинга: буквы становятся менее пластиковыми, появляется фактура, край лучше ловит свет.
При этом текстуры нужно согласовывать с масштабом объекта. Слишком крупная фактура выглядит игрушечно, слишком мелкая превращается в шум и может мерцать на движении. Для анимации важно проверять не только один кадр, но и воспроизведение на таймлайне.
Где материалы и свет находятся в схеме
Обычно объект создаётся или импортируется, затем к нему назначается материал, после этого объект вместе со светом и камерой собирается через Merge3D. Renderer3D получает уже готовую сцену и выводит 2D-картинку. Только после Renderer3D результат попадает в обычный Merge, Glow, Blur, Color Corrector и MediaOut.
Если материал подключён не туда, сцена может рендериться серой, чёрной или без ожидаемых бликов. Если свет не попал в Merge3D, он не влияет на объект. Если камера не видит объект или объект стоит вне кадра, материал не спасёт ситуацию. Поэтому при отладке 3D всегда проверяй цепочку целиком: геометрия → материал → свет → камера → рендер.
В больших схемах удобно держать materials/lights отдельным блоком, а не раскидывать их по Flow. Тогда сразу видно, где настроен внешний вид сцены, где геометрия, где камера, где рендер и где начинается 2D-композитинг.
Практический пример
Для заставки с объёмным названием можно собрать Text3D, назначить ему CookTorrance или Blinn, добавить BumpMap для лёгкой фактуры, поставить SpotLight сбоку, слабый AmbientLight для читаемости теней, Camera3D с перспективой и вывести всё через Renderer3D.
После Renderer3D результат становится обычным 2D-слоем. Его можно положить через Merge поверх фона, добавить Glow только на яркие блики, слегка подогнать цвет, добавить grain и проверить, чтобы альфа и края корректно смешивались с остальной композицией.
Если нужно сделать похожий материал в USD-сцене, логика визуально похожа: объект, материал, свет, камера, рендер. Но технически используются U-ноды и USD-пайплайн, поэтому не стоит переносить классические Material-ноды напрямую в USD-схему без понимания совместимости.

