Меблі і освітлення - імпорт через obj.
Чому? - Єдиний спосіб корректно перенести складну криволінійну геометрію разом з текстурами.
Зазначу що я роблю візуалізацію і креслення інтер'єрів. І меблі, світло між проектами не часто повторюються. З розмірів на кресленнях як правило треба вказувати тільки габарит, центри. А для цього в модель в контексті достатньо імпортувати геометрію і проставити опорні площини, готово.
Якщо елемент буде більше ніж в одному екземплярі чи потім мігрувати з проекта в проект - імпорт в сімейство.
Якщо ні - модель в контексті.
Однакова система координат для корректного перенесення моделей в контексті на правильне місце
Назва сімейства/моделі в контексті і матеріалу/текстури в ідеалі однакова. Тому що в ревіті майже нема інструментів для правок матеріалів імпортованої геометрії через obj. І єдиний спосіб в ревіті зрозуміти який матеріал за що відповідає - коли назва матеріалу відповідає назві сімейства + суфікс наприклад.
Важливо:
Якщо в процесі роботи треба вносити правки в геометрію, розподіл матеріалів. То це треба робити в програмі звідки імпортується геометрія. Відкриваємо сімейство, видаляємо стару геометрію, вставляємо нову obj геометрію. При цьому матеріали не оновлюються а прилітають з додаванням суфіксу (був матеріал 106_Furn_Table_Wood, після правок і реімпорту з'являться 106_Furn_Table_Wood (1), 106_Furn_Table_Wood (2) і т.д. Тому періодично буде сенс використати очистку невикористаних матеріалів.
Підготовка геометрії:
Оптимальна складність 3д моделі - до 10 000 полігонів. Чим менше тим краще.
Але до 20 000 теж адекватна продуктивність.
На весь проект можна допустити 1...2 моделі по 30 000 ... 40 000 полігонів, якщо їх дуже проблемно оптимізувати.
В ідеалі використовувати моделі які мають в стеку модифікатор turbosmooth. Тоді для рендеру - модель з turbosmooth, для ревіта - без. Якщо модель важка і створена іншими методами - ProOptimizer
Модифікатор TurnToPoly для розбиття полігонів на чотирикутники.
На моделі мають бути uv координати навіть якщо текстури не будуть застосовуватися
Підготовка матеріалів, текстур:
Текстури мають бути bitmap без будь яких корекцій. бажано до 1024х1024 включно.
Якщо дифуз канал має ноди коррекцій - за допомогою команди render to texture перетворюю все це в одну текстуру
Матеріали тільки physical material і можна перенести тільки текстуру Base Color map і прозорість.
Multi/sub object material використовувати не можна.
Для матеріалів з текстурами base color має бути білим.
Гама коррекцію вимкнути, тобто змінити з 2.2 на unmanaged для того щоб кольори в обох програмах виглядали однаково.
Мати логічні назви текстур, матеріалів, щоб не було ситуацій, що текстури з різним вмістом з різних проектів мають однакову назву. Це іноді може призводити до невірного підвантаження текстури.
Коли проект вже не буде зазнавати змін, створюю в своїй бібліотеці текстур ревіт папку з текстурами проекта. Копіюємо туди всі текстури. Потім видаляємо все що є в папці c:\Users\USERNAME\AppData\Roaming\Autodesk\Revit\Imported Texture\ .Я тримаю цю папку пустою, але якщо у вас там текстури з минулих проектів, про всяк випадок збережіть їх. Підключаю папку з текстурами проекту в налаштуваннях ревіт. Тепер для відкриття проекта на іншому ПК достатня файлу проекта+папки з текстурами.