CG13 – Telegram
CG13
147 subscribers
84 photos
57 videos
1 file
52 links
STEAM: https://store.steampowered.com/app/4296180/YAguar/?beta=0

Про ягуар и не только

канал: https://www.youtube.com/c/@CG13dev

ссылка для буста: https://news.1rj.ru/str/boost/cg13dev
Download Telegram
еще по поводу анимации и кривоторчащих из машины врагов

походу разработки мне бывает нужны какие то ассеты но в силу того что я не шарю как сделать самому использую заглушки
например звук машины не правильный, но звучит правильно, в соответствии с оборотами движка
хотя уже найден инструмент как сделать нужный процедурный звук под любую конфигурацию движка

или эти самые анимации торчащих врагов из машины,
они корректно прицеливаются во врага, у меня настроен блендспейс (первый пик) в котором по углам стоят точки, это позы между которыми идем смешивание.
эти позы я слепил сам 🫣поэтому получилось так всрато, но это нормально, теперь надо просто в этом самом блендспейсе заменить позы на правильные и они появились у меня (пик 2)

так же было с домом, просто в маркете в месячной бесплатной раздаче был OldBrickHouse который идеально вписался по метрикам
👍2
немного про то как делал машину ведь есть повод вспомнить

когда решил делать машину, первым делом конечно же начал смотреть базовые шаблоны, открытые проекты, ассеты из маркета, но либо я плохо искал, либо очень скоро придумал как можно сделать машину, чтобы получилось как мне надо

походу дела конечно вскрылось много проблем но главным источником информации о физике машины был ютуб канал Ивана Новожилова.
Иван рассказывает как делать автосимуляторы, все строится исключительно на физике, а значения переменных (например коэффициенты трения шин) вычисляет эмпирическим путем на основе реальных заездов (смотрит видосы на ютубе, откуда видно на какой скорости пройден поворот, и по какой траектории проходится поворот, имея вид трека со спутника можно понять примерно дугу поворота, чего достаточно для получения значения трения в моменте - это взрыв мозга 🤯)
канал Ивана единственный в своем роде, не побоюсь этого сказать, не только в русскоязычном ютубе, а на ютубе вообще
оттуда я подчерпнул 99 процентов информации и имплементировал его в мое собственно решение

поскольку информации о моем подходе (который я намеренно опускаю в этом рассказе) было мало, я записал серию уроков где показал как построить машину базируясь на физике Unreal Engine
мой урок на ютубе собрал уже 20 тысяч просмотров

но ко мне на канал пришел Иван, и оставил комментарий, сказал что все правильно за исключением пары моментов.
с этого началась новая итерация машины 😅

мы связались с Иваном и он мне в дискорде написал огромную лекцию с формулами, графиками и схемами

в течение следующих двух недель я разбирался в этой полезной информации
пытался применить, были косяки, но Иван мне помог их решить

все это время Иван показывал как делать автосим и вот недавно он показал что сделал сам
я поиграл и это конечно восторг

P.S.: Иван так же принимал участие в проекте ремейка андеграунда два на Unreal Engine 5
(возможно как и мне помогал с физикой в виде консультаций)
🔥61
Лол, пост получился похожий на рекламу
но все, кто когда либо занимался такой задачей и без меня знают

просто Иван наконец дропнул своё творение.
Интересно в том числе, что он с этим планирует делать.
Он в первую очередь инженер, это можно заметить по карте трека 😅
забабахал новый билд 29.3

в этом билде пока нет новых фич
в основном просто подчистил косяки

снова доработана машина - увеличена стабильность на высокой скорости.
это было сделано не просто так и от балды.
дело в том, что в ситуации когда преследователь душит, не просто догоняя, но еще и обстреливая игрока, очень остро встает проблема контроля машины на высокой скорости

плюс в этой версии разобрался с затупами ботов когда они давали ооочень большое окно для действий игроку

следующий билд уже будет с новым уровнем Парковка
он же начало игры, а так же совмещающий геймплей стрельбы и езды
🔥2
Forwarded from MSX (Максем)
Льюис Хемильтон, не смог пройти первую миссию в оригинальном Driver. Прикольчик))))
пропал на полтора месяца но не сидел без дела
в следующие Х постов расскажу над чем работал и это не Ягуар

расскажу как из этого
https://youtu.be/k3w8AESScQo?si=Kh6wOidXmHevSgI8
кратко напомню, что Иван Новожилов, автор крутого физического решения для машины выкатил свою работу, я ее потестил и остался в восторге

конечно переносить это решение в ягуар у меня цели не было, но пришлось)

а все дело в том что при переезде на новую версию Unreal Engine 5.4 где как раз появилась та самая доработанная фича Motion Matching про которую я тоже раньше писал, произошли изменения в физике которые к сожалению аффектнули мою реализацию машины. попытки поправить поведение не увенчались успехом, даже при повторном переезде на 5.3 проблема сохранилась
я примерно понимаю в чем дело, эпики дорабатывают физику в угоду стабильности и производительности, но мое кастомное решение судя по всему конфликтует с последними апдейтами.

В связи с чем было принято решение все таки использовать решение Ивана в Ягуаре,
для чего я вначале настроил машину в демо проекте NWheel


Дальше начинается настоящий УГАР
👍2
Очень хотелось найти какой-нибудь реалистичный трек для теста вместо аркадных и простеньких карт
Поэтому я отправился в интернет и нашел вот такое чудо (пик)

Это мод для Assetto Corsa с очень детализированным дорожным полотном и я хочу рассказать про эту работу

Автор мода Тодд, живет в Калифорнии, и очень любит гору Санта Моника (а также игру Assetto Corsa)
И он поставил себе цель перенести ее в игру
👍21
Перенести гору в игру на самом деле не самая сложная задача
Я не уверен точно как эту часть работ сделал именно автор мода, но примерный путь такой
открываем Google Earth
находим гору делаем скрины горы с разных ракурсов
на самом деле требуется не мало ракурсов, порядка двухсот, чем больше тем большей детализации можно добиться

И с помощью фотограмметрии можно воссоздать гору в 3D
это с учетом того что гугл не позволяет выгружать геометрию, хотя этого я точно не знаю
👍2
а вот дальше начинается самое интересное
чтобы сделать дорожное полотно, Тодд вооружился камерой Go Pro Max 4k 360 и проехался по дорогам на небольшой скорости

Каждый кадр из видео имеет метаданные где также есть GPS координаты
Весь пайплайн весьма сложной но вот из этого (пик 1)
он сделал это (пик 2)
🔥3
Совсем вкратце прежде чем загрузить в софт для фотограмметрии необходимо обработать каждый кадр, с помощью маски исключить небо и машину, чтобы софт без ошибок состыковывал кадры
после создания облака точек получается естественно много мусора который надо очищать (например деревья и кусты тяжело поддаются фотограмметрии)

Короче ничего лучше не придумаешь и это отличный плацдарм для теста физона
тут конечно я уже лукавлю и мне просто захотелось покататься по горам но на физическом ядре которое будет использоваться в Ягуаре
👍4🔥1
Поэтому я скачал данный мод
расковырял его выдернул всю геометрию и перенес его в Unreal Engine
Не уверен точно с какой версии, но движок научился рисовать 3D облака внутри сцены а не как пост процесс, поэтому горы уходят выше облаков.
🔥3
После переноса Карты в игру я просто не мог нарадоваться этой красоте
я гонял по горам наслаждался пейзажами, но потом встала новая проблема.
Автор мода Тодд, отсканировал буквально около 40км дорог
чтобы проехать все дороги надо буквально не мало времени.
По этому я решил сделать интерфейс выбора трассы

Но что такое трасса с точки зрения гоночной игры?
это Старт и Финиш, а также трасса обычно поделена на участки.

По этому я замутил вот такую систему
(К сожалению текст не читаемый из-за того что в одной точке есть несколько объектов и анрил накладывает названия друг на друга)
На что обратить внимание так это на фиолетовые фигуры - это узлы графа
🔥32
Вдоль всех дорог я поставил такие “узлы” старт, финиш и на всех чек поинтах.
Вблизи это выглядит так

Флажки процедурно ставятся на место узла по краям дороги
Каждый узел имеет информацию о соседних узлах

Все это требовалось для того чтобы я мог указать старт и финиш, а как результат генерировался бы трек который бы выглядел как цепочка узлов от старта до финиша и в этом мне помог ChatGPT

Я ему просто сказал в какой структуре данных хранится мой граф и попросил его написать мне алгоритм поиска пути по не взвешенному графу (все узлы равны)
Так вот он выдал полностью рабочий код (программисты бойтесь)
3🔥1
Осталось дело за малым

Для каждого трека указываю
1 Начало
2 Конец
3 Название
4 Вспомогательный меш дороги который будет подсвечиваться из меню и отображаться на миникарте
5 Специальная камера спектатор которая с нужного ракурса смотрит на трек
🔥2
Выглядит забавно
🔥2
И вот результат

Так как трек содержит начало финиш а также все чекпоинты, стало возможным фиксировать время прохождения трека и всех участков, а вместе с тем можно отображать призрака прошлого рекорда.
👍2🔥2
Новая задача!
При прохождении трека необходимо сохранять позицию игрока каждый момент времени, если сохранять позицию каждый кадр, то мало того что данных будет слишком много, так еще проблема в том что данных будет еще больше если игра идет с высоким фреймрейтом. не порядок
поэтому я подобрал оптимальный интервал через который сохраняется позиция плюс время “снапшота”
Вторая проблема что теперь нужно отрисовывать призрака каждый кадр, но ведь информация есть только через больший промежуток времени чем частота кадров
на помощь приходит интерполяция
Постараюсь не душить, но идея в том что условно в массиве снапшотов есть 0й кадр, и через 0.1 секунду, мне же требуется отрисовать машину на 0.05 секунде, значит мне надо посчитать процент и взять соответствующую интерполяцию между двумя трансформами

Таким образом в игре появился интерфейс выбора машины и трассы
сохранение времени прохождения трека и участка, и призрак
🔥1