Застосування rhinoceros і maxwellrender для створення складних інтер'єрних сцен - уроки rhinoceros 3d

В останню чергу створюються плінтуси, карнизи, інтер'єр наповнюється предметами, що мають другорядну важливість, однак, це дозволяє додати приміщенню вид обжитого, що для фотореалістичної візуалізації не менш важливо, ніж якість матеріалів підлоги, стін, меблів.

Застосування rhinoceros і maxwellrender для створення складних інтер'єрних сцен - уроки rhinoceros 3d

Застосування rhinoceros і maxwellrender для створення складних інтер'єрних сцен - уроки rhinoceros 3d

візуалізація

Що ж, ось, в двох словах, і закінчений процес моделювання. Тепер належить візуалізація, але перед цим нам потрібно виконати кілька маніпуляцій з 3D-об'єктами, оскільки експорт і імпорт складних сцен таїть в собі цілий ряд «підводних каменів».

проблема експорту

Найочевиднішим способом перенесення сцени в Maxwell Render (M

R). здавалося б, є експорт сцени за допомогою плагіна Rhinoll. Для цього досить у вкладці Document Properties> Maxwell> Output поставити прапорець Only Export MXS. Після цього при натисканні на кнопку відбувається тільки перетворення сцени в формат MXS, без візуалізації. Тепер отриману сцену можна відкрити в Maxwell Studio і зайнятися матеріалами. Але дуже часто при наявності в сцені бібліотечних об'єктів, імпортованих з форматів 3DS, OBJ і DXF, не вдається експортувати сцену через помилки, що виникають при перетворенні з цих форматів засобами Rhinoll.

Тому найзручніше ескпортіровать сцену по верствам в формат 3DS, а потім іпортіровать отримані файли в Maxwell Studio один за іншим. Якщо надійти просто - виділяти об'єкти кожного шару і експортувати виділене в окремий файл, то при імпорті в Maxwell Studio ми зауважимо, що частина об'єктів «пропала». Оскільки і експорт, і імпорт відбувається коректно, справа тут не в форматі файлів. Ми бачимо, що Maxwell Studio ідентифікує об'єкти за їхніми іменами (names), тоді як Rhino привласнює кожному об'єкту сцени глобальний унікальний ідентифікатор (GUID), а імена дозволяє задавати будь-які, в тому числі і збігаються. При експорті в 3DS, однак, Rhino використовує в якості ідентифікаторів саме імена, при цьому, якщо в межах одного експортованого файлу є об'єкти з однаковими іменами, - вони будуть перейменовані, наприклад: два з трьох об'єктів з іменами Cylinder021 будуть перейменовані в Cylind_001 і Cylind_002 відповідно. Якщо ж і в іншому шарі є об'єкти, які при експорті будуть перейменовані автоматично, то їм можуть бути присвоєні імена, що збігаються з іменами об'єктів, перш експортованих з цього ж файлу. Наприклад, якщо в іншому шарі є два об'єкти з іменами Cylinder479. то другий з них отримає ім'я Cylind_001. а воно вже було присвоєно об'єкту з іншого шару. Хоча Maxwell Studio і порівнює імена імпортованих об'єктів з уже наявними в сцені, і навіть може автоматично перейменувати новий об'єкт, але вона (або все-таки воно?) Не перевіряє, чи існує об'єкт з ім'ям, таким же, як і перейменований. Наприклад, якщо в сцені є об'єкти Obj_001 і Obj_001 (1). то при імпорті ще одного Obj_001 Maxwell Studio автоматично перейменує його в Obj_001 (1). не дивлячись на те, що об'єкт з таким ім'ям вже існує. В результаті перший з об'єктів буде втрачено.

Рішення проблеми

Що ж робити? Нам довелося написати невеликий скрипт, нижче наводиться його текст, а ось опис того, що він робить:

  1. виділяє всі об'єкти кожного шару, перейменовує їх так, що, наприклад, всі 1367 об'єктів шару Glass отримують імена від Glass_1 до Glass_1367;
  2. створює з NURBS-поверхонь каркас (mesh) з оптимальними розмірами і деталізацією (по крайней мере, для наших завдань);
  3. зберігає кожен шар в окремий файл, так, що шар Glass файлу House2.3dm зберігається в файлі House2_Glass.3ds.
  1. уникнути збігів імен та виникають у зв'язку з цим проблем;
  2. побачивши в Maxwell Studio назву об'єкта, зрозуміти, який матеріал йому привласнити, в яку групу перенести. Зауважте, що Maxwell Studio бере до уваги тільки перші 11 символів імені об'єкта, тому назва шару повинно складатися не більше, ніж з 6 символів.
А ось і сам скрипт:

OptionExplicit Sub ExportTo3dsByLayers
Dim arrLayers, strLayer, arrObjects, strObject, nL, nLE, DocPath, ExportName, DocName, woExt, lDocName, Time, TotalSize, fso, f, o, oL
Time = Timer
Set fso = CreateObject ( "Scripting.FileSystemObject")
TotalSize = 0 nL = 0 nLE = 0 o = 0
DocPath = Rhino.DocumentPath
DocName = Mid (Rhino.DocumentName, 1, Len (Rhino.DocumentName) -4)
arrLayers = Rhino.LayerNames
Rhino.UnselectAllObjects
If IsArray (arrLayers) Then
Rhino.EnableRedraw (vbFalse)
For Each strLayer In arrLayers
nL = nL + 1
arrObjects = Rhino.ObjectsByLayer (strLayer, vbTrue)
If IsArray (arrObjects) Then
oL = 0
For Each strObject In arrObjects
o = o + 1
oL = oL + 1
Rhino.ObjectName strObject, strLayer
"_" Cstr (oL)
Next
ExportName = DocPath DocName "_" strLayer ".3ds"
If Rhino.Command ( "- Export" ExportName "D A A 10 S 1 D 0.5 G 1 M 0 I 1 Enter JaggedSeams = Yes Refine = Yes SimplePlane = Yes Weld = No Enter") Then
nLE = nLE + 1 Set f = fso.GetFile (ExportName) TotalSize = TotalSize + f.Size End If End If Rhino.UnselectAllObjects Nextр Time = Timer-Time MsgBox "Statistics:" Chr (13) "Number of objects:" Chr (9) FormatNumber (o, 0) Chr (13) "Layers exported:" Chr (9) Cstr (nLE) "Of" Cstr (nL) Chr (13) "Total file size:" Chr (9) FormatNumber (TotalSize, 0) "Bytes" Chr (13) "Time elapsed:" Chr (9) FormatNumber (Time, 1) "Seconds" Chr (13) "Average speed:" Chr (9) FormatNumber (TotalSize / Time, 0) "Bytes per second" Chr (13) "Export path:" Chr (9) DocPath Chr (13) "File names:" Chr (9) DocName "_ *. 3ds", 65, "ExportTo3dsByLayers"

Rhino.EnableRedraw (vbTrue)
End If
End Sub

Підключити скрипт до Rhino досить просто: виконуємо LoadScript. вказуємо ім'я файлу з розширенням RVB, в якому збережений скрипт; потім командою RunScript. коли буде потрібно, вибираємо один із завантажених скриптів і виконуємо його.

Тепер спокійно запускаємо Maxwell Studio і імпортуємо всі файли. Саме все відразу - це дуже зручно: в Провіднику (Explorer) або якийсь файлової оболонці (наприклад, Total Commander) виділяємо всі потрібні файли і перетягуємо в вікно Maxwell Studio (drag-and-drop). Вона (воно?) Замислюється на несоклько хвилин, а потім нашому погляду постає вся сцена цілком.

Застосування rhinoceros і maxwellrender для створення складних інтер'єрних сцен - уроки rhinoceros 3d

Експорт всіх матеріалів сцени

Щоб застосувати матеріал, досить вибрати на екрані Object list об'єкти і / або групи і перетягнути на них матеріал з вікна Material list. Після того, як матеріали створені, налаштовані і привласнені, важливо подивитися, як лягли на об'єкти текстури. Для цього у вікні вигляду (Viewport window) міняємо режим відображення (display mode) з Shaded (встановлено за умовчанням) на Textured. Якщо до об'єкта застосований матеріал, який не містить текстур, - Maxwell Studio «натягує» на нього власну текстуру, яка знаходиться у файлі% MAXWELL_ROOT% \ images \ griduv.png. де MAXWELL_ROOT - змінна оточення, яка вказує шлях до встановленого M

R. зазвичай це C: \ Program Files \ Next Limit \ Maxwell. Якщо ж до об'єкта застосований матеріал з текстурою, цю текстуру ми і бачимо на об'єкті.

На відрендерене зображення текстури на об'єктах будуть виглядати точно так, як ми їх бачимо в режимі Shaded. До структурам можна застосовувати різні трансформації, для цього треба двічі клацнути по проектору текстури у вікні Object params. У вікні Projectors params встановлюємо потрібний тип проекції, положення, орієнтацію і масштаб текстури (часто краще кнопкою Adjust). Всі зміни тут же відображаються у вікні виду.

Коли текстури на всіх об'єктах налаштовані належним чином, пора переходити до налаштувань камери. Якщо камера ще не створена, створюємо її натисканням Ctrl C. а потім налаштовуємо її параметри у вікні Camera params. Дозвіл спочатку стóит утановіть низьке (320 × 240 або менше), щоб швидше побачити результат рендеринга (можливо, доведеться ще не раз щось міняти). Затиснувши Alt. лівою кнопкою миші ми обертаємо камеру навколо точки націлювання (target), а затиснувши Alt Shift. - обертаємо точку націлювання навколо камери, яка залишається нерухомою, тобто, практично, повертаємо камеру навколо себе самої, як якщо б обертали реальну камеру, закріплену на штативі.

Коли вже обраний потрібний ракурс, встановлені чутливість, параметри затвора, фокусна відстань, дозвіл і т. П. - не забудьте виділити об'єкт, на який «дивиться» камера, і натиснути F - це встановить фокус камери на виділений об'єкт. Тепер залишається тільки задати параметри самого процесу рендеринга. З нашого досвіду візуалізації за допомогою Maxwell Render, найкраще встановити ось такі значення параметрів:

Інші параметри не слід міняти без чіткого розуміння їх призначення.

Тепер саме час зберегти сцену і приступити до попереднього рендерингу. Якщо зображення виявляється занадто темним або занадто світлим - можна спробувати змінити параметри ISO і Shutter speed, що називається, «на ходу». Якщо ж не влаштовує щось в самій сцені - сміливо зупиняємо процес і знову працюємо зі сценою. Нарешті, коли вже нема до чого причепитися, встановлюємо потрібний дозвіл (максимум - близько 3 мегапікселів на кожен гігабайт оперативної пам'яті комп'ютера, якщо не включена опція Multilight), запускаємо процес і залишаємо комп'ютер наодинці роздумувати над поставленим завданням.

Як тільки якість зображення стане прийнятним, можна зупинити процес рендеринга і зберегти результат. Вибираємо File> Save image і в вікні, пишемо назва файлу зображення обов'язково разом з розширенням.

Щоб усунути шум у зображенні, використовуйте програму Neat Image, яка поширювалася з бета-версією Maxwell Render. Що у нас вийшло в результаті - показано на наступній сторінці.

Сумарний бал: 666

Відгуки відвідувачів:

Застосування rhinoceros і maxwellrender для створення складних інтер'єрних сцен - уроки rhinoceros 3d

Мужики, ви-монстри! так вирішувати проблеми з імпортованими об'єктами-вам треба пам'ятник поставити!
Щоб Рінолл не вилітав при рендер потрібно все меши які збираєтеся імпортувати в ріновскій файл спочатку пропустити через який-небудь сторонній Мапер наприклад UVmapper, відкрити в ньому obj і дати який-небудь проектор (куб, куля, і т. П.) Зберегти файло і можете безбоязно вставляти в Ріновскую сцену, а використовувати Студію тільки тому, щоб в ній текстурою-теж сумнівне задоволення. Поставте Бразил для Ріни нехай навіть прострочений (сам то Браз нам не потрібний) і використовуйте його інструмент текстурирования (RCM здається називається) у вікні властивостей об'єкта з'явиться вкладка mapping а там всі важелі управління текстурою і тайлинг і проектори та повороти-масштаби і вся належна для цього кишки. а переглядати текстури можна присвоївши об'єкту basic матеріал (ну та галочка у властивостях, що для рідного ріновского рендеру) і вибравши текстуру для нього від МХМ файлу, включаємо режим вьюпорті rendered і все текстури нам видно на об'єктах.
З.И. на мате ванни занадто білий матеріал, треба ставити не більше 220 по RGB (біла крейдований папір-218)
інакше Максвелл з розуму сходить обчислюючи відскоки та дохера шуму залишається.

Застосування rhinoceros і maxwellrender для створення складних інтер'єрних сцен - уроки rhinoceros 3d

Ну в такому розльоті можна говорити про основний плюс ріноцероза - це сверхдеталізіривание об'єкти відкриваються надшвидкої. А в загальному урок непоганий, ось струму даремний.

Застосування rhinoceros і maxwellrender для створення складних інтер'єрних сцен - уроки rhinoceros 3d

до maxwell-у пріктрагівался тлько здалеку, на жаль у мене немає можливості рендерить по 100 годин, але хотів би зайнятися їм серйозніше.
щодо уроку скажу, що прислухатися варто до будь-яких порад, інша справа - дотримуватися їх чи ні. завжди складно наченается, і якщо є помощ, думаю сотіт її прийняти. вивчив сцену, зрозумів що до чого, і крути далі все підряд, головне, щоб життя вистачило на всіх тонкощах розібратися, при його-то швидкостях :)

Господа критики, урок називається "Застосування Rhinoceros і MaxwellRender для створення складних інтер'єрних сцен", і фотореалістичність ніхто не обіцяв. Максимум, що з цього приводу було сказано, - це "інтер'єр наповнюється предметами, що мають другорядну важливість, однак, це дозволяє додати приміщенню вид обжитого, що для фотореалістичної візуалізації не менш важливо, ніж якість матеріалів підлоги, стін, меблів." і "Як тільки якість зображення стане прийнятним". Як правильно зауважив S.andr, в першу чергу урок слід розглядати "як спосіб", я так розумію.

Застосування rhinoceros і maxwellrender для створення складних інтер'єрних сцен - уроки rhinoceros 3d