Посібник з моделювання в Blender'і

Поки вона ще може бути корисною, відвідайте Blender, Blender Modeling Walkthrough (3.6.1) або Category:Modeling для отримання більш актуальної документації.
У цьому уроці розглядається створення моделі у Blender'і та її експорт до Source. Модель, яку ми створюємо, - це бляшанка з-під содової, для її створення ми будемо використовувати інструменти редагування сітки та накладання текстур у Blender'і.
Цей посібник засновано на версії 2.48 Blender'а для Windows, але він має бути актуальним і для версії 2.49. Наведені тут скрипти та інструкції не були протестовані у попередніх версіях Blender'а.

Установка
Якщо ви ще не зробили цього, будь ласка, прочитайте інструкції у статті Installing Blender, щоб переконатися, що у вас все налаштовано так, як потрібно для завершення цього підручника.
Плагін для експорту, який використовувався у цьому посібнику, був dvondrake's Exporter.
Посилання на клавіші
Клавіша | |
---|---|
![]() |
Ліва кнопка миші |
![]() |
Середня кнопка миші |
![]() |
Права кнопка миші |
MW | Колесо миші |
MWUp | Коліщатко миші вгору |
MWDown | Коліщатко миші вниз |
9 | 9 на основній клавіатурі |
Num9 | 9 на цифровому блоці |
Початок роботи
Тепер, якщо ви цього ще не зробили, запустіть Blender. У вас має з'явитися екран за замовчуванням, показаний ліворуч.
Для короткого огляду, робочий простір Blender'а поділено на різні області, які називаються видові екрани (Viewports). Кожна область видового екрана містить окремий «Тип Вікна», який можна змінити, натиснувши на піктограму «Тип Вікна». Також, кожен «Тип Вікна» має заголовок, який можна перемістити у верхню або нижню частину вікна, або вилучити повністю, клацнувши на ньому клавішею . За замовчуванням Blender запускається з трьома відкритими видошукачами:
- 1. Вікно налаштувань користувача
- 2. Bікно 3D-вигляду
- 3. Вікно кнопок
Пізніше ми поговоримо про це докладніше, а поки що це все.
Налаштування налаштувань
За замовчуванням вікно налаштувань користувача приховано, видно лише заголовок. Щоб полегшити відстеження, увімкніть опцію назви подання у вікні налаштувань. Помістіть курсор безпосередньо під заголовком «File Add Timeline...», він має змінитися на «File Add Timeline...». », він має перетворитися з вказівника на стрілку вгору/вниз. Коли курсор стане стрілкою вгору/вниз, натисніть і перетягніть його вниз приблизно до середини 3D-вигляду, а потім відпустіть її. Якщо вкладка «Вигляд та елементи керування» не активна, клацніть на ній, а потім натисніть кнопку «Назва виду» (ліворуч від області перегляду) з натиснутою
. Тепер назва позиції має з'явитися у верхній лівій частині 3D-Вигляду. Коли ви завершите встановлення параметрів, знову розташуйте курсор під заголовком «Файл Додати часову шкалу... », а потім перетягніть його назад у верхню частину екрана за допомогою
.
Створення моделі
Для початку, збережіть файл зображення нижче десь на вашому комп'ютері і запам'ятайте його місцезнаходження. Пізніше у цьому підручнику ми будемо використовувати його для створення скіну моделі. Для цього посібника я зберіг зображення у «c:\Modeling\Blender\SourceSDK\Guide\».
Тепер позбудемося ліхтаря і камери, а потім видалимо куб. Щоб виділити і світло, і камеру, спочатку виберіть одне з двох за допомогою , а потім виберіть інше, утримуючи ⇧ Shift і клацнувши на ньому за допомогою
. Тепер натисніть H, щоб приховати їх обидві, пізніше ви зможете відкрити їх, натиснувши ALT H. Тепер виберіть куб за допомогою
і видаліть його, натиснувши X і підтвердіть видалення, натиснувши «Видалити виділене» за допомогою
.
Додайте циліндр, натиснувши SPACEBAR, а потім виберіть Додати > Сіть > Циліндр (якщо ви вибрали неправильний елемент, просто натисніть ESC, щоб скасувати операцію). Коли з'явиться вікно підтвердження «Add Cylinder», змініть кількість вершин на 12, а потім натисніть «OK», щоб створити циліндр. Циліндр буде створено у місці розташування «3D курсору» Blender'а
{Якщо ви випадково змістили 3D-курсор від центру, ви можете повернути його до центру сіті, клацнувши приблизно в тому місці, де він має бути, за допомогою , а потім натиснувши ⇧ Shift S і вибравши «Курсор -> Сітка»}}.
Тепер перейменуємо циліндр. Вибравши циліндр, перейдіть на панель кнопок редагування, натиснувши F9 (або натиснувши на 4 пунктирні квадратики), а потім замініть «Cylinder» на «BlenderSoda» у полях ME: і OB:.
Переміщення об'єкта та «початку координат» (центру об'єкта)
Хоча «центр» циліндра (маленька точка пікселя) вже має бути в координатах «0 0 0», він також знаходиться в центрі самої геометрії, чого ми не хочемо. Натомість нам потрібно, щоб він був у нижній частині об'єкта, для цього нам потрібно змінити положення сіті. Перейдіть до вигляду «спереду», натиснувши Num1 (або клацнувши «Вид» і вибравши «Спереду»), і якщо циліндр ще не вибрано, зробіть це, клацнувши на ньому . Щоб перемістити геометрію і залишити центр на місці, перейдіть у режим редагування, натиснувши Tab ⇆. Переконайтеся, що виділено весь циліндр, натиснувши A (зняти виділення/виділити все), доки все не буде виділено, потім натисніть G, щоб перейти у режим захоплення, Z, щоб обмежити переміщення віссю Z, і 1, щоб перемістити геометрію на 1 одиницю вгору.
Редагування сітки
Тепер, перебуваючи в режимі редагування сіті, перейдіть на панель інструментів 3D-Видів і увімкніть оклюзію, натиснувши кнопку «Occlude Background Geometry» (піктограма куба), а потім перейдіть в режим «Face Edit Mode» (Режим редагування граней), натиснувши кнопку «Face» (трикутник поруч із піктограмою куба).
Поверніть 3D-Вигляд так, щоб ви могли бачити верхню частину циліндра, натиснувши ⇧ Shift і перетягнувши вниз за допомогою , ви також можете повернути вигляд за допомогою Num8. Далі, активуйте вибір пензля, двічі натиснувши B, а потім виділіть верхні грані, клацнувши їх за допомогою
(у режимі вибору пензля
вибирає,
скасовує вибір). Якщо пензель завеликий, ви можете зменшити його розмір, натиснувши MWDown. Вийдіть з режиму вибору пензля, клацнувши
або натиснувши Esc. Перемістіть вибрані грані вгору, натиснувши G для захоплення, потім натисніть Z, потім 1, щоб підняти вибрані грані на 1 одиницю вздовж осі Z, а потім
для підтвердження.
Відкриття редактора UV/зображень
Тепер нам потрібно розгорнути модель, для цього нам потрібно спочатку відкрити «UV/Image Editor» у новому вікні перегляду. Для цього нам потрібно «розділити» 3D-вигляд навпіл; перемістіть курсор вниз так, щоб він опинився внизу панелі інструментів 3D-Вигляду, і він повинен перетворитися на стрілки «Вгору/Вниз», коли це станеться, натисніть і виберіть «Split Area» за допомогою
. Коли ви пересуватимете курсор навколо вертикальної смуги, яка тепер має слідувати за ним, розташуйте вертикальну смугу в центрі 3D-вигляду за допомогою курсору і підтвердіть позицію розділення, натиснувши
. Після цього тривимірне вікно буде розділено на дві частини.
Відкрийте редактор UV/зображень у правому вікні перегляду, клацнувши на піктограмі «Тип вікна» за допомогою , а потім знову використовуйте
, щоб вибрати «Редактор UV/зображень».
Розмітка швів
Тепер ми можемо виділити всі грані циліндра і натиснути U, щоб розгорнути модель прямо зараз, але якщо ми це зробимо, ми можемо отримати дивний вигляд ультрафіолету. Це відбувається тому, що Blender не знає, де розділити текстуру. Щоб виправити це, нам потрібно «позначити здається» на моделі. Перемістіть курсор назад у 3D-вигляд, і якщо ви ще не увімкнули режим редагування сіті для циліндра, увімкніть його, виділивши циліндр і натиснувши Tab ⇆. Перейдіть до «Режиму виділення ребер», утримуючи Ctrl і натиснувши Tab ⇆, коли з'явиться меню «Режим виділення», відпустіть Ctrl і Tab ⇆, а потім клацніть на «Ребрах» за допомогою .
Для виділення першого вигляду ми скористаємося так званою «Ділянкою Крайового контуру». Переконайтеся, що ще нічого не виділено, ще раз натиснувши A, а потім розташуйте курсор так, щоб він знаходився біля центру одного з ребер, що огинають верхню частину моделі. Тепер, утримуючи Alt, натисніть , щоб виділити «кільце» з ребер, які обводять вершину моделі. Після виділення ребер, утримуючи Ctrl, натисніть E, щоб викликати меню «Edge Specials» і виберіть «Mark Seem» за допомогою
. Тепер верхнє кільце ребер повинно мати помаранчевий колір, що вказує на їхню видимість. Тепер виберіть одну з ребер, що спускаються вниз по боковій стороні циліндра, і знову скористайтеся меню «Edge Specials» (Спеціальні властивості ребер), щоб позначити ще одне подібне ребро. Поверніть вигляд, утримуючи Ctrl і
, поки курсор знаходиться у 3d-Вигляді, і перетягніть курсор вгору, доки не побачите нижню частину циліндра. Тепер повторіть процес, який ви використовували для виділення і позначення першої видимості у верхній частині циліндра.
Розгортання моделі
Тепер ми можемо розгорнути циліндр. Поверніться до «Режиму виділення граней» (Ctrl Tab ⇆) і натискайте A, доки не буде виділено всі грані циліндра. Далі, натисніть U, щоб викликати меню «UV Calculation» (Обчислення UV) і виберіть «Unwrap» (Розгорнути) за допомогою . Тепер у вікні редактора UV/Зображень мають з'явитися UV-дані моделі.
Тепер відкриваємо текстуру, на яку ми хочемо накласти UV-світло. У вікні редактора «UV/Зображення» перейдіть до меню «Зображення» і, утримуючи Ctrl, натисніть «Відкрити» за допомогою , це відкриє браузер файлів у «режимі попереднього перегляду», що дозволить вам переглянути мініатюри зображень перед їх відкриттям. Перейдіть до місця, куди ви зберегли файл «RedSoda.png»
і виберіть його за допомогою клавіші
. Ім'я файлу тепер має з'явитися безпосередньо під розташуванням каталогу у верхній частині браузера файлів, натисніть на «Відкрити зображення», щоб завантажити зображення у вікно «UV/редактор зображень».
Нанесення UV-зображень на карту
Тепер настав час накласти на зображення циліндра ультрафіолетове випромінювання. Виберіть потрібну круглу грань, навівши курсор на частину її геометрії, і натисніть L, щоб вибрати «зв'язану геометрію». Тепер уся кругова текстура має бути виділена, увімкніть режим захоплення, натиснувши G, і перетягніть об'єкт на праве коло на зображенні. Повторіть цей процес для лівої кругової текстури, перетягнувши її на ліве кругле зображення. Спробуйте розташувати кругові текстури у центрі зображення, під яким вони знаходяться, а потім збільште їхній масштаб, щоб вони здебільшого покривали кругові частини зображення під ними, але не виходили за межі круглих частин. Масштабуйте їх, спочатку виділивши координати за допомогою L, а потім натисніть S, щоб увійти до «Режиму Масштабування». Якщо ви відведете курсор від об'єкта, його розмір збільшиться, якщо ви підведете курсор до об'єкта, його розмір зменшиться, утримуйте ⇧ Shift, щоб зменшити зміну масштабу при переміщенні курсору. (Порада: чим ближче курсор до центру об'єкта під час активації трансформації, наприклад, Масштабування або Захоплення, тим більший вплив на трансформацію матиме переміщення курсору).
Після того, як ви закінчите переміщення двох кругових UV-карт на місце, натискайте A, доки нічого не буде виділено, а потім натисніть B один раз, щоб увійти до «Режиму виділення рамки». Перетягніть рамку виділення лише на верхній набір координат у фігурному UV за допомогою , щоб виділити їх. Потім натисніть G і Y, щоб обмежити їхній рух віссю Y. Так само, як ви робили з круговими кооридинатами, спробуйте розташувати цей верхній рядок координат якомога ближче до вершини червоної рамки на зображенні, не виходячи за її межі.
Після того, як ви задоволені розташуванням координат, виберіть «Images» (Зображення), а потім «Save As» (Зберегти як) на панелі інструментів UV/Зображувального Редактора. Змініть ім'я файлу на «BlenderSoda.png» (те саме ім'я, яке ми використовуємо для моделі), натисніть ↵ Enter для підтвердження і клацніть «Зберегти зображення» за допомогою .
Тепер ви можете побачити попередній перегляд того, як зображення накладається на вашу модель у 3D-вигляді, натиснувши на іконку «Тип малювання» в заголовку і вибравши «Текстурований».
Додавання матеріалу
Перейдіть до меню «Зафарбовування» у вікні кнопок і клацніть піктограму «Матеріали». За допомогою клацніть піктограму зі стрілками вгору/вниз поруч з «Додати новий» і виберіть «0 Material» (якщо у списку немає «0 Material», просто клацніть на самій кнопці «Додати новий», щоб створити його). Змініть назву з «Material» на «BlenderSoda».
У крайньому правому куті панелі має бути вкладка «Texture» (Текстура), клацніть на вкладку «Map Input» (Введення Карти), що знаходиться поруч, і натисніть на кнопку «UV». Це дозволить Blender'у використовувати UV-координати моделі для вирівнювання матеріалу, а не налаштування матеріалу.
Додавання текстури
Тепер клацніть на піктограмі «Texture Buttons» за допомогою , щоб викликати панель кнопок текстур. Як і у випадку з матеріалом, змініть назву «TE:» з «Tex» на «BlenderSoda». Клацніть на панелі під «Texture Type» і виберіть «Image», мають з'явитися дві нові панелі кнопок.
Під панеллю в крайньому правому куті під назвою «Image» (Зображення) натисніть на іконку вгору/вниз поруч з «Load» (Завантажити) і виберіть зображення, яке ми зберегли з UV/Зображувального Редактора раніше, «BlenderSoda.png». Зверніть увагу на те, звідки завантажується текстура (ви можете побачити місце розташування, натиснувши на іконку папки), нам потрібно буде зайти сюди пізніше. Якщо все пройшло добре, ми можемо експортувати модель.
Експорт моделі
- Щоб експортувати анімовану модель, див. Animation in Blender.
Для того, щоб модель працювала у рушії, ми повинні конвертувати її та текстури, які вона використовує, у формати, які використовує рушій. Для продовження вам знадобиться встановлений скрипт експорту.

Перемістіть курсор назад у 3D-вікно і перейдіть у режим об'єкта, натиснувши Tab ⇆. Переконайтеся, що вибрано лише циліндр, потім перейдіть до файлу, виберіть «Експортувати» і виберіть Half-Life 2 (.smd).
Має з'явитися вікно експорту, виберіть «Static Mesh» і змініть ім'я експортованого файлу на «BlenderSoda.smd». Перш ніж натиснути кнопку «Export», зверніть увагу на те, куди Blender виводить файл (у цьому прикладі тека «c:\Modeling\Blender\SourceSDK\Guide\»).
Після експорту перейдіть до каталогу Blender'а, який використовувався для експорту, і скопіюйте файл «BlenderSoda.smd» до каталогу games «modelsrc». У цьому прикладі я копіюю до теки Half-Life 2 Death Match SDK:
- C:\Program Files\Steam\steamapps\USERNAME\sourcesdk_content\hl2mp\modelsrc
Компіляція QC-файлу
- Основна стаття: Compiling a model.[=
У тій самій папці, куди було скопійовано SMD-файл («BlenderSoda.smd»), створіть новий текстовий документ і відкрийте його за допомогою блокнота. Скопіюйте та вставте всередину наступне:
$modelname BlenderSoda.mdl $cdmaterials "models" $scale 2 $surfaceprop metal $staticprop $body mybody "BlenderSoda.smd" $sequence idle "BlenderSoda" fps 1

$scale 2
це перетворення між одиницями Blender'а та вихідними одиницяами. Наприклад, якщо ваша модель була заввишки 3 одиниці Blender'а, то при масштабі 4 ви отримаєте модель заввишки 12 одиниць Hammer'а.
$surfaceprop metal
надає моделі звук зіткнення з металом, коли в неї влучає снаряд або на неї наскакують. Це не спрацює, якщо моделі не призначено сіть зіткнень. Щоб дізнатися більше про властивості поверхні, дивіться цю статтю.Після перевірки значень, використаних у QC-файлі, збережіть його у тій самій папці, де знаходиться SMD, під назвою «BlenderSoda.qc».

Для компіляції моделі відкрийте командний рядок (у Windows XP «Пуск > Виконати... > cmd»). Скопіюйте та вставте в командний рядок наведені нижче команди, обов'язково замінивши з вашим справжнім іменем для входу в Steam перед запуском команди:
"%sourcesdk%\bin\ep1\bin\studiomdl.exe" -game "c:\program files\steam\steamapps\ІМ'Я КОРИСТУВАЧА\half-life 2 deathmatch\hl2mp" -notxbox "C:\Program Files\Steam\steamapps\USERNAME\sourcesdk_content\hl2mp\modelsrc\BlenderSoda.qc"
Скомпільовані вихідні QC-файли мали бути надіслані до папки:
"C:\Program Files\Steam\steamapps\ІМ'Я КОРИСТУВАЧА\half-life 2 deathmatch\hl2mp\models"
Перетворення UV/зображення на VTF
- Основна стаття: Creating a Material.
Тепер нам потрібно перетворити файл «BlenderSoda.png», який ми використовували для текстурування нашої моделі, у формат текстур Valve. Щоб зробити це, зверніться до підручника Creating a Material.
Тут слід відзначити чотири важливі речі:
- Файл текстури має те саме ім'я, що й модель.
- Перетворений файл текстури знаходиться у відповідній папці:
"C:\Program Files\Steam\steamapps\ІМ'Я КОРИСТУВАЧА\half-life 2 deathmatch\hl2mp\materials\models"
- Файл текстури має VMT-файл («texturename.vmt») з тим самим іменем, що й модель матеріалу у Blender'і («BlenderSoda.vmt») та розташуванням папки («hl2mp\materials\models»), що й файл текстури
- Файлу VMT присвоєно відповідні значення:
VertexLitGeneric { $basetexture models/BlenderSoda }
Тестування компіляції моделі
Нарешті, після того, як ви перетворили модель і текстуру в потрібний формат, настав час перевірити, чи все пішло за планом.
- Запустіть Steam, перейдіть на вкладку інструментів і відкрийте Source SDK
- Переконайтеся, що у вікні Source SDK вибрано правильний рушій та гру
- Відкрийте Переглядач моделей і за допомогою
клацніть «Файл», а потім «Завантажити модель».
- За допомогою браузера моделей знайдіть файл «BlenderSoda» і відкрийте його.
Сподіваємося, тепер ви бачите повністю скомпільовану і текстуровану модель.
Додаткові примітки
Image Files:
- Рушій Source Engine вимагає, щоб усі файли зображень мали ширину та висоту, які є степенем 2 (16, 32, 64, 128, 256, 512 і т.д.). Зображення «BlenderSoda.png», використане у цьому підручнику, має розміри 256 x 256. Якщо ви хочете створити власну текстуру моделі, переконайтеся, що її розміри відповідають цій конвенції.
Інші ігри Source
У цьому підручнику модель було створено для Half-Life 2: Deathmatch, але можна легко замінити її на іншу гру з іншим кодом. На останніх кроках просто використовуйте директорії моделі та текстур цієї гри замість директорії HL2DM.
Наприклад: для Team Fortress 2 ви б використовували: |
"C:\Program Files\Steam\steamapps\ІМ'Я КОРИСТУВАЧА\sourcesdk_content\tf\modelsrc
"%sourcesdk%\bin\orangebox\bin\studiomdl.exe" -game "c:\program files\steam\steamapps\USERNAME\team fortress 2\tf" -notxbox "C:\Program Files\Steam\steamapps\USERNAME\sourcesdk_content\tf\modelsrc\BlenderSoda.qc"
"C:\Program Files\Steam\steamapps\ІМ'Я КОРИСТУВАЧА\team fortress 2\tf\models
"C:\Program Files\Steam\steamapps\USERNAME\team fortress 2\tf\materials\models
Наприклад: для Left 4 Dead ви б використовували: |
C:\Program Files\Steam\steamapps\common\left 4 dead\sdk_content\modelsrc
"C:\Program Files\Steam\steamapps\common\left 4 dead\bin\studiomdl.exe" -game "C:\Program Files\Steam\steamapps\common\left 4 dead\left4dead" -notxbox "C:\Program Files\Steam\steamapps\common\left 4 dead\sdk_content\modelsrc\BlenderSoda.qc"
C:\Program Files\Steam\steamapps\common\left 4 dead\left4dead\models
C:\Program Files\Steam\steamapps\common\left 4 dead\left4dead\materials\models
Дивіться також
- Blender
- Modeling props with Blender
- Is Blender 3D Good for Source? - How to Start
- Model Creation Overview