Сповіщення
Очистити все

Створення нової рослинності


Ранг:
Майстер
Роль:
Гість
Записи:
752
Приєднався:
2 роки тому
 

Почнемо

Я зроблю свій кущ повністю з нуля, хай новим кущем буде борщівник.

image

Спочатку схожу і зроблю текстури.

image

За своєю природою кущі мають складну будову листа, тому фон у нових текстур має бути прозорим. Також не забувайте, що ствол повинен проходити по центру малюнка, тому що надалі це полегшить процес текстурування моделі.

Текстури готові, тепер зберігаємо їх у .tga та імпортуємо через SDK

 

Створення моделі

Переходимо до моделювання, використовую 3d Max 8 .

Найпростіший і економічний спосіб побудови куща – це створення двох перехрещених площин із прозорими текстурами. Наприклад, ось так:

image

Тепер налаштовуємо матеріали.

Вибираємо STALKER Mtl та задаємо параметри матеріалу нашого куща:

  • Engine Shader: flora\leaf_wave
  • Compiler Shader: flora\leaf
  • Game Material: materials\bush
image

Привласнюємо матеріалу заготовлену текстуру та накладаємо її на модель.

Повинно вийти так:

image

У такий же спосіб робимо решту частин.

Якщо ви плануєте рясно засаджувати новими кущами рівні, намагайтеся вкластися в 100 полігонів для куща в цілому, щоб не навантажувати гру.

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

Через деякий час у мене вийшла така модель:

image

Поки що не дуже вражає, але не варто звертати на це уваги.

Тепер зробимо «фуфло», воно нам знадобиться для того, щоб від куща відлітало листя, коли його щось зачіпає. Для цього потрібно створити зону дії, при проходженні якої летітиме це саме «фуфло». Я взяв сплайн і створив два порожні багатокутники, один усередині іншого. Причому їх розмір має бути трохи вже самого куща.

Поміщаємо їх у центр нашого куща:

image

Створюємо матеріал для цієї зони та налаштовуємо його:

  • Engine Shader: def_shaders\def_trans
  • Compiler Shader: flora\flora_collision
  • Game Material: materials\bush

Привласнюємо новому матеріалу текстуру tree_fuflo.dds із папки tree .

Наша модель готова, виділяємо її та експортуємо до SDK.

 

Налаштування в Level Editor

Запускаємо Level Editor і йдемо в objects \ Library editor . Знаходимо нашу модель, відзначаємо галочку навпроти preview і клацаємо по кнопці Properties .

У вікні тиснемо на Main Options , у полі Object Type вибираємо Multiple Usage .

image

Зберігаємо зміни кнопкою Save .

Тепер створюємо LODи , для цього потрібно натиснути на Make LOD (High Quality) , на питання системи відповісти yes і відзначити моделі, для яких ми хочемо створити LOD-текстури, в даному випадку ми відзначаємо нашу модель.

Тиснемо OK і чекаємо деякий час.

Залежно від складності нового куща та апаратних характеристик комп'ютера, процедура може тривати від хвилини і більше.

image
image

При успішному створенні має з'явитися повідомлення:

image

Все, новий кущ готовий, залишилося перевірити його на працездатність, попередньо не забувши перенести нові текстури куща і нові LOD з папки lod, встановленого SDK в папку з грою.

 

Результати

У Level Editor:

image

У грі

image

У грі на максимальних налаштуваннях з графічним модом)):

image

 


Все чудово працює, кущі шарудять, «фуфло» сипеться і верхівки навіть похитуються ( ! ).

Таким же способом можна робити і дерева, тільки для стовбура дерева необхідно використовувати такі налаштування шейдерів:

  • Engine Shader: flora\trunk_wave
  • Compiler Shader: flora\trunk _no_collision
  • Game Material: materials\tree_trunk

І зону «фуфла» ставити буде доречно лише там, де листя, тобто. скрізь, крім ствола.


PS.

Якщо нові текстури втратили прозорість після імпортування в SDK, необхідно просто перезберегти ту ж текстуру з прозорістю в DDS, в ту папку, куди зберіг її SDK (звісно, ​​з тим же ім'ям).

Всім дякую всі вільні.


   
Цитата