Всем привет, не прошло и 100 дней как я закончил скрипт по автоматизации конвертации материалов и объектов из Vray в Unreal Engine. Теперь можно не заморачиваясь получить любую готовую сцену в реалтайм движке. Вот как оно сейчас конвертит:
Поддерживается корректный экспорт VrayMtl и сабматериалов с VrayMtl, все остальные упрощаются до вида VrayMtl (SSS, blend, twosided и т д). Текстурный канал экспортируется только первый и с тайлингом по УВ, а не в параметрах текстуры. Если учитывать эти два простых правила, то проблем с конвертированием не будет.Поддерживаются instance объекты, материалы, поэтому для сцен с кучей одинаковых объектов всё готово:
Самое главное конечно же это расстановка объектов в сцене, которая реализована через текствый файл, который сохраняет все трансформации всех объектов и передаёт их в unreal engine с учетом инстансов, скейлов, вращений и т п. Все мои примеры на видео сделаны полностью исключая ручную работу, чтобы показать прямой конверт сцены из 3д макса в Анрил.
Unreal PBR шейдер довольно сильно отличается от Vray, но я провел множество экспериментов и вывел определенную формулу, которая крайне точно переводит как простые материалы без текстур, так и сложные материалы с текстурами на каждом канале (глосси, рефлект, рефракт, бамп). Все бамп текстуры кстати конвертируются в Normal Maps автоматически. Работает всё по прицнипу Выделить Всё - Нажать кнопку экспорт - Ждать результата.Конечно есть свои нюансы, которые я подробно изложил в документации к работе со скриптом по этой ссылке
В частности нужно избегать процедурных карт на больших объектах типа стен, полов и т п, потому что такие материалы будут автоматически запекаться в флаттен развертку и для них нужны очень большого размера текстуры, но этого можно просто избежать используя тайлинг.
Скрипт условно бесплатный с ограничением размера текстур в 512*512, чего достаточно для большинства проектов, если же вы всерьез этим занимаетесь, то можно приобрести платную подписку на гог без ограничений, тем самым поддержав разработку новых фич )