Создание новой растительности — различия между версиями
Материал из S.T.A.L.K.E.R. Inside Wiki
H2v6 (обсуждение | вклад) (→Результаты) |
м (Quadratic13 переименовал страницу Кустарные работы. Делаем новые кусты. в Создание новой растительности) |
||
(не показаны 6 промежуточные версии 5 участников) | |||
Строка 2: | Строка 2: | ||
− | Для создания объектов являющихся кустами необходимо: | + | Для создания объектов, являющихся кустами необходимо иметь следующие инструменты: |
+ | '''3ds Max''' и/или '''Maya''' | ||
− | + | '''Adobe Photoshop''' | |
− | + | '''X-Ray SDK''' | |
− | + | Прямые руки, навыки работы в максе и X-Ray SDK. | |
− | + | ||
− | Прямые руки | + | |
− | + | ||
− | + | ||
== Начнем == | == Начнем == | ||
− | |||
− | |||
Я сделаю свой куст полностью с нуля, пусть новым кустом будет борщевик. | Я сделаю свой куст полностью с нуля, пусть новым кустом будет борщевик. | ||
− | + | [[Файл:Kustarnye raboty 01.jpg|600px]] | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
Для начала схожу и сделаю текстуры… | Для начала схожу и сделаю текстуры… | ||
+ | [[Файл:Kustarnye raboty 02.jpg|300px]] [[Файл:Kustarnye raboty 03.jpg]] | ||
− | + | Теперь прогоняем отснятый материал через '''Photoshop''' и получаем что-то вроде этого: | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | Теперь прогоняем отснятый материал через '''Photoshop''' | + | |
− | + | ||
− | и получаем | + | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | [[Файл:Kustarnye raboty 04.jpg|600px]] | |
+ | По своей природе кусты имеют сложное строение листа, поэтому фон у новых текстур должен быть прозрачным. Также не забывайте, что ствол должен проходить по центру рисунка, так как в дальнейшем это облегчит процесс текстурирования модели. | ||
+ | Текстуры готовы, теперь сохраняем их в .tga и [[Экспорт_текстур_в_SDK|импортируем через SDK]] | ||
== Создание модели == | == Создание модели == | ||
+ | Переходим к моделированию, я использую '''3d Max 8'''. | ||
− | + | Самый простой и экономичный способ построения куста - это создание двух перекрещенных плоскостей с прозрачными текстурами. | |
− | + | ||
− | + | ||
− | + | ||
− | Самый простой и экономичный способ построения куста | + | |
− | + | ||
− | это | + | |
− | + | ||
Например, вот так: | Например, вот так: | ||
− | + | [[Файл:Kustarnye raboty 05.jpg]] | |
− | + | ||
− | + | ||
Теперь настраиваем материалы. | Теперь настраиваем материалы. | ||
+ | Выбираем S.T.A.L.K.E.R. Mtl и задаем параметры материала нашего куста: | ||
− | + | * Engine Shader: '''flora\leaf_wave''' | |
− | + | * Compiler Shader: ''' flora\leaf''' | |
− | + | * Game Material: ''' materials\bush''' | |
− | + | ||
− | Engine Shader: '''flora\leaf_wave''' | + | |
− | + | ||
− | Compiler Shader:''' flora\leaf''' | + | |
− | + | ||
− | Game Material:''' materials\bush''' | + | |
− | + | ||
− | + | ||
− | + | ||
+ | [[Файл:Kustarnye raboty 06.jpg|240px]] | ||
Присваиваем материалу заготовленную текстуру и накладываем ее на модель. | Присваиваем материалу заготовленную текстуру и накладываем ее на модель. | ||
Строка 100: | Строка 55: | ||
Должно получиться вот так: | Должно получиться вот так: | ||
− | + | [[Файл:Kustarnye raboty 07.jpg|150px]] | |
− | + | ||
− | + | ||
Таким же способом делаем остальные части. | Таким же способом делаем остальные части. | ||
− | Если вы планируете обильно засаживать новыми кустами уровни, | + | Если вы планируете обильно засаживать новыми кустами уровни, то старайтесь уложиться в 100 полигонов для куста в целом, чтобы не нагружать игру. |
− | + | ||
− | то старайтесь уложиться в 100 полигонов для куста в целом, | + | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
+ | В моем случае борщевик должен расти практически повсеместно, поэтому я предпочел облегченный вариант моделирования. | ||
+ | Если же ваши планы не отличаются такой масштабностью, то можно использовать более сложную геометрию. | ||
Через некоторое время у меня получилась вот такая модель: | Через некоторое время у меня получилась вот такая модель: | ||
− | + | [[Файл:Kustarnye raboty 08.jpg|600px]] | |
− | + | ||
Пока что не особо впечатляет, но не стоит обращать на это внимания. | Пока что не особо впечатляет, но не стоит обращать на это внимания. | ||
− | Теперь сделаем «фуфло», оно нам пригодиться для того, | + | Теперь сделаем «фуфло», оно нам пригодиться для того, что бы от куста отлетали листья, когда его, что-то задевает. |
− | + | Для этого нужно создать зону действия, при прохождении которой будет лететь это самое «фуфло». Я взял сплайн и создал два полых многооугольника, один внутри другого. Причем их размер должен быть чуть уже самого куста. | |
− | что бы от куста отлетали листья, когда его, что-то задевает. | + | |
− | + | ||
− | Для этого нужно создать зону действия, при прохождении которой | + | |
− | + | ||
− | будет лететь это самое «фуфло» | + | |
− | + | ||
− | один внутри другого. Причем их размер должен быть чуть уже самого куста. | + | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
+ | Помещаем их в центр нашего куста: | ||
+ | [[Файл:Kustarnye raboty 09.jpg]] | ||
Создаем материал для этой зоны и настраиваем его: | Создаем материал для этой зоны и настраиваем его: | ||
− | Engine Shader: '''def_shaders\def_trans''' | + | * Engine Shader: '''def_shaders\def_trans''' |
− | Compiler Shader: '''flora\flora_collision''' | + | * Compiler Shader: '''flora\flora_collision''' |
− | Game Material: '''materials\bush''' | + | * Game Material: '''materials\bush''' |
+ | Присваиваем новому материалу текстуру '''tree_fuflo.dds''' из папки '''tree'''. | ||
− | + | Наша модель готова, выделяем ее и экспортируем в SDK. | |
− | + | ||
− | Наша модель готова, выделяем ее и | + | |
− | + | ||
== Настройка в Level Editor == | == Настройка в Level Editor == | ||
+ | Запускаем '''Level Editor''' и идем в '''objects\Library editor'''. Находим нашу модель, отмечаем галочку напротив '''preview''' и кликаем по кнопке '''Properties'''. | ||
− | + | В появившимся окне жмем на '''Main Options''', в поле '''Object Type''' выбираем '''Multiple Usage'''. | |
− | + | ||
− | + | ||
− | + | ||
− | В появившимся окне жмем на '''Main Options''' | + | |
− | + | ||
− | в поле '''Object Type''' выбираем '''Multiple Usage''' | + | |
− | + | ||
− | + | ||
− | + | ||
+ | [[Файл:Kustarnye raboty 10.jpg|600px]] | ||
---- | ---- | ||
+ | Сохраняем изменения кнопкой '''Save'''. | ||
− | + | Теперь создаем '''LODы''', для этого нужно нажать на '''Make LOD (High Quality)''', на вопрос системы ответить '''yes''' и отметить модели, для которых мы хотим создать LOD-текстуры, в данном случае мы отмечаем нашу модель. | |
− | + | ||
− | Теперь создаем '''LODы''', для этого нужно нажать на '''Make LOD (High Quality)''' | + | |
− | + | ||
− | на вопрос системы ответить '''yes''' и отметить модели, | + | |
− | + | ||
− | для которых мы хотим создать LOD текстуры, в данном случае мы отмечаем нашу модель. | + | |
Жмем OK и ждем некоторое время. | Жмем OK и ждем некоторое время. | ||
− | В зависимости от сложности нового куста аппаратных характеристик вашего компьютера, процедура может длиться от минуты и более. | + | В зависимости от сложности нового куста и аппаратных характеристик вашего компьютера, процедура может длиться от минуты и более. |
− | + | [[Файл:Kustarnye raboty 11.jpg|600px]] | |
− | + | [[Файл:Kustarnye raboty 12.jpg|600px]] | |
При удачном создании должно появиться сообщение: | При удачном создании должно появиться сообщение: | ||
− | + | [[Файл:Kustarnye raboty 13.jpg]] | |
− | + | ||
− | + | ||
---- | ---- | ||
− | Все, новый куст готов, осталось проверить его на работоспособность, | + | Все, новый куст готов, осталось проверить его на работоспособность, '''предварительно не забыв перенести новые текстуры куста и новые LODы из папки lod, установленного SDK в папку с игрой.''' |
− | + | ||
− | '''предварительно не забыв перенести новые текстуры куста и новые LODы из папки lod | + | |
− | + | ||
− | + | ||
− | + | ||
Строка 212: | Строка 124: | ||
'''В Level Editor:''' | '''В Level Editor:''' | ||
− | + | [[Файл:Kustarnye raboty 14.jpg|600px]] | |
− | + | ||
− | + | ||
+ | [[Файл:Kustarnye raboty 15.jpg|600px]] | ||
---- | ---- | ||
Строка 221: | Строка 132: | ||
'''В игре''' | '''В игре''' | ||
− | + | [[Файл:Kustarnye raboty 16.jpg|600px]] | |
− | + | ||
− | + | ||
+ | [[Файл:Kustarnye raboty 17.jpg|600px]] | ||
---- | ---- | ||
Строка 230: | Строка 140: | ||
'''В игре на максимальных настройках с графическим модом)):''' | '''В игре на максимальных настройках с графическим модом)):''' | ||
− | + | [[Файл:Kustarnye raboty 18.jpg|600px]] | |
---- | ---- | ||
− | |||
Все прекрасно работает, кусты шуршат, «фуфло» сыпется и верхушки даже покачиваются ('''!'''). | Все прекрасно работает, кусты шуршат, «фуфло» сыпется и верхушки даже покачиваются ('''!'''). | ||
Строка 240: | Строка 149: | ||
Таким же способом можно делать и деревья, только для ствола дерева необходимо использовать следующие настройки шейдеров: | Таким же способом можно делать и деревья, только для ствола дерева необходимо использовать следующие настройки шейдеров: | ||
− | Engine Shader: '''flora\trunk_wave''' | + | * Engine Shader: '''flora\trunk_wave''' |
− | + | * Compiler Shader: '''flora\ trunk _no_collision''' | |
− | Compiler Shader: '''flora\ trunk _no_collision''' | + | * Game Material: '''materials\tree_trunk''' |
− | + | ||
− | Game Material: '''materials\tree_trunk''' | + | |
− | + | ||
И зону «фуфла» ставить будет уместно только там, где листья, т.е. везде, кроме ствола. | И зону «фуфла» ставить будет уместно только там, где листья, т.е. везде, кроме ствола. | ||
− | |||
---- | ---- | ||
− | |||
PS. | PS. | ||
− | Если новые текстуры утратили прозрачность после импортирования в SDK, | + | Если новые текстуры утратили прозрачность после импортирования в SDK, то необходимо просто пересохранить ту же текстуру с прозрачностью в DDS, в ту папку, куда сохранил ее SDK (естественно, с тем же именем). |
− | + | Всем спасибо, все свободны. | |
− | |||
+ | Автор: [http://www.gameru.net/forum/index.php?showuser=7383 h2v6] | ||
− | + | Не забываем говорить спасибо)) | |
− | + | [[Категория:SDK]] | |
− | + |
Текущая версия на 06:31, 4 февраля 2018
Создание кустов
Для создания объектов, являющихся кустами необходимо иметь следующие инструменты:
3ds Max и/или Maya
Adobe Photoshop
X-Ray SDK
Прямые руки, навыки работы в максе и X-Ray SDK.
Начнем
Я сделаю свой куст полностью с нуля, пусть новым кустом будет борщевик.
Для начала схожу и сделаю текстуры…
Теперь прогоняем отснятый материал через Photoshop и получаем что-то вроде этого:
По своей природе кусты имеют сложное строение листа, поэтому фон у новых текстур должен быть прозрачным. Также не забывайте, что ствол должен проходить по центру рисунка, так как в дальнейшем это облегчит процесс текстурирования модели.
Текстуры готовы, теперь сохраняем их в .tga и импортируем через SDK
Создание модели
Переходим к моделированию, я использую 3d Max 8.
Самый простой и экономичный способ построения куста - это создание двух перекрещенных плоскостей с прозрачными текстурами. Например, вот так:
Теперь настраиваем материалы.
Выбираем S.T.A.L.K.E.R. Mtl и задаем параметры материала нашего куста:
- Engine Shader: flora\leaf_wave
- Compiler Shader: flora\leaf
- Game Material: materials\bush
Присваиваем материалу заготовленную текстуру и накладываем ее на модель.
Должно получиться вот так:
Таким же способом делаем остальные части.
Если вы планируете обильно засаживать новыми кустами уровни, то старайтесь уложиться в 100 полигонов для куста в целом, чтобы не нагружать игру.
В моем случае борщевик должен расти практически повсеместно, поэтому я предпочел облегченный вариант моделирования. Если же ваши планы не отличаются такой масштабностью, то можно использовать более сложную геометрию.
Через некоторое время у меня получилась вот такая модель:
Пока что не особо впечатляет, но не стоит обращать на это внимания.
Теперь сделаем «фуфло», оно нам пригодиться для того, что бы от куста отлетали листья, когда его, что-то задевает. Для этого нужно создать зону действия, при прохождении которой будет лететь это самое «фуфло». Я взял сплайн и создал два полых многооугольника, один внутри другого. Причем их размер должен быть чуть уже самого куста.
Помещаем их в центр нашего куста:
Создаем материал для этой зоны и настраиваем его:
- 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.
Сохраняем изменения кнопкой Save.
Теперь создаем LODы, для этого нужно нажать на Make LOD (High Quality), на вопрос системы ответить yes и отметить модели, для которых мы хотим создать LOD-текстуры, в данном случае мы отмечаем нашу модель.
Жмем OK и ждем некоторое время.
В зависимости от сложности нового куста и аппаратных характеристик вашего компьютера, процедура может длиться от минуты и более.
При удачном создании должно появиться сообщение:
Все, новый куст готов, осталось проверить его на работоспособность, предварительно не забыв перенести новые текстуры куста и новые LODы из папки lod, установленного SDK в папку с игрой.
Результаты
В Level Editor:
В игре
В игре на максимальных настройках с графическим модом)):
Все прекрасно работает, кусты шуршат, «фуфло» сыпется и верхушки даже покачиваются (!).
Таким же способом можно делать и деревья, только для ствола дерева необходимо использовать следующие настройки шейдеров:
- Engine Shader: flora\trunk_wave
- Compiler Shader: flora\ trunk _no_collision
- Game Material: materials\tree_trunk
И зону «фуфла» ставить будет уместно только там, где листья, т.е. везде, кроме ствола.
PS.
Если новые текстуры утратили прозрачность после импортирования в SDK, то необходимо просто пересохранить ту же текстуру с прозрачностью в DDS, в ту папку, куда сохранил ее SDK (естественно, с тем же именем).
Всем спасибо, все свободны.
Автор: h2v6
Не забываем говорить спасибо))