Как я написал 2D-игру для Android с нуля за 2 дня весом в 800 килобайт

preview_player
Показать описание
Ну что дорогие друзья, в сегодняшнем видео мы узнаем о том, как я написал 2D-шутер с видом сверху для Android-смартфонов полностью с нуля, без каких либо готовых движков типа Unity, Godot или Unreal Engine. Мы напишем с вами рендерер 2D-спрайтов, реализуем звук и управлением с тачскрина, узнаем о том, как спроектировать архитектуру игры и зачем вообще нужно писать свой движок и делать всё с нуля, когда есть готовые движки и конструкторы. В конце видео мы сделаем тесты на реальных устройствах (iPhone 5S китайский, а также Xperia Pro и анонсируем будущие видео о GPU в консолях нулевых годов. Видео в научпоп-стиле.

Ссылки:

Таймкоды:
Интро - 00:00
Почему с нуля? - 02:00
Цели - 03:20
Пишем игру - 06:30
Тесты - 14:42
Заключение - 18:57

#девайсы #гаджеты #программирование #java #игры #gamedev #android #retro #android_смартфоны #iphone #apple #topdownshooter #tds #androidstudio #научпоп #интересное
Рекомендации по теме
Комментарии
Автор

Хули медди мурк такой умный стал, втирает мне что-то про движки и программирование, а еще вчера на даче в таёте какал

Миша-Белкин
Автор

автоваз - это уже не клиника, это вероисповедание

ZRHR
Автор

Где-то месяц назад мне попалось видео с переводчиком, а теперь, когда я перешёл на Java (перешёл с С++ а ещё раньше — с С#) и мне попалось это видео. Ну, это судьба. Подписываюсь

isaeff_sv
Автор

Круто объясняешь
Я попробовал самостоятельно написать движок рендера на OpenGL API (неудачно), и мне многое было непонятно, но твои объяснения действительно дали понять некоторые вещи

HellingOut
Автор

Я искренне надеюсь что Вы - регулярно сдаете свой генетический материал Сэр! Если у Вас не будет как минимум 500-1000 детей то сие будет упущением для человечества!

modronmk
Автор

Ждем совместное видео на тему АвтоВАЗа с Maddy Murk’ом!

romankoregin
Автор

напомнило игру про мужика с ружьем и еще голыми из кустов олды на месте

LopkaUna
Автор

я посмотрел 6 видео к ряду на одном дыхании

maxpayne
Автор

Спасибо Monobogdan за шикарное видео!
Комментируйте в поддержку автора

romankoregin
Автор

Я твою Ява игру для мобильных телефонов понемногу меняю) Поменял управление, добавил "прыжок" и не совсем понял зачем нужно было для каждой геометрии камеру пересчитывать ( я так это понял). А так лайк)

aviator
Автор

По поводу Unity скажу даже больше: проводил тест одной и той же сцены с теми же моделями на разных версиях Unity, а конкретно на 5.6.7f1, 2017.x, 2019.x, 2021.3.x и 2022.2.x, поставил x так как конкретную версию уже не помню. Итог был печален: на любимой 5.6.7f1 нагрузка на телефон была небольшой, сцена не такая уж и тяжелая, но выдавала стабильные 60 кадров, так как стоял ограничитель, потому нагрузка была небольшой. На 2017.х по сути было почти тоже самое, но нагрузка выше, при этом частота кадров уверенно держалась на 60, версию 2018 я пропустил, решил сделать большой скачок, в итоге на версии 2019.х получил почти полностью загруженный процессор и нестабильные 60 кадров с падением до 55, на 2021.3.х уже нагрузка была высокая, но ФПС был в районе 50-55, в редких случаях бывали 60 кадров, на 2022.2.х при максимальной нагрузке горячий телефон выдавал 30 кадров с падением до 12 и редкими скачками до 45, 60 кадров я так и не увидел. Подумаешь, 10 миллионов полигонов на сцене...

По поводу самой игры, я давно хочу начать проект по реинкарнации своего BlackBerry Passport путём разработки стилизованных под BBOS 10 приложений, к примеру клиенты YouTube, VK, Telegram и т.п., чтобы помимо звонилки телефон можно было использовать по полной. И у меня есть идея для таких Паспортов сделать какой-то 2D эксклюзив. Начал искать инструкции по разработке нативных .bar приложений, но после официальных похорон системы разработчиками этот вариант отпал, скачал Android Studio 2022.1.1 (версию подбирал вручную, искал с поддержкой Android 4x). Даже не ожидал увидеть именно эту версию в ролике) Но, увы, пока дальше руки не дошли...

По поводу Тазов, привет от москвичиста)

Kostyan_Sigaev
Автор

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

sleepyNovember_project
Автор

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

stikmango.
Автор

Замути ещё порт вторых дальнобольшиков класс будет)))

Башкурдистанскиймаппер
Автор

Давно хотел спросить. Есть ли где-нибудь сборник, пак, архив с jdk, sdk, ndk, ide что там нужно чтобы начать писать java midlet приложухи чтоб распаковал и готово. (Да на кнопочные) Когда узнал про jtube и прочий софт 😂 прям преисполнился лично поковырять. (Есть навыки ковыряния python, java android, c#, delphi 😅)

NarutoUzumaki-lijf
Автор

Ахаха, мы знаем что ты любишь автоваз. Правда ведь, ребята из чата Богдана?

БудниПрошивальщика
Автор

К слову о совместимости. Я не частый игрок, но есть на памяти любимая игра TouchMix, она наподобие OSU, но там гораздо выше сложность и вовлечение в ритм.
Она запускалась на андроид 2.3 нормально, но у меня был только планшет prestigio с резистивным сенсором, и поэтому мультитач мне был недоступен, и пройти дальше первого уровня сложности я не мог никак.
На андроиде 4.4 игра уже запускается с глюками, не везде. На 5.0 уже начинается рассинхрон с нажатиями и играть невозможно.
На 8 и выше игра вообще не запускается из-за проблем с разрешением экрана видимо.
Эту игру и загуглить уже с первого раза не получится, нужно обязательно добавлять что это игра на андроид. Хотя там просто произведение аниме искусства, и музыка от корейского композитора написана специально для игры (композитор r300k, музыка оттуда есть на Ютубе).

Механизм-жя
Автор

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

mierce
Автор

Для оптимизации игры можно заново не создавать зомби, а скрывать и перемешать в область спавна. Так экономится память, может с пулями так же.

vladyslavvladov
Автор

А на что съёмку ведёте, на вэбку? Или телефон?

iArr