Pull to refresh
19
0
Бурангулов Борис @lonely_luckily

producer

Send message

Создаём единую инфраструктуру для параллельной разработки мобильных игр

Reading time10 min
Views2.3K

Она помогла нам переиспользовать игровые механики в непохожих проектах и увеличила скорость разработки на 25%.

Читать далее

Пересаживаем высоконагруженный игровой проект с Photon на кастомные решения

Reading time5 min
Views6.4K


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

Но, как это часто бывает, с развитием продукта универсальные решения требуют обработки напильником. А ведь War Robots существует уже почти восемь лет — инфраструктура серверов за это время менялась неоднократно по мере масштабирования проекта, который сейчас уже перешагнул через порог 200 млн установок.

В нашем случае такая обработка вылилась в собственные реализации тех или иных компонентов. Матчмейкинг и социальные фичи перекочевали в отдельные сервисы, новые игровые механики реализовывались на сервере для лучшей согласованности. В итоге от Photon остался транспорт, прослойка PUN на стороне клиента и некоторые сопутствующие расходы в виде лицензии, привязки к Windows и .Net Framework и чрезмерных аллокаций на клиенте.

Стало понятно, что затраты на фреймворк превышают его ценность, и надо тiкать.
Читать дальше →

Как протащить верблюда сквозь игольное ушко, или обновление компилятора С++ на проекте старше 10 лет

Reading time12 min
Views22K

Привет! Меня зовут Колосов Денис, я являюсь разработчиком клиентской части проекта «Allods Online» в студии IT Territory. Сегодня я расскажу о том, как мы решились обновить среду разработки и заодно компилятор на нашем проекте с Visual C++ 2010 на 2019. 

О чем пойдет речь?

1. Как мы докатились до такой жизни и отважились на этот шаг;
2. О сборке вендерских библиотек и всего окружения, которое у нас есть;
3. С какими кастомными проблемами мы столкнулись;
4. К чему это все привело.

Читать далее

Unity «Best» Practices

Reading time11 min
Views28K

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

Что такое AssetPostprocessor и чем Animation отличается от Animator? Почему не стоит доверять OnTriggerExit и зачем вам CanvasGroup? Чем хорош GameObject.Find и как вас спасут Property?

Далее в статье обсудим это, а также другие «особенности» работы с движком Unity.

Читать далее

Сжатые атласы в Unity Runtime

Reading time10 min
Views13K

Привет, меня зовут Юрий Грачев, я программист из студии Whalekit — автора зомби-шутера Left to Survive и мобильного PvP-шутера Warface: Global Operations. Кстати, именно о его технологиях мы и поговорим подробнее далее.

Речь пойдет про получение сжатых атласов в рантайме. Для начала мы выясним, что вообще такое атласы, для чего они нужны и какие требования предъявляются к исходным текстурам. Затем рассмотрим самый простой способ собрать в рантайме атлас и оценим результат с технической точки зрения. После этого я расскажу о наших экспериментах с компрессией в рантайме. Наконец, мы посмотрим, что общего у разных алгоритмов сжатия изображений, и подойдем к тому, ради чего статья и задумывалась: поговорим о нашем альтернативном подходе, при котором вообще не придется заниматься пережиманием пикселей в рантайме для получения сжатого атласа.

Читать далее

2022 год для мобильного геймдева (и не только): чего ждать и к чему готовиться

Reading time6 min
Views20K

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

О дефиците железа, IDFA и 5G, влиянии пандемии и статистике в цифрах — обо всем этом подробнее под катом.

Читать далее

Укрощение батчинга за счет оптимизации масок UI

Reading time8 min
Views6.5K

Часто мы сталкиваемся с задачей оптимизации интерфейсов, и приходится отлаживать то, что давно работает, но периодически усложняется. На таких экранах проблемы могут нарастать как снежный ком — до тех пор, пока не станут заметны невооруженным глазом. И когда придет время улучшить производительность, придется выбирать: либо переделывать все заново и сразу хорошо, либо решать проблемы по очереди.

В какой-то момент мы в War Robots столкнулись с необходимостью оптимизировать экран акций: обнаружилось, что для отрисовки этого экрана Unity совершала более 300 батчей. Для сравнения: куда более сложный экран ангара, содержащий 3D-сцену, 3D- и 2D-интерфейсы, эффекты и анимации, рисовался примерно за 100 батчей.

В этой статье я расскажу о том, как нам удалось починить динамический батчинг, упростить иерархию и поднять FPS в интерфейсе.

Читать далее

Урок цифры: как мальчишки и девчонки, а также их родители профориентировались в геймдеве

Reading time9 min
Views5.1K

На днях закончился очередной этап масштабной всероссийской акции «Урок цифры», темой которого в этом году стала разработка игр. Специально для неё мы создали тренажёр, где, двигаясь по сюжету, школьники 1-11 классов смогли попробовать себя в роли разработчиков, художников, аниматоров, геймдизайнеров, тестировщиков, маркетологов — и даже основателей компании.

Помимо методологических и технических подробностей разработки  профориентационного тренажёра. Помимо признаний в том, какой «Урок цифры» крутой. Помимо всего этого, мы бы хотели рассказать вам историю одной игры, которая 11 лет назад открыла двери в игровую индустрию для маленькой студии из Пензы, а теперь делает то же самое для миллионов школьников со всей страны.

Читать далее

The Matrix Awakens — новое технодемо Unreal Engine 5

Reading time2 min
Views37K

Пару часов назад прямо во время The Game Awards Epic Games выпустила бесплатное демо Unreal Engine 5 для Xbox Series X|S и PS5, предзагрузкой которого компания дразнилась еще в начале недели.

Отчасти снятое с реальными актерами, отчасти воссозданное в игровом движке, демо создано при участии членов оригинальной команды кинотрилогии «Матрица», в том числе Ланой Вачовски, Джеймсом МакТейгу и Джоном Гаэтой, в сотрудничестве с командой Epic Games.

Демо, конечно, впечатляет, показывая нам во всей красе, что нового предлагает нам UE5, а также как он выглядит и работает.

Читать далее

Почему мы решили делать сервис облачного гейминга на видеокартах AMD

Reading time7 min
Views14K

Рынок облачного гейминга в России развивается ударными темпами. Здесь у нас и Loudplay, и MY.GAMES Cloud (ех. Playkey), GFN.ru. Мобильные операторы связи тоже находят свою выгоду и заключают партнерские соглашения с перечисленными сервисами, запуская собственные проекты. Так поступила «Вымпелком», запустив Beeline Gaming, а вслед за ней — МТС, Мегафон и Tele2. Особых проблем запуск таких сервисов не доставляет — ведь они реализованы на основе платформ партнеров, которые давно отлажены и работают как нужно.

Год назад мы в Playkey стали частью MY.GAMES, вложив технологию своего облачного сервиса в основу MY.GAMES Cloud. Все это время сервис находится в состоянии soft launch. А недавно объявили о своем партнерстве с AMD, в рамках которого адаптировали протокол передачи видеопотока сервиса и будем тестировать видеокарты AMD Radeon™ RX 6700 XT на своих серверах. В чем профит этого партнерства для конечного пользователя, почему мы остановились именно на AMD, а не NVIDIA с их мощной трассировкой лучей, а также о том, насколько эта технология критична для игр, запускаемых через стриминговые сервисы, разбираемся в статье.

Читать далее

Разделяй и властвуй: детерминированный и скриптованный Match-3 движок

Reading time11 min
Views7.6K

Привет! Я Павел Щеваев, CTO студии BIT.GAMES, части MY.GAMES. Вы можете знать нас по таким играм, как «Гильдия Героев» и «Домовята» в Одноклассниках (да, это тоже были мы), а также по нашему текущему флагману Storyngton Hall — это классическая три-в-ряд с сюжетом в викторианском стиле. О нем-то и пойдет речь далее.

Когда я писал про тестовую ферму из Android-устройств, я не раз упоминал наш самописный детерминированный движок Match-3, благодаря которому и возникла возможность повсеместного покрытия игры тестами без ущерба для жизни и здоровья QA-команды.

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

Читать далее

Что такое ECS и с чем его компилят

Reading time27 min
Views33K

Привет! Эта статья — первая в блоге MY.GAMES, международного разработчика и издателя видеоигр. Здесь мы объединим наработки и экспертизу всех 14 наших игровых студий. Впрочем, будем рассказывать не только о внутренней кухне экосистемы MY.GAMES, но и о том, чем живет геймдев в России и мире в целом, о современных трендах и новостях индустрии. 

Меня зовут Андрей Боронников, и я работаю в команде экспериментальных проектов студии IT Territory, где занимаюсь разработкой игровых прототипов. Как-то раз в процессе поиска новых подходов к быстрой разработке прототипов мы вспомнили о таком замечательном подходе, как Entity Component System. О нем уже многое было раньше сказано, но мало что показано. 

О чем сегодня пойдет речь?

Для начала мы поговорим, куда в общем и целом движется Unity и зачем им Data Orientation System. Рассмотрим принцип работы ECS, зачем он нужен, кто вообще его использует и наиболее популярные реализации — и, конечно же, примеры практического применения ECS в играх.

Читать далее

Слон в посудной лавке, или как сохранить сроки производства в эпоху перемен

Reading time10 min
Views3.3K

В геймдеве только и разговоров, что о ремастерах. Уже на протяжении долгого времени мы рассказываем о том, как они создаются, на примере своего опыта с War Robots: о разных аспектах от препродакшна до внешних тестов и нового пайплайна разработки карт. Логично предположить, что изменение в стеке технологий требует совершенствования и внутренних процессов. 

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

Читать далее

Метод проб и ошибок: как мы создавали кастомный импортер в Unity3D для текстурных массивов

Reading time10 min
Views5.1K

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

Раньше на проекте  War Robots у нас был устоявшийся и вполне рабочий пайплайн по импорту текстурных массивов, на выходе которого мы получали массивы в конечном формате (ASTC, ETC2), отлично удовлетворяющие нашим требованиям для мобильных платформ. С этим все у нас было хорошо — до поры. Проблемы начались тогда, когда возникла необходимость релиза на ПК. 

В этой статье мы поговорим о проблемах, с которыми мы столкнулись и какие нам пришлось преодолеть: о проблеме специфической поддержки текстурных массивов Unity и о проблеме разных форматов под разные платформы. Наконец, расскажем о работе ScriptedImporter, который помог нам решить обе: как делать нельзя и как нужно.

Читать далее

Релизы без выгорания и овертаймов: как мы меняли процессы работы над крупными игровыми фичами

Reading time7 min
Views7.6K

Выстраивание производственных процессов — распространенная боль в IT-разработке. Это большая и комплексная задача, с которой неизбежно приходится сталкиваться на проектах, чтобы доставить фичу в срок. Однозначного и единственно правильного решения здесь нет. Зато есть множество маркеров: кранчи, выгорание, фичекат, — указывающих на то, что что-то вы все-таки делаете не так.

Изменение воркфлоу — процесс, способный растянуться не на один год, и, конечно, не обойдется без собственных набитых шишек. Ниже я расскажу об опыте команды War Robots: с чего мы когда-то начинали и каких результатов добились сейчас. И, поверьте, для нас это того стоило.

Читать далее

Декомпозиция света: как работает освещение в играх

Reading time7 min
Views15K

Освещение в играх напрямую влияет на наше восприятие происходящего на экране — и даже может являться основой геймплея. Как и в реальном мире, это понятие комплексное, едва ли реализуемое при помощи одного метода. 

Пожалуй, ближе всего к этому смогла приблизиться трассировка лучей — простая по своей концепции, но требовательная к вычислительным ресурсам системы. И та получила свое развитие в игровой индустрии сравнительно недавно, с началом эпохи RTX. А ведь геймдев развивается гораздо дольше — и к сегодняшнему дню разработан уже не один метод симуляции распространения света в игровой сцене.

О методах реализации глобального освещения в играх (которые мы, кстати, используем и в своих проектах) и о том, что это вообще такое — далее в статье.

Читать далее

Обучение на частного пилота в России. Личный опыт

Reading time18 min
Views125K

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

В этой статье я постараюсь в общих чертах, по верхам, но от начала до конца и с опорой на собственный опыт пройтись по всему процессу обучения на частного пилота в РФ. Статья в первую очередь будет полезна тем, кто потенциально интересуется авиацией, но не знает, с чего начать свой путь в небо, и слабо представляет, через что ему предстоит пройти на пути к заветной лицензии. А пройти есть ради чего.

Читать далее

Кровавое легаси: как в одиночку раздробить монолитный сервис и не сойти с ума

Reading time9 min
Views8.6K

Было раннее утро понедельника. Я проснулся раньше времени из-за грохота грома за окном. Подойдя к окну, я увидел, как по небу плыли свинцовые тучи, безжалостно заливая дождем все вокруг. Казалось, что еще чуть-чуть — и наступит второй всемирный потоп. Как будто Вселенная всеми способами пыталась мне намекнуть, что надвигается что-то ужасное, но я даже не представлял, что меня ждет.

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

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

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

В воздухе чувствовалось нарастающее напряжение. Руководитель заговорил, и я почувствовал себя, словно на гильотине. 

Произошло действительно страшное: мне предстояло путешествие по удивительному миру legacy-кода в старом корпоративном сервисе.

Читать далее

Тестовое задание — крышка гроба или ступенька вверх по карьерной лестнице?

Reading time13 min
Views18K

Привет! Меня зовут Евгений Судак, и я два с половиной года руководил отделом геймдизайна в Pixonic. Сегодня я хотел бы поговорить о тестовых заданиях.

Каждый, кто искал работу в игровой индустрии и не только, так или иначе сталкивался с тестовыми заданиями. Разнообразие их не перестает поражать воображение. Короткие, длинные, общие или специфические. Все они объединены общим знаменателем: это тот момент, где соискателю предлагается продемонстрировать навыки и знания в безопасной тестовой среде. 

В этой статье я разберу ТЗ для геймдизайнеров, которое я создал почти два года назад. Но кроме этого хотел бы поговорить о ситуации с тестовыми заданиями при трудоустройстве в целом.

Начнем?

Apple Keynote 2021: четыре iPhone 13, клавиатура в Apple Watch и другие анонсы

Reading time3 min
Views12K

14 сентября Apple провела традиционную сентябрьскую конференцию, на которой анонсировала обновления своих флагманских продуктов. Новые iPhone, редизайн iPad mini и Apple Watch — что еще нового? В основном — эволюционные, а не революционные улучшения, но обо всем по порядку.

Читать далее

Information

Rating
Does not participate
Registered
Activity