Урок по створенню кулі, що летить
Привіт шановні аддепти і новачки тривимірного світу. Більшість з вас напевно бачили якийсь гучний фільм під назвою «Матриця», і напевно пам'ятають сцену на даху, коли хтось Нео потрапляє під град зі свинцю злісних фашистів. Звичайно руху Кіану і інших акторів відзняті реально, але деякі моменти не обійшлися без комп'ютерної графіки. Саме про ефект прольоту куль піде мова в нашому сьогоднішньому уроці. Отже, почнемо-с.
- 3D Studio Max 5 або вище.
- Основні знання інтерфейсу програми.
- Миша оптична і крапля терпіння.
Приступимо. Для кращого розуміння раджу налаштувати Макс на метричну систему заходів в міліметри (Customize -> Units Setup -> Metric -> Millimeters).
Для сцени нам знадобиться:
Сфера - r-150, кількість сегментів довільне.
Система частинок PArray.
Куля (сплайн з модифікатором Lathe - рис.1) розміром. 13 * 6 мм.
Виділяємо сферу, заходимо в стек модифікаторів і шукаємо там XForm. Після застосування його до сфери, там же в стеці натискаємо на плюсик і підсвічувати 1-ий рівень підоб'єкту Gizmo (Рис. 2)
Далі у вікні проекції Top, натискаємо кнопку Scale і стиснути сферу по осі Y приблизно до розмірів як на малюнку 3.
Після цього залишаємо сферу в спокої. І переходимо до пулі. Застосовуємо на кулю модифікатор Edit Mesh. Далі подоб'екти Polygon, і виділяємо полігони позаду кулі, які утворилися через додавання точки на рис. 1.
Не знімаючи виділення вимикаємо подоб'екти Polygon, міняємо назву кулі на Bullet і переходимо до PArray. У свиті Basic Parameters -> Object-based emmiter натискаємо Pick object і вибираємо кулю.
- У групі Particle Formation включаємо At Face centers.
- Там же ставимо прапорець Use Selected SubObjects
- Percentage of Particles - 100%
- Сувій Particles Generation -> Use Rate - 1
- Speed - 0, Variation - 0, Divergence - 0.
- У групі Particles Timing вимкнути влажок Emitter Translation, інші настройки на свій розсуд, у мене: Emit Start - 0, Emit Stop - 80, Display Until - 100, Life - 60.
- У групі Particles Size: Size - 0.7, Variation - 0, Grow For - 30, Fade For - 0
- Uniqueness Seed - 0
- У свиті Particles Type включаємо Instanced Geometry.
- У свиті Basic Parameters в групі Viewport display включаємо BBox.
- Далі в свиті Particles Type в групі Instancing Parameters -> Pick Object і вибираємо нашу сплюснутую сферу. (Дуже важливо щоб сфера була перпендикулярна носі кулі і її будь-яка ротація при цьому всюди дорівнювала нулю, а то частинки будуть повернені.)
- У свиті Rotation and Collision -> Spin Speed Controls - все по нулях.
- Spin Axis Controls - Random
- У свиті Object Motion Inheritance - все по нулях.
Уффф! Наче все. Тепер нам треба анімувати рух кулі щоб побачити результати.
Поставте кулю в нульові координати. Натисніть в панелі анімації кнопку з малюнком ключа, далі натисніть кнопку Auto Key, перетягніть повзунок анімації куди-небудь в район 70-го кадру, а потім у вікні проекції Top перетягніть саму кулю по тій осі куди дивиться ніс на 500 - 550 мм. Вимкніть кнопку Auto Key.
Перетягніть повзунок анімації на 50 кадр. Якщо ви зробили все правильно, то у вас повинно вийти приблизно те, що показано на рис. 5.
Що ж у нас вийшло. Якщо ви в налаштуваннях нашого хвоста в свиті Basic Parameters замість BBox поставите Mesh, то побачите, що за кулею тягнеться хвіст з приплющених сфер.
Далі у вікні вибираємо Waveform Float, і тиснемо на OK. З'явиться вікно під назвою Waveform Controller: PArraySize Variation. Там виставляємо: Period - 12.5, Amplitude - 100, Phase - 0.3, Vertical Bias - Auto <0 (рис. 7). И закрываем.
Дивись, хвіст то як змінився. Тільки якийсь він не рівний. Дуй назад в Curve Editor, доведеться виправляти нерівності. Там та ж сама система, тільки тепер ту ж операцію доведеться виконати ні з Size Variation, а c Birth Rate. (Не забудьте його спочатку підсвітити).
І настройки Waveform наступні: Period - 25, Amplitude -2, Phase - 0, Vertical Bias - Manual - 5 (хоча власники потужних машин можуть поставити 10, і навіть вище). Після всіх цих операцій у нас повинен з'явитися рівний хвилеподібний хвостик.
З моделюванням закінчено. Приховуємо нашу сферу і переходимо до текстуруванню
Для кулі я взяв звичайний стандартний матеріал Metal_Chrome.
Далі хвіст. Матеріал Standard, Specular Level - 10, Glossiness - 10. У свиті Extended Parameters - Index of Refraction 1.5, карта Refraction - Thin Wall Refraction (хоча можна спробувати і Raytrace). В налаштуваннях Thin Wall Refraction: включити Every Nth Frame, включити Use Environment Map, Thickness Offset - 5,2. Далі можна спробувати включити і Reflection на 5% - карта Raytrace. Ну це вже на ваш розсуд. І взагалі не бійтеся експериментувати з прозорими матеріалами. Раптом вийде ще прикольніше.
Спробуйте отрендеріть попередньо поставивши в Rendering-> Environment, як фон якусь картинку. А ще краще HDRI.
Наостанок можна приробити до пулі невеликий хвостик з диму. Я для цього використовував Afterburn.
Ну ось ніби і все.