Сделал Ботов на НЕЙРОСЕТЯХ и Заставил их Сражаться
#Vectozavr #Gamedev #Programming
Моя школа по математике:
Помочь денежкой:
tg: @vectozavr
inst:
vk:
patreon:
Игра:
Моя статья про нейросети:
Тайм коды:
Сегодня я расскажу, о том, как я добавил систему бонусов в свою 3D игру, сделал большую и интересную карту для сражений и реализовал ботов, которых заставил сражаться друг с другом. Приятного просмотра!
Для тех, кто не смотрел, вкратце расскажу, что было сделано. Сначала я подключил SFML и научился рисовать простые двумерные примитивы. После этого я сделал двумерную карту, добавил игрока и сделал управление. С помощью рейкастинга я добился эффекта третьего измерения. То есть зная расстояние до объекта в данном направлении, можно нарисовать препятствия разной высоты. При этом будет создаваться иллюзия третьего измерения.
После этого я добавил текстуры, оружие, зеркала, звуки, обработку столкновений и онлайн. Про все это вы сможете посмотреть у меня на канале, если вам это интересно.
Первым делом я решил сделать новую, большую и просторную карту.
Карту можно делать в любом 3D редакторе, а потом экспортировать графику как .obj файл. Так обычно и делают, когда пишут игры. Я буду использовать Cinema4D. Нет никакой разницы, какой именно редактор трёхмерной графики вы будите использовать, ведь формат .obj файлов унифицирован.
Я подумал, что раз у нас есть прыжок, то логично было бы сделать его очень большим. Для этого нужно подготовить движок к тому, чтобы можно было перепрыгивать через стены и правильно обрабатывать стрельбу в воздухе.
По ходу того, как я писал движок, со мной связался подписчик, который загорелся желанием запустить мою игру на linux’e и эльбрусе. Дмитрий смог запустить движок, но проблема была в том, что игра сильно тормозила. Так как вся математика производится на процессоре, появилась идея воспользоваться мульти поточностью и распараллелить вычисления равномерно на все ядра, ведь практически все современные процессоры имеют более одного ядра.
Изначально я думал написать какой-нибудь простой алгоритм для бота, но проблема в том, что простой алгоритм будет слишком глупым, а сложный не понятно, как реализовать. И тогда почти сразу же мне пришла гениальная идея: а что, если сделать нейросеть для ботов, которая будет обучаться естественным отбором, играя сама с собой. Это действительно интересно!
В сети я нашел несколько статей, посвященных обучению нейросетей специально для этих целей. Но эти статьи требовали достаточно высокого уровня владения материалом. Так же нужно понимать, что настоящий 3d шутер отличается от моей игры хотя бы тем, что у меня все происходит в 2D, а значит и процесс обучения будет гораздо проще.
Я решил, что самым простым вариантом будет использовать генетический алгоритм, основанный на естественном отборе.
После 2х тысяч поколений счет вышел на постоянную величину и дальше боты развиваться не хотели. После 6-ти тысячного поколения был небольшой рост до 9-ти тысячного поколения, но дальше, сколько я не обучал сеть, роста больше не было.
1 view
78
13
2 months ago 01:48:59 1
Какие мужчины опасны для женщины? Марк Бартон о конфликтах в парах и ошибках в воспитании детей
2 months ago 00:16:04 1
Star Wars: KOTOR, Dragon Age: The Veilguard, Silent Hill 2, GreedFall 2, Diablo 4, Yakuza | НОВОСТИ
2 months ago 01:28:14 1
Илон Маск и Такер Карлсон | ИИ, TruthGPT, Твиттер, крах банковской системы
2 months ago 00:36:04 1
КАК ЗАРАБАТЫВАТЬ НА ТЕЛЕГРАМ-КАНАЛЕ 🔥 с чего начать ?
2 months ago 00:13:40 1
Почему Россия не хочет возвращать из плена военных, ставших инвалидами
2 months ago 01:04:32 1
Из-за этого Высшие Силы не могут помочь многим людям, 4 главные ошибки .. Михаил Агеев
2 months ago 00:26:20 1
Каринэ Геворгян. Когда наступают периоды турбулентности — безумие, жадность и глупость возрастают
2 months ago 00:27:17 1
❗ Что произойдет, если войну в Украине заморозить по линии фронта? Прогноз Энн Эпплбаум / Интервью
2 months ago 00:05:36 1
Приветствие солнцу. Сурья намаскар. Хатха йога. Йога для начинающих.
2 months ago 00:20:40 1
Христианин делает все возможное, чтобы опровергнуть ислам! | Мухаммад Али | ПЕРЕЗАЛИВ
2 months ago 00:02:23 1
Первый шаг, к миру на планете уже сделан
2 months ago 00:00:00 1
HAMSTER KOMBAT ВСЕХ КИНУЛИ, А МЫ РЕШАЕМ, ЧТО ДЕЛАТЬ С ОПЕНИНГОМ НА АТАКУ ТИТАНОВ ВСЁ ЧЕСТНО!
2 months ago 00:18:08 1
Делаю КАЖДЫЙ ДЕНЬ 1 упражнение, тайны долголетия
2 months ago 00:09:18 1
Контроль эмоций. Как стать хладнокровным и уверенным !
2 months ago 00:04:23 10
Самомнение или уверенность? Как понять свою настоящую ценность
2 months ago 00:46:31 1
Как реализоваться в жизни?
2 months ago 00:01:06 1
РАБОЧИЙ ПРОМОКОД НА КЕЙС GGSTANDOFF! НОВЫЙ БЕСПЛАТНЫЙ ПРОМО НА КЕЙС ГГ СТАНДОФФ!
2 months ago 01:11:16 1
Как сделать секс в браке ярче? Секс-терапия с Ольгой Василенко. 18+
2 months ago 01:42:40 1
Скурихины: «Страшно. Но надо себя преодолевать» // «Скажи Гордеевой»
2 months ago 00:54:51 1
#живаяочередь #MINICHAINS Как из 100 руб сделать 2200 руб реальная возможность
2 months ago 00:29:44 1
#заработкавсети #живаяочередь ЗАПИСЬ ВИДЕОСОЗВОНА ОТ
2 months ago 00:10:22 1
ЭТО Самые бесполезные ДЕВАЙСЫ НА КУХНЕ! Не трать НА ЭТО деньги
2 months ago 00:17:18 1
Правда о паразитах в рыбе: они уже живут внутри вас
2 months ago 00:10:10 1
Невербальное общение: техника НЛП присоединение и ведение. НЛП за 10 минут #05