Как сделать гта на юнити
ALT CITY: Online. Как я в одиночку создавал “GTA Online” для мобильных устройств. Часть 2
Привет, Хабр! Это вторая статья по разработке моего проекта ALT CITY: Online, суть которого кратко можно описать как “ГТА Онлайн для мобильных устройств”. Если вы не читали первую часть, то она тут.
Во второй части: главные сложности разработки игры с открытым миром на Unity, как появилось более 9000 игроков, ожидающих игру, первая встреча с хейтом и запуск тестирования игры. Приглашаю пережить со мной все эти события, которые произошли за последние 4 месяца.
Реакция на прошлую статью
Как человека, который никогда до этого не писал статьи — отклик на первую статью меня порадовал. На Хабре она собрала почти 13к просмотров, а на DTF — 7к. Более того, статья даже попала в дайджест AppTractor. Учитывая, что читаю я его часто, было приятной неожиданностью обнаружить там свою статью:
Приятно, что тема вызвала интерес у хабровчан, среди многочисленных комментариев были действительно обоснованные вопросы/претензии, которые касались оформления статьи, потом того, что на видео непонятно, что происходит (это действительно так, в этот раз будет лучше). Все это прочитал, спасибо, что помогаете делать лучше.
Но больше всего я удивился, когда обнаружил на одном популярном портале по разработке игр тред с обсуждением написанной мной статьи. Вот там было интересно. Люди обсуждали статью, даже не удосужившись прочитать ее, но зато напихали мне знатно. Было там что-то из разряда “чувак делает первую игру и уже решил делать гта”, “совершает классическую ошибку”, “на Unity сделать такую игру не сможет”. Ну, ок.
Также я получил несколько предложений инвестировать в игру, познакомился с большим числом специалистов, с некоторыми из которых я уверен мы в будущем сработаемся. В сообщество, посвященное игре, после статьи вступило около 200 человек.
С момента публикации прошлой статьи произошло очень много всего. Но обо всем по порядку.
Показательное видео проекта, октябрь 2020
Как можно заметить, огромная часть работы была направлена на ускорение разработки и самого пайплайна. Прямо как завещал Генри Форд.
И это дает свои плоды. Но это далеко не все, что было сделано.
Конечно, те, кто разбираются, обратят внимание, что в кадре нет кучи других игроков, авто и т. д. Тесты, которые я проводил, показывают, что 20-30 игроков в кадре не рушат игру, не делают ее “неиграбельной”. Авто тоже меняют историю не кардинально. Но реальные тесты, которые, я надеюсь, уже скоро будут проводиться, покажут, где и какие проблемы имеются.
Не могу не рассказать о том, что на сайте ALT CITY: Online около 5000 человек оставили свои адреса электронной почты, чтобы первыми узнать, когда выйдет игра!
Запуск тестирования ALT CITY: Online
Отдельное спасибо хочется сказать каждому, кто потратил время и установил себе тестовую версию ALT CITY: Online и подробно пишет о найденных багах. Благодаря вам я имею возможность сделать игру на самом деле качественной на базе той информации, которую вы мне предоставляете!
А теперь собственно подробное видео о том, в каком состоянии игра на момент 17 января 2021 года, а именно та самая первая закрытая тестовая версия:
Основные технические сложности при реализации
Все, что я пишу ниже, касается исключительно разработки подобных мобильных игр на движке Unity. Часто эти сложности присутствуют и в других популярных движках, но мы говорим конкретно про Unity. Это больше техническая часть, поэтому будет много слов, понятных разработчикам, но скорее всего непонятных остальным людям.
1. Оперативная память.
2. Дальность прорисовки.
3. Floating point precision.
4. Террейн.
Если вы делаете игру в большом открытом мире (выше мы дали определение “большого” мира), то скорее всего вам придется использовать тайлы террейна. Дело в том, что для красочного и насыщенного мира вам скорее всего придется использовать встроенные террейны от Unity. Они всем хороши, но когда дело касается их асинхронной нагрузки, начинают возникать неприятности. Если на террейне слишком много деревьев, это может привести к фризам. Если на террейне слишком много деталей, это может привести к фризам.
Часто от террейнов уходят к обычным моделям, но это делает невозможным использование деталей (травы, например). Может и есть какое-то решение для этого, но я искал его неделю, пробовал разные варианты и ничего не нашел. Но это все полбеды.
5. CPU Spikes.
6. Рендеринг.
Казалось бы, чем отличается отрисовка в играх с открытым миром и в играх со статичными небольшими уровнями? А много чем. Во-первых, учитывая то, что скорее всего будет использоваться сдвиг мира в начало координат, мы не сможем использовать встроенный Occlusion Culling. Таким образом, отрисовка геометрии сильно утяжеляется. Во-вторых, мы не можем использовать запекание света, так как мир будет подгружаться динамически. То есть тени тоже будут динамическими, а отрисовка теней это тяжелый процесс. Я уже не говорю о невозможности использования статического батчинга. Думаю, объяснять тут не нужно, почему использовать его не получится.
7. Собственно само моделирование мира.
Это не то чтобы большая проблема, просто требует очень много усилий, проработки и умений пользоваться определенными инструментами. Как правило, процедурная генерация помогает создать местность, затекстурировать ее, расставить базовые объекты (деревья, например).
Это самые главные проблемы, с которыми столкнулся я при разработке ALT CITY: Online, и с которыми с вероятностью 99% столкнется любой, кто тоже захочет создать игру в большом открытом мире на Unity. Возможно, какие-то проблемы я упустил, но это вот прям основное.
Что дальше?
Но на данный момент мне стало абсолютно очевидно, что в одного проект я возможно и вытяну, но результат очевидно будет далёк от того, который я представлял себе, начиная разрабатывать ALT CITY: Online. Поэтому последние недели я тщательно изучаю вопрос, как мне правильно разделить работу над проектом и какие конкретно специалисты мне нужны, чтобы сделать весь объём работ качественно и быстро. Проект на глазах превращается из казалось бы безумной идеи во что-то осязаемое и большое. И меня это радует. Вместе с этим проектом расту и я сам. И это крутое ощущение.
Заключение
Спасибо, что уделили время на прочтение данной статьи. Я постарался максимально подробно передать все, что произошло с проектом за последние полгода.
Это не последняя статья, будет еще как минимум две статьи, посвященных данной игре. Это только начало большой истории под названием ALT CITY: Online!
Пишите, о чем хотелось бы вам почитать в будущих статьях. Также буду рад услышать ваши мысли после прочтения данной статьи.
Если вас заинтересовала игра, и вы хотели бы первым узнать о ее релизе, то вы можете вступить в нашу группу Вконтакте, туда я выкладываю новости об игре.
Показать панель управления
Комментарии • 20
у меня 3 ошибки 1)Assets\���������\PlayerAttack.cs(10,7): error CS0111: Type ‘PlayerAttack’ already defines a member called ‘Start’ with the same parameter types 2) Assets\���������\PlayerAttack.cs(5,14): error CS0101: The namespace » already contains a definition for ‘PlayerAttack’
3) Assets\���������\PlayerAttack.cs(15,7): error CS0111: Type ‘PlayerAttack’ already defines a member called ‘Update’ with the same parameter types
БРАТАН ГО ДРУЖИТЬ ПОМОГИ МНЕ СОЗДАТЬ ИГРУ ПЖ
как исправить ошибку «AnimationEvent ‘Hit’ has no receiver! Are you missing a component?»
помоги пожалуцйст
@Ярослав Рыбалка аналогично
@balgor36 а как сделать боевку ударом кулаком?
@Ярослав Рыбалка Спасибо! Рад помочь)
@balgor36 Я тебя люблю спасибо тебе Гордей что ты есть
Рэгдолл не работает у Полицейского, и Дубинка (в моём случае MP5K) висит в воздухе
Все круто но дикция пиздец
Гордей где ты выучил c#
Прикольно, понравилось. Подпишусь на тебя. Го взаимку бро
Школьник делают GTA,до чего руки докатились?Я да же 2d игру не могу сделать.
Либо я рукожеп,либо (да)
Хотел написать » до чего докатился мир»,но я тупой (рукожеп)и написал «до чего руки докатились» :DDDD
Нужна практика. Я с 8 лет занимаюсь созданием игр.
Ребята, вы поймите, что мне очень сложно снимать видео! У меня получается снимать только по 1-2 видео в неделю! Извините, если видео будут долго не выходить. Я никогда не заброшу свой канала.
11 выпуск миссии звезды банды мафия
и прохожии и анимацию
пж подпишись на меня я подписан
а 10 выпуск миссии и анимация входа ивыхода машини и здания друзей и карту и прохожих
и 6 звезд розыска
Бритиш сити Вай ситти Людендорф Масков ситти Париж и старый горарарайон сашиа Санандрес
#10 GTA НА UNITY | МИНИКАРТА. КАК СОЗДАТЬ GTA НА UNITY?!
Показать панель управления
Комментарии • 36
Привет я твой подписчик
Знаешь я увидел твое видео про maya 2017 можешь пж сказать какие системные требования для неё нужны
@balgor36 на твоем саете систем требов бали меньше чем на оф сайте аутодеск
Привет. Просто загугли: «Maya 2017 системные требования». Это ж не сложно :))
пасаны требуйте гайды по lwjgl
чувак расскажи свою историю изучения языков программирования(с чего начал какие языки учил и книги читал, там по С++ какие курсы смотрел и тд )
Когда новые видео? Уже 9 месяцев прошло
@balgor36 тогда не утруждай себя. Выздоравливай
У меня сейчас нет возможности (при себе имею ноутбук с 32х битным процессором). Плюс ещё проблемы со здоровьем. Я обязательно исправлю все это и тогда буду снова снимать видео)
А у тебя есть игры в плей маркете?
Что видео не снимаешь я их обожал
Класс! А что если сделать под телефон?
@balgor36 у меня есть к вам предложение
Наконецто новый ведос
Ку! Ты очень крутой! Надеюсь вернёшься на ютуб
Тралбы со здоровьем
@shxnsy канал закинул
Он походу закинул канал, лень
На 5-7 части заметно как голос меняется
А в каком уроке ты покажешь как сделать кнопки управления
(Для игры с телефона)
Когда следущее видео по разработке гта на юнити.
Го как сделать бота
ГОРДЕЙ! прошу ответь! у меня когда я машину делал не садится. помоги пожалуйста!
Привет 🖐️, ты делаешь классные видосы, но не мог бы ты сделать видео на тему «уровень розыска и преследование полиции»?
Я думаю это дополнит урок про полицейского и надпись «попался»
У меня на одном компе Винда и Линукс.
Как у тебя за 2 года так сломался голос.
У него переходной возраст был) кто не знает
Ващеее, сейчас посмотрел от первой до этой серии специально))
Хорошая идея, продолжай в том же духе, и видел почаще по данной тематике бы 🙂
Pozdrów mnie u siebie na filmie
Zrób sklep w gta i AM polish
@AntigaZ Crew Teraz jestem w Polsce)
Ja z Polski i mimo to że cię nie rozumiem to cie oglądam
#10 GTA НА UNITY | МИНИКАРТА. КАК СОЗДАТЬ GTA НА UNITY?!
ความคิดเห็น • 36
Привет я твой подписчик
Знаешь я увидел твое видео про maya 2017 можешь пж сказать какие системные требования для неё нужны
@balgor36 на твоем саете систем требов бали меньше чем на оф сайте аутодеск
Привет. Просто загугли: «Maya 2017 системные требования». Это ж не сложно :))
пасаны требуйте гайды по lwjgl
чувак расскажи свою историю изучения языков программирования(с чего начал какие языки учил и книги читал, там по С++ какие курсы смотрел и тд )
Когда новые видео? Уже 9 месяцев прошло
@balgor36 тогда не утруждай себя. Выздоравливай
У меня сейчас нет возможности (при себе имею ноутбук с 32х битным процессором). Плюс ещё проблемы со здоровьем. Я обязательно исправлю все это и тогда буду снова снимать видео)
А у тебя есть игры в плей маркете?
Что видео не снимаешь я их обожал
Класс! А что если сделать под телефон?
@balgor36 у меня есть к вам предложение
Наконецто новый ведос
Ку! Ты очень крутой! Надеюсь вернёшься на ютуб
Тралбы со здоровьем
@shxnsy канал закинул
Он походу закинул канал, лень
На 5-7 части заметно как голос меняется
А в каком уроке ты покажешь как сделать кнопки управления
(Для игры с телефона)
Когда следущее видео по разработке гта на юнити.
Го как сделать бота
ГОРДЕЙ! прошу ответь! у меня когда я машину делал не садится. помоги пожалуйста!
Привет 🖐️, ты делаешь классные видосы, но не мог бы ты сделать видео на тему «уровень розыска и преследование полиции»?
Я думаю это дополнит урок про полицейского и надпись «попался»
У меня на одном компе Винда и Линукс.
Как у тебя за 2 года так сломался голос.
У него переходной возраст был) кто не знает
Ващеее, сейчас посмотрел от первой до этой серии специально))
Хорошая идея, продолжай в том же духе, и видел почаще по данной тематике бы 🙂
Pozdrów mnie u siebie na filmie
Zrób sklep w gta i AM polish
@AntigaZ Crew Teraz jestem w Polsce)
Ja z Polski i mimo to że cię nie rozumiem to cie oglądam