Как создать блики фар на машине?
| |
St1ngLeR | Дата: Пятница, 03.01.2020, 21:47 | Сообщение # 1 |
Титул: Sunlight Studios - Owner Ранг: Бог
Город: Москва
С нами с: 04.11.2018
Сообщений: 303
| Вступление Всем привет! В предыдущей статье вы научились конвертировать машины из игр Synetic (я надеюсь) и вы наверняка заметили, что фары на вашей машине горят не так, как у стандартных машин, это потому что на них отсутствуют omni-огни. Эти огни позволяют в игре генерировать блики фар в реальном времени в зависимости от их расположение и видимость от лица камеры.
Этап 1: Подготовка ПО Прежде всего, я хочу сказать, что есть по крайней мере 2 способа создания бликов: 1. С помощью 3ds Max 2. С помощью Blender Разумеется, я обладаю этими двумя программами, но по мне легче делать через 3ds Max (особенно 2010 версия) Для первого способа нам нужно: 3ds Max (у меня 2010 версия, можно любую) Make3ds, Makep3d (из SDK) ZModeler 1.07b
Этап 2: Названия фар Исходя из предыдущей статьи вы знайте, что для обозначение передних огней, и задних нужно использовать префикс «headl_*», а для тормозных «brakel_*». У всех машин в Crashday названия фар в принципе одинаковые и придерживаются правил, кое их вам я опишу ниже. Названия фар: headl_l — Левый передний огонь headl_r — Правый передний огонь headl_rl — Левый задний огонь headl_rr — Правый задний огонь brakel_l — Левый тормозной огонь brakel_r — Правый тормозной огонь Для omni-огней название должно быть такое [фара, привязанная к omni-огню]_[число]. Например, headl_l_1 — Omni-огонь для левого переднего огня. Самих omni-огней на одном мэше фары может быть несколько, поэтому можно еще использовать headl_l_1, headl_l_2 и так далее. Если вы хотите, допустим, сделать 4 передних огня по 2 пары, то вы можете их написать как: headl_l1, headl_l2, headl_r1, headl_r2 и так со всеми любыми огнями. Ограничение на omni-огней скорее всего нет, но лучше придерживаться максимум 8 источников света.
Этап 3: Конвертация в .3ds ВНИМАНИЕ: Учтите, что названия деталей машины и ее текстур не должны превышать 8 символов (не считая расширение файла для текстур), иначе 3ds Max не примет файл для открытия! Для конвертации в .3ds-формат необходимо воспользоваться программой от самих же разработчиков Crashday — Make3ds. Конечно, если запустить саму программу, то у вас на мгновение откроется и закроется командная строка, это потому эта программа, как и ее аналог Makep3d является командной строкой. Для того чтобы программа сконвертировала модель, нужно создать ярлык программы и желательно положить его в папку с машиной. Дальше нажмите на ПКМ по ярлыку и зайдите в свойства, и в поле «Объект» нужно вписать: «расположение программы» -in [папка_машины/машина.p3d] -out [папка_машины/машина.3ds] «-in» — Модель в .p3d-формате для конвертации «-out» — Сохранение модели в .3ds-формате
Этап 4: Работа с фарами После конвертации модели запускаем 3ds Max и открываем модель.
Вот так должна приблизительно выглядеть модель в 3ds Max. После открытия модели мы снимаем выделения, кликнув по свободной площади. Затем нажав по ПКМ мы в меню нажимаем на «Hide Unselected», чтобы скрыть всю модель. Потом по тому же меню нажимаем на «Unhide by Name» и выделяем все части машины с префиксами «headl_*» и «brakel_*».
В итоге вы будете видеть только фары машины, как на скриншоте сверху. С помощью Ctrl+A выделяем фары и в меню справа нажимаем на «Hierarchy», затем «Affect Pivot Only» и «Center to Object». Это нужно для того, чтобы мы могли omni-огни переместить к координатам осей (Pivots), а не к самим мэшам (mesh).
Затем кликаем обратно в «Create» и заходим в «Lights». В разделе Standard выбираем Omni, и в разделе Intensity/Color/Attenuation в Far Attenuation указываем везде 1.0.
В итоге у вас должно получиться все как на скриншоте сверху. Дальше кликаем по свободной площади один раз, таким образом мы создаем один omni-огонь. Кликаем по ПКМ свободной площади и в меню нажимаем «Move». Кликаем по передней фаре и в окне Move появляются координаты оси фары, копируем эти координаты, нажимаем по omni-огню и вставляем координаты. Вы также можете изменять сами координаты omni-огней в зависимости от ситуации. Не забывайте переименовывать omni-огонь, по тому принципу, который был описан ранее. После этого нажимаем по ПКМ по omni-огню и нажимаем в меню «Copy». И так повторяем пока не дойдем до задних/тормозных огней.
Чтобы создать задние/тормозные огни повторяем те же действие, но только помимо Far Attenuation мы выбираем цвет. Нажимаем в Intensity/Color/Attenuation около Multiplier на белый прямоугольник и выбираем красный цвет. Дальше делаем все также.
По завершению работы в 3ds Max мы c помощью Ctrl+A выделяем фары и в меню справа нажимаем на «Hierarchy», затем на «Reset Pivot». Таким образом мы сбрасываем расположение осей фар, теперь они расположены на координатах (0, 0, 0). Сохраняем модель в .3ds-формат и закрываем 3ds Max.
Этап 5: Конвертация в .p3d Для конвертации в .p3d-формат необходимо воспользоваться программой Makep3d. Она, как я вам говорил раньше, сделана в форме командной строки, поэтому мы также создаем ярлык программы и копируем ярлык в папку с машиной. Ниже приведены параметры, которые можно применить к конкретно этой программе: «-in [название_файла.p3d]» — Модель в .3ds-формате для конвертации «-out [название_файла]» — Сохранение модели в .p3d-формате «owrite» — Перезаписать файл без спроса пользователя «notex» — Заменить любую текстуру, если нет необходимой текстуры в директории «swap» — Изменить ориентацию полигонов «ignoredupl» — Не «сливает» дублированные вершины (имеют одинаковое положение в пространстве) в одну. «sgs» — Используйте, если вы конвертируете модель с использованием групп сглаживания (Smoothing Groups). Полезно для поддержания резко затемненных краев. При использовании этого параметра в большинстве случаев нет необходимости включать «-ignoredupl» «scale xx.xx» — масштабирование. Значение 1.0 означает исходный масштаб «-liftbottombound xx.xx» — Сдвигает вверх модель по нижней плоскости ограничительной рамки до определенного значения (в метрах). Всегда требуется, когда вершины в элементах мэша «main» лежат ниже 0-высоты. «-lowertopbound xx.xx» — Сдвигает модель по верхней плоскости ограничительной рамки «-mirrorx» — Отзеркаливает модель по оси X «-mirrory» — Отзеркаливает модель по оси Y «-mirrorz» — Отзеркаливает модель по оси Z «-flares» — Применяет к модели блики фар (если есть omni-огни) Все с этими параметрами можно экспериментировать сколько угодно, но все таки я вам советую придерживаться этим наборам параметров: «расположение программы» -flares -in [папка_машины/машина.3ds] -out [папка_машины/машина.p3d] -ignoredupl -owrite По окончанию конвертации программа напишет «program terminated», чтобы удостоверяться, что вы все сделали правильно — пролистайте вверх и если написано что больше чем 0 света прочитано (x lights read…), то у вас все правильно. Также не забудьте проверить правильность написания названия фар в carinfo.cca ВНИМАНИЕ: В carinfo.cca подписывайте только названия мэшей фар, а не их omni-огни. Также при removemesh1=[фара с omni-огнем] удалиться только мэш фары, а блик останется!
Итог
Ну что же, результат на скриншотах сверху! Машина словно «оживает» с бликами!
-------------------------------------------
Спасибо за прочтение статьи! Если есть вопросы или проблемы пишите в личку или в дискорд — St1ngLeR#6761
Версия для ВК
Мой ВК Мой YT-канал
Наша группа ВК Наш Дискорд-сервер
|
Статус: Offline |
| |
Онотоле | Дата: Пятница, 03.01.2020, 22:11 | Сообщение # 2 |
Титул: Sunlight Studios - Member Ранг: Вольный джигит
С нами с: 04.11.2018
Сообщений: 30
| Блин, капец, спасибо! Долго искал как сделать эти блики, в SDK не написано! Спасибо, стинглер!!!!
Сообщение отредактировал Онотоле - Пятница, 03.01.2020, 22:11 |
Статус: Offline |
| |
URV | Дата: Пятница, 03.01.2020, 22:26 | Сообщение # 3 |
Ранг: Пустое место
Город: Phoenix
С нами с: 19.05.2019
Сообщений: 8
| Статья вышла достаточно понятной и расписанной, мне понравилась! Я лично использую способ с Blender, там практически все точно также!
|
Статус: Offline |
| |
Tamplier | Дата: Пятница, 03.01.2020, 22:29 | Сообщение # 4 |
Титул: Sunlight Studios - Member Ранг: Вольный джигит
С нами с: 04.11.2018
Сообщений: 35
| Спасибо большое! Статья действительно полезная!
|
Статус: Offline |
| |
stalker | Дата: Понедельник, 10.02.2020, 23:47 | Сообщение # 5 |
Титул: Sunlight Studios - Member Ранг: Лалка
Город: Воронеж
С нами с: 04.11.2018
Сообщений: 29
| Хороший тутор, но мне бы хотя бы освоить навыки 3д-моделлирования
|
Статус: Offline |
| |
St1ngLeR | Дата: Понедельник, 10.02.2020, 23:51 | Сообщение # 6 |
Титул: Sunlight Studios - Owner Ранг: Бог
Город: Москва
С нами с: 04.11.2018
Сообщений: 303
| stalker, ты собираешься делать машину с нуля? Если да, то надо конечно освоить. А если хочешь конвертировать машину из другой игры то нужно осилить ZModeler 1.07b: знать изменения моделей (перемещение, вращение, соединение/отделение, растяжение и т.д.), знать как конвертировать текстуры и так далее. Сразу скажу, лучше начинать с добавлением тюна на другие тачки (с разрешением автора конечно) я таже делал 4-5 лет назад... были времена...
Мой ВК Мой YT-канал
Наша группа ВК Наш Дискорд-сервер
|
Статус: Offline |
| |
stalker | Дата: Понедельник, 10.02.2020, 23:52 | Сообщение # 7 |
Титул: Sunlight Studios - Member Ранг: Лалка
Город: Воронеж
С нами с: 04.11.2018
Сообщений: 29
| St1ngLeR, хорошо, попробую добавить тюнинг...
|
Статус: Offline |
| |
rgamer | Дата: Пятница, 27.03.2020, 22:46 | Сообщение # 8 |
Ранг: Пустое место
С нами с: 31.12.2018
Сообщений: 1
| Спасибо Вам за учебник! Я же из раздора!
|
Статус: Offline |
| |
St1ngLeR | Дата: Пятница, 27.03.2020, 22:46 | Сообщение # 9 |
Титул: Sunlight Studios - Owner Ранг: Бог
Город: Москва
С нами с: 04.11.2018
Сообщений: 303
| rgamer, всегда рад помочь! Но что за раздор?
Мой ВК Мой YT-канал
Наша группа ВК Наш Дискорд-сервер
|
Статус: Offline |
| |
Plymouth | Дата: Пятница, 27.03.2020, 22:47 | Сообщение # 10 |
Титул: Sunlight Studios - Member Ранг: Лалка
С нами с: 04.11.2018
Сообщений: 20
| St1ngLeR, Гугл транслейт говорит что это Discord. Rgamer немец же.
|
Статус: Offline |
| |
St1ngLeR | Дата: Пятница, 27.03.2020, 22:48 | Сообщение # 11 |
Титул: Sunlight Studios - Owner Ранг: Бог
Город: Москва
С нами с: 04.11.2018
Сообщений: 303
| Plymouth, а да точно! Извеняюсь.
Мой ВК Мой YT-канал
Наша группа ВК Наш Дискорд-сервер
|
Статус: Offline |
| |
|
При копировании материала с сайта, ссылка на https://cdgl.clan.su/ ОБЯЗАТЕЛЬНА ! |
|