Вот это задание, так задание. Даже UI средствами ndk. Большущую работу проделали.
Помимо статьи хочу сказать большое спасибо, что поделились исходным кодом.
p.s. кому интересно про алгоритмы поведения приведений в игре почитать, то есть на хабре интересная статья от Vas3Khabrahabr.ru/post/109406/
Вам тоже спасибо за такую оценку! Приятно читать такие комментарии.
Насчет алгоритмов — возможно, чуть позже я добавлю и другие алгоритмы поведений в свою игру — благо, архитектуру сделал такую, что добавить их очень легко.
«Таким был итог почти трех недель разработки» — это вы как посчитали? 8 часов * 5 * 3? Просто в начале была фраз «Последние несколько месяцев, в свободное время».
Думал, из заголовка и окончания статьи будет понятно. 3 недели — календарные, чистого времени там было не «8 часов * 5 * 3», а гораздо меньше (сколько конкретно — не скажу, не засекал). Ещё несколько месяцев (с большими перерывами) я дописывал игру, об этом будет в следующей части.
Им нужен был гейм-девелопер с бОльшим опытом. Всё-таки, опыт разработки именно игр у меня маловат. Ну и на техническом собеседовании я показал себя плохо — был сильный ступор, не смог справиться с волнением.
Была абсолютно такая же ситуация: работа понравилась но тех. собеседование завалил. Им нужен был человек с большим опытом.
Впрочем сейчас не жалею. Работаю над более интересным проектом, в отличии от того, что выпускает сейчас Zeptolab.
Автор, ни в коем случае не воспринимайте это как оскорбление, но, быть может я чего-то не понимаю. Делал подобные вещи на почти чистом C++ и на C# + XNA, опыта разработки тоже не было. Но… Сделать тайловую карту с загрузкой из картинки, обработкой коллизии и управления, а также элементами меню — достаточно просто ведь. Но пару месяцев… Не слишком ли много?
Да, согласен, можно было сделать быстрее. Но, во-первых, я не ставил цели сделать быстро, и сроки особо не горели. Кроме того, были достаточно большие по времени пробелы, когда я не занимался игрой даже в свободное время (Это хорошо видно по статистике коммитов на гитхабе). Ну и изначально не было четкого видения того, что должно получиться.
Сложно было то, что почти любой новый шаг утыкался в проблемы с NDK, приходилось решать побочные задачи. Многое переписывал из-за того, что опыта в геймдеве почти нет.
По прошествии этих месяцев смотрю код, написанный в начале разработке и вижу, где сделал бы не так, лучше и т.д. Вижу огрехи в архитектуре. То есть, в какой-то мере я вырос в программистском плане.
Если честно, не знаком с этим инструментом. Не могли бы Вы коротко объяснить, как и что именно он подсчитывает? И, я так понимаю, либо он не учитывает комментарии/пустые строки, либо не смотрит *.h
Не совсем понял почему не подошел текстовый файл? В чем сложность его правки?
Когда делал своего пакмена для iOS уровни делал в обычном текстовом файле. Таким образом уровни получались абсолютно любой длины m x n. При этом выводилась только часть карты в зависимости от разрешения экрана. Из-за того, что игра шла на всех яблочных устройствах с разным размером экрана, реализовал мастшабирование с центрированием на ГГ. В качестве алгоритма поиска пути взял A*.
Общее время разработки — 6 дней, с учетом базовых знаний ObjC и базового незнания OpenGL.
Лично мне не особо нравится напечатывать текстом квадрат 20х20 или 30х30. А попробуйте сделать уровень в виде QR-кода...;)
Линейные размеры у меня тоже могут меняться (и непропорционально тоже).
В зависимости от разрешения? На iOS? Сравните с фрагментацией андроид-девайсов.
Вы хотите сравнить? 6 дней — полных или по 1-2 часа?
Уровни в экселе набивались. По времени выходит немногим дольше чем в пейнте, хоть и не так очевидно. При особой нужде редактор уровней делается за пару часов.
Неважно сколько устройств, к устройствам оно не цеплялось, но в зависимости от разрешения (в частности от соотношения сторон) выводилось разное количество квадратов. Поддерживалось и портретное и ландшафтное положение.
По времени часов за 50 получилось.
Как я писал Pacman'a, и что из этого получилось. Часть 1