Как сделать игру на айос

Сделай игру для iPhone за 10 минут. Прямо сейчас

Как сделать игру на айос. Смотреть фото Как сделать игру на айос. Смотреть картинку Как сделать игру на айос. Картинка про Как сделать игру на айос. Фото Как сделать игру на айос

В этой статье мы пошагово разберем, как сделать элементарную игру для iOS, ничего об этом не зная!

Вы пройдете путь от создания проекта до просмотра готовой игры на устройстве за 12 шагов и освоите основные принципы создания игр в xCode. Ну а потом решите, продолжать ли учиться разработке под iOS.

На все действия уйдет 10-15 минут.

Нам понадобятся:

Шаг 1. Создаем новый проект в Xcode

Как сделать игру на айос. Смотреть фото Как сделать игру на айос. Смотреть картинку Как сделать игру на айос. Картинка про Как сделать игру на айос. Фото Как сделать игру на айос

Шаг 2. Выбираем тип проекта

Как сделать игру на айос. Смотреть фото Как сделать игру на айос. Смотреть картинку Как сделать игру на айос. Картинка про Как сделать игру на айос. Фото Как сделать игру на айос

На следующем экране выбираем тип проекта – Game.

Шаг 3. Указываем основную информацию о проекте

Как сделать игру на айос. Смотреть фото Как сделать игру на айос. Смотреть картинку Как сделать игру на айос. Картинка про Как сделать игру на айос. Фото Как сделать игру на айос

Указываем название проекта и сверяем остальные настройки с картинкой.

Шаг 4. Выбираем место для папки с проектом

Как сделать игру на айос. Смотреть фото Как сделать игру на айос. Смотреть картинку Как сделать игру на айос. Картинка про Как сделать игру на айос. Фото Как сделать игру на айос

В открывшемся окне Finder указываем папку, в которой будем хранить проект. При необходимости можно воспользоваться кнопкой Create Folder в левом нижнем углу окна.

Шаг 5. Настраиваем игру

Как сделать игру на айос. Смотреть фото Как сделать игру на айос. Смотреть картинку Как сделать игру на айос. Картинка про Как сделать игру на айос. Фото Как сделать игру на айос

Теперь перед нами окно детальных настроек приложения. Снимаем галочку с Portrait в разделе Deployment Info, чтобы игра работала только в горизонтальном режиме.

Шаг 6. Смотрим на стандартный пример игры

Как сделать игру на айос. Смотреть фото Как сделать игру на айос. Смотреть картинку Как сделать игру на айос. Картинка про Как сделать игру на айос. Фото Как сделать игру на айос

Нажимаем на кнопку запуска симулятора в левом верхнем углу. Ждем некоторое время, пока симулятор загрузится. Кликаем на серое поле, чтобы появлялись космические корабли.

Шаг 7. Меняем космические корабли на цветы

Как сделать игру на айос. Смотреть фото Как сделать игру на айос. Смотреть картинку Как сделать игру на айос. Картинка про Как сделать игру на айос. Фото Как сделать игру на айос

Как сделать игру на айос. Смотреть фото Как сделать игру на айос. Смотреть картинку Как сделать игру на айос. Картинка про Как сделать игру на айос. Фото Как сделать игру на айос

В правом меню выбираем пункт assets.wcassets, потом делаем активным объект Spaceship и на место картинки с космическими кораблем перетаскиваем картинку с цветком.

Шаг 8. Смотрим, что изменилось

Как сделать игру на айос. Смотреть фото Как сделать игру на айос. Смотреть картинку Как сделать игру на айос. Картинка про Как сделать игру на айос. Фото Как сделать игру на айос

Снова запускаем эмулятор. Теперь вместо космических кораблей появляются цветы.

Шаг 9. Уменьшаем размер цветка

Как сделать игру на айос. Смотреть фото Как сделать игру на айос. Смотреть картинку Как сделать игру на айос. Картинка про Как сделать игру на айос. Фото Как сделать игру на айос

Как сделать игру на айос. Смотреть фото Как сделать игру на айос. Смотреть картинку Как сделать игру на айос. Картинка про Как сделать игру на айос. Фото Как сделать игру на айос

Уменьшим цветы в пять раз. В правом меню выбираем файл GameScene.swift и находим в нем строчки кода:

Шаг 10. Добавляем траву в коллекцию картинок

Как сделать игру на айос. Смотреть фото Как сделать игру на айос. Смотреть картинку Как сделать игру на айос. Картинка про Как сделать игру на айос. Фото Как сделать игру на айос

Как сделать игру на айос. Смотреть фото Как сделать игру на айос. Смотреть картинку Как сделать игру на айос. Картинка про Как сделать игру на айос. Фото Как сделать игру на айос

Идем в assets.wcassets, находим плюсик (см. картинку), нажимаем на него и выбираем пункт меню New Image Set. Называем новый набор картинок Background (название должно быть точным) и перетаскиваем в него картинку с травой из Finder.

Шаг 11. Добавляем траву в код

Как сделать игру на айос. Смотреть фото Как сделать игру на айос. Смотреть картинку Как сделать игру на айос. Картинка про Как сделать игру на айос. Фото Как сделать игру на айос

Удаляем код, который делает фоновую надпись HelloWorld:

На его место вставляем:

Шаг 12. Тестируем игру на устройстве

Как сделать игру на айос. Смотреть фото Как сделать игру на айос. Смотреть картинку Как сделать игру на айос. Картинка про Как сделать игру на айос. Фото Как сделать игру на айос

Если возникли какие-то проблемы, то обновите iOS и xCode.

В App Store такую игру не примут, но можно развлекаться на своих устройствах. Если проявить немного усердия, из этой основы можно сделать что-то действительно интересное с помощью Google и StackOverflow.

Не разбираясь в программировании, мы создали простую игру и потратили всего 10 минут. Чему же можно научиться за год интенсивного обучения под руководством опытных преподавателей?

Где учиться разработке под iOS?

Как сделать игру на айос. Смотреть фото Как сделать игру на айос. Смотреть картинку Как сделать игру на айос. Картинка про Как сделать игру на айос. Фото Как сделать игру на айос
Лучший вариант — поcтупить на факультет iOS-разработки в онлайн-университет GeekUniversity, созданный GeekBrains и Mail.ru. Целый год несколько вечеров в неделю вы будете изучать программирование под iOS. Занятия проходят в формате вебинаров и учиться можно в любой стране мира.

В GeekUniversity практикуют проектно-ориентированное обучение. За год вы создадите 4 собственных приложения для iOS:

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

Какие знания вы получите на факультете iOS-разработки?

За год супер-интенсивного обучения ученики усваивают огромный объем знаний:

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

Что вас ждет после обучения?

Как сделать игру на айос. Смотреть фото Как сделать игру на айос. Смотреть картинку Как сделать игру на айос. Картинка про Как сделать игру на айос. Фото Как сделать игру на айос

Выпускники получают сертификат об окончании GeekUniversity, гарантированное трудоустройство и год онлайн-обучения английскому языку в подарок.

Узнайте больше о факультете о факультете iOS-разработки и запишитесь на подготовительные курсы здесь.

Источник

Как два студента сделали игру под iOS и сколько заработали на этом

Ровно год назад мы с другом решили по-быстрому сделать игру под iOS. Что из этого вышло, и сколько нам удалось заработать, я расскажу под катом.

Первые шаги

Вообще мы C++ разработчики и уже раньше пытались сделать кросс-платформенную игру, используя известные нам инструменты — Qt и C++. Тогда мы работали над игрой в жанре Tower Defence в новогоднем сеттинге. Для погружения в атмосферу инди-разработки предлагаю посмотреть пару видео из того времени:


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

Второе дыхание

В какой-то момент мы решили изучить нативные инструменты разработки. А именно SpriteKit на iOS. Я накидал демку на Swift, в которой было 1000 движущихся спрайтов с альфа каналом. Она заняла всего пару десятков строк кода и выдавала 60 fps на iPhone 5! Это был просто восторг! Низкий порог входа и бешеные возможности встроенного движка снова разожгли в нас энтузиазм!

На этот раз мы сформулировали основную цель так: Игра должна быть в AppStore! Она просто не может отправиться ко всем остальным недоделанным проектам на задворки гитхаба! Это означало, что игра должна быть настолько простой, чтобы её нельзя было не сделать. Пора начать доделывать дела!

Мы не могли себе позволить вручную создавать уровни, так как после создания игровой механики энтузиазм мог угаснуть. Поэтому думали сделать раннер или платформер с одним бесконечным уровнем. Как Subway Surfers, Doodle Jump, Nyan Cat или Flappy Bird. Также мы хотели минимизировать количество текста, чтобы не возиться с локализацией.

Вижу цель

Так что мы придумали? Беглое изучение инструментов разработки под iOS показало, что встроенный двумерный физический движок просто огонь! Разработка под него выглядит примерно так:

Можете представить себе эмоции программиста, который до этого два месяца жонглировал указателями?

Разумеется мы решили использовать физику в качестве основного элемента игры. Какую игру с бесконечным уровнем на основе физики можно сделать с мячом? Чеканку мяча!

По задумке, игрок должен управлять ногой футболиста и чеканить (набивать) мяч. Цель игры — начеканить как можно больше. Считаются отскоки от ступни, колена и головы. При этом, обязательным фактором была монетизация. Хоть какая-нибудь! Тут дело даже не в заработке — нужно познакомиться с инструментами.

Сделаем за неделю

Так, цель мы сформулировали достаточно четко. Пора приступать! Мы забили на пары и ушли в отпуска с работы на неделю. За это время мы планировали сделать меню, сцену с игрой, подсчет очков и рекламу. Думаете, получилось?

Получилось! Мы реально успели сделать игру без дизайна и звуков за неделю. На инструментах, которыми. раньше никогда не пользовались (Swift + SpriteKit). Получилось нечто даже более-менее играбельное, правда с заглушками вместо нормальных текстур.

Как сделать игру на айос. Смотреть фото Как сделать игру на айос. Смотреть картинку Как сделать игру на айос. Картинка про Как сделать игру на айос. Фото Как сделать игру на айос
Как сделать игру на айос. Смотреть фото Как сделать игру на айос. Смотреть картинку Как сделать игру на айос. Картинка про Как сделать игру на айос. Фото Как сделать игру на айос
Как сделать игру на айос. Смотреть фото Как сделать игру на айос. Смотреть картинку Как сделать игру на айос. Картинка про Как сделать игру на айос. Фото Как сделать игру на айос

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

Или за месяц

Так, стоп! Художник? Мы что крупная корпорация? Нет, но программисты обычно рисуют не очень. Поэтому было решено отдать это дело на аутсорс. Тем более, что наша неделя на игру подошла к концу.

Мы заказали у знакомой художницы 15 текстур, чтобы все они были в одном стиле, пропорциональны и гармоничны. За деньги. Да, мы инвестировали не только время) Вообще, это был первый опыт работы с фрилансерами. Полезный опыт. Рекомендую.

Постепенно из набросков стал вырисовываться дизайн игры.

Как сделать игру на айос. Смотреть фото Как сделать игру на айос. Смотреть картинку Как сделать игру на айос. Картинка про Как сделать игру на айос. Фото Как сделать игру на айос
Как сделать игру на айос. Смотреть фото Как сделать игру на айос. Смотреть картинку Как сделать игру на айос. Картинка про Как сделать игру на айос. Фото Как сделать игру на айос

Как сделать игру на айос. Смотреть фото Как сделать игру на айос. Смотреть картинку Как сделать игру на айос. Картинка про Как сделать игру на айос. Фото Как сделать игру на айос

Ну или за полгода

План с новым дизайном был такой: просто по одной меняем старые текстуры на новые и вуаля — игра готова. Как бы не так! Все текстуры были немного под другими углами, другого размера, с другими местами стыковки. Это привело к тому, что вся верстка уехала. При этом существенно нарушилась физика ноги и её нужно было отлаживать заново.

Новые текстуры были большего разрешения и при замене в редакторе сцены Xcode постоянно вылетал! библиотеки у Apple, конечно отличные, но IDE мягко говоря могла быть и по стабильнее! Приходилось удалять 10 версию Xcode и ставить 9, чтобы хоть как-то работать с текстурами.

Кстати, на каком-то этапе обнаружился интересный баг с коленом, который мы назвали «Режим кузнечика».

И такие неочевидные проблемы вылезали одна за одной. А релиз все откладывался и откладывался. За следующие несколько месяцев работы по вечерам мы поправили баги, добавили звук и улучшили взаимодействие с пользователем. В итоге игра достигла хоть сколько-то приемлемого уровня и мы решили релизить!

Финишная прямая

Вот у нас готова игра. Что нужно для завершения проекта? Загрузить в AppStore. Всего то. Для этого нужен аккаунт разработчика, политика конфиденциальности, иконки и скриншоты всех размеров, а также описания на языках всех стран, где вы хотите размещаться.

Как сделать игру на айос. Смотреть фото Как сделать игру на айос. Смотреть картинку Как сделать игру на айос. Картинка про Как сделать игру на айос. Фото Как сделать игру на айос

Проверка занимает 2 суток. У нас отклонили 1 раз из-за каких-то законов Китая. Мы просто не стали там релизиться, и через двое суток наступил этот долгожданный момент! Игра в магазине! Мы шли к этому полгода! Мы довели проект до конца!

Таки шо по деньгам?

Схема монетизации в нашей игре была выбрана следующая. В момент, когда игрок теряет мяч, он может посмотреть рекламу и продолжить чеканить не потеряв очки. Так можно сделать только один раз. В техническом плане мы использовали Google Rewarded Video Ads.

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

Как сделать игру на айос. Смотреть фото Как сделать игру на айос. Смотреть картинку Как сделать игру на айос. Картинка про Как сделать игру на айос. Фото Как сделать игру на айос

Как сделать игру на айос. Смотреть фото Как сделать игру на айос. Смотреть картинку Как сделать игру на айос. Картинка про Как сделать игру на айос. Фото Как сделать игру на айос

Что в итоге?

В итоге у нас за плечами есть отличное путешествие от идеи до магазина, рабочее приложение, умение работать с фрилансерами, рекламой и AppStore. А самое главное — мы знаем, что можем доводить проекты до их логического завершения.

Источник

Создание игры для iOS. Начало

Меня зовут Марк и я ученик Школы программистов. В этом блоге я расскажу, как создаю полноценную iOS-игру. До сих пор я работал над различными проектами, набивал шишки и получал бесценный опыт, но приложения, прошедшего путь от самого начала и до логического завершения, ещё не делал. Так что в этом и последующих постах я поделюсь своим первым опытом разработки полноценного продукта. Итак, поехали!

Немного об идее.

Вы когда-нибудь играли в Цивилизацию? Скорее всего да, но если вдруг не довелось, попробуйте, это одна из тех немногих игр, в которые поиграть разок-другой абсолютно не зазорно. Моя идея в том, чтобы переосмыслить Цивилизацию и адаптировать под мобильные устройства. Играть в неё можно будет как с ИИ, так и с другими пользователями.

Как сделать игру на айос. Смотреть фото Как сделать игру на айос. Смотреть картинку Как сделать игру на айос. Картинка про Как сделать игру на айос. Фото Как сделать игру на айос

Что необходимо.

Как сделать игру на айос. Смотреть фото Как сделать игру на айос. Смотреть картинку Как сделать игру на айос. Картинка про Как сделать игру на айос. Фото Как сделать игру на айос

3. Нам нужен инструмент, в котором мы будем создавать облик наших объектов, в качестве графического редактора подойдут Sketch, Adobe Illustrator, Photoshop, Gimp.

4. Желательно (но не обязательно) иметь устройство для тестирования.

Первые шаги.

Итак, мы разобрались с тем, что хотим создать, обзавелись всем необходимым и уже готовы ринуться в бой. Так давайте творить! Начнем с создания нового проекта в Xcode.

1. Открываем Xcode, нажимаем создать новый проект, выбираем платформу iOS и тип Game.

Как сделать игру на айос. Смотреть фото Как сделать игру на айос. Смотреть картинку Как сделать игру на айос. Картинка про Как сделать игру на айос. Фото Как сделать игру на айос

Как сделать игру на айос. Смотреть фото Как сделать игру на айос. Смотреть картинку Как сделать игру на айос. Картинка про Как сделать игру на айос. Фото Как сделать игру на айос

Как сделать игру на айос. Смотреть фото Как сделать игру на айос. Смотреть картинку Как сделать игру на айос. Картинка про Как сделать игру на айос. Фото Как сделать игру на айос

4. В открывшемся проекте в разделе Deployment Info выбираем минимальную версию iOS, на которой можно будет использовать наше приложение, ориентацию экрана, которая будет поддерживаться в приложении. В данном случае iOS 8 и только Portrait orientation.

Как сделать игру на айос. Смотреть фото Как сделать игру на айос. Смотреть картинку Как сделать игру на айос. Картинка про Как сделать игру на айос. Фото Как сделать игру на айос

Как сделать игру на айос. Смотреть фото Как сделать игру на айос. Смотреть картинку Как сделать игру на айос. Картинка про Как сделать игру на айос. Фото Как сделать игру на айос

Открыв только что созданный файл, для начала добавим сокращений. Во-первых, это повышает скорость написания кода, а во-вторых, сильно сокращают длину строчек, тем самым повышается читаемость кода, конечно, при том условии, что строчек не слишком много и они интуитивно понятны. Для этого импортируем несколько полезных библиотек после строчки import Foundation:

Теперь наш файл должен выглядеть примерно так:

Как сделать игру на айос. Смотреть фото Как сделать игру на айос. Смотреть картинку Как сделать игру на айос. Картинка про Как сделать игру на айос. Фото Как сделать игру на айос

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

Давайте наведем порядок в нашем проекте.

Как сделать игру на айос. Смотреть фото Как сделать игру на айос. Смотреть картинку Как сделать игру на айос. Картинка про Как сделать игру на айос. Фото Как сделать игру на айос

Аналогичную процедуру проделываем с файлом GameViewController.swift

2) Удаляем файлы Actions.sks и GameScene.sks

3) Настроим иерархию, создадим папки Main, Design, Scenes.

В папку Main поместим файлы AppDelegate.swift, Info.plist, Main.storyboard, LaunchScreen.storyboard и GameViewController.swift
В папку Design поместим файл Assets.xcassets
А в папку Scenes GameScene.swift

После проделанных процедур наш проект должен выглядеть примерно вот так:

Как сделать игру на айос. Смотреть фото Как сделать игру на айос. Смотреть картинку Как сделать игру на айос. Картинка про Как сделать игру на айос. Фото Как сделать игру на айос

Ну что ж, все подготовительные работы проделаны, не забывайте сохранять ваши проекты! Следующая часть

Источник

Dev Story Коррупции.Нет. Опыт создания первой игры для iOS

Как сделать игру на айос. Смотреть фото Как сделать игру на айос. Смотреть картинку Как сделать игру на айос. Картинка про Как сделать игру на айос. Фото Как сделать игру на айос

Это мой второй опыт создания приложения. О первом я подробно рассказывал в статье об AskMe – там речь шла о привлечении инвестиций, подбора разработчиков и пр. К сожалению первый блин вышел комом.

Как сделать игру на айос. Смотреть фото Как сделать игру на айос. Смотреть картинку Как сделать игру на айос. Картинка про Как сделать игру на айос. Фото Как сделать игру на айос

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

Как сделать игру на айос. Смотреть фото Как сделать игру на айос. Смотреть картинку Как сделать игру на айос. Картинка про Как сделать игру на айос. Фото Как сделать игру на айос

Обучение

В общем решение было принято и в январе 2016 года я начал работу. По специальности я прикладной информатик, но по факту кроме самых базовых навыков работы с Pascal, из университета я ничего так и не вынес, а дело было лет пять-шесть назад. У меня, так же был небольшой опыт работы с HTML и CSS, при создании простеньких сайтов который впрочем не сильно помогал в деле создания приложений. Поэтому я начал с самых азов. С древнего и почти начисто забытого Pascal. Скачал редактор «Free Pascal» http://freepascal.ru/ нашел учебник, начал с простеньких программок по сложению и вычитанию. В общей сложности ушло порядка двух недель занятий, по два – три часа в день, чтобы освежить память.

Далее план предполагал углубленное изучение Pascal, затем Cи и в конечном итоге Objective-C.

Как сделать игру на айос. Смотреть фото Как сделать игру на айос. Смотреть картинку Как сделать игру на айос. Картинка про Как сделать игру на айос. Фото Как сделать игру на айос

Углубленное изучение Pascal предполагало больше практики, для чего я нашел задачник Абрамяна по Pascal с 1000 задач (PDF).

Так как начать писать приложения хотелось, как можно скорей, я не дожидаясь окончания первого этапа обучения, параллельно с решением задач на Pascal, начал изучать Cи, по книги «Язык программирования Си» — Брайана Кернигана и Денниса Ритчи (PDF). Здесь отдельно скажу, что несмотря на то, что эта книга есть и на Русском языке, я изучал его на языке оригинала, так как в целом не плохо знаю английский, и это на мой взгляд достаточно важно для любого человека занимающегося программированием. Обучающих материалов и просто материалов по тому или иному языку программирования на английском, как правило, значительно больше чем на Русском. Работа с AppStore, загрузка приложения, условия использования и прочее, все это тоже в основном на английском. Так что можно сказать что английский на уровне чтения технической литературы это обязательный навык для программиста.

Для программирования на Cи у меня был Mac еще с первого проекта. Задачки для Cи я решал в Xcode. Для того чтобы лучше усвоить разницу в синтаксисе Pascal и Cи я начал решать задачки из того же задачника Абрамяна, но уже на Cи. После двух недель ежедневных 4-5 часовых занятий я смог решить порядка 300 задач на Pascal и вдвое меньше на Cи а так же пройти порядка 100 страниц книги по Си. В это же время решил подключить к процессу обучения англоязычный сервис – Tree House.

Как сделать игру на айос. Смотреть фото Как сделать игру на айос. Смотреть картинку Как сделать игру на айос. Картинка про Как сделать игру на айос. Фото Как сделать игру на айос

Все видео очень наглядны, интересны, постоянно обновляются и подробно разжевывают все ключевые моменты будь то сама суть Объектно-Ориентированного программирования или принципы работы в Xcode. Я естественно выбрал обучающие материалы по Cи и по созданию приложений IOS с Objective-C.

Таким образом мое обучение напоминало попытку продвигаться сразу по все фронтам одновременно. Я практиковался в решении задач на Pascal, чтобы как можно прочнее, как мне казалось, заложить основы программирования, изучал Cи, для того чтобы лучше понимать Objective-C и наконец изучал Objective-C, чтобы как можно скорей начать писать под IOS.

Так прошел еще один месяц каждодневных занятий в среднем по 4-5 часов в день. С одной стороны возможно логичней было бы двигаться поэтапно, скажем, вначале разобраться с Pascal, затем с Cи и далее приступить к Objective-C, но по факту, именно попытка охватить все, позволила в конечном итоге сэкономить кучу времени, так как я все больше стал уделять внимание не решению задач на Pascal и Cи а непосредственно созданию приложений из программы обучения Tree House. Это было куда интересней и по сути показывало, что задачи из задачника Абрамяна а так же материалы из Книги Кернигана и Ритчи по Си – хороши для понимания основ, но в целом довольно далеки от реального процесса создания приложений. В итоге к концу третьего месяца моего обучения я совсем перестал практиковать Pascal и Cи. Вместо этого я сосредоточился на практических материалах Tree House по Objeсtive-C и созданию приложений в Xcode.

Создание игры. Идея

После создания нескольких простеньких приложений из обучающей программы я решил, что наконец готов заняться чем-то более интересным. Открыв свой список идей, который я периодически пополняю когда на ум приходит что-то потенциально интересное, я остановил свой взгляд на идеи создания игры по теме «Борьбы с Коррупцией». Смысл идеи в том, что в качестве врагов выступают коррупционеры, их нужно нейтрализовать и тогда игровой мир становится лучше. Тут же и подтекст вроде того, что коррупция это плохо и что чем ее меньше тем лучше окружение. Учитывая, что тема актуальная для России, а приложений с подобной идеей мне найти не удалось я остановился на ней и стал думать, как лучше реализовать.

Как сделать игру на айос. Смотреть фото Как сделать игру на айос. Смотреть картинку Как сделать игру на айос. Картинка про Как сделать игру на айос. Фото Как сделать игру на айос

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

После того как концепция была утверждена и бегло описана, надо было понять, как создаются игры. Погуглив видео я сразу наткнулся на то, в котором рассказывали, как создать игру на подобие Flappy Bird (Youtube).Тут возник важный вопрос. Не секрет что Apple в 2014 году выпустил новый язык программирования – Swift, который впитал в себя много хорошего от Objective-C и стал его логическим продолжением.

Видео на которое я наткнулся рассказывало о создании Flappy Bird именно на Swift, а найти такое же простое и понятное для Objective-C я не смог. Не долго думая я решил, что все равно будущее за Swift и лучше я не буду отставать, тем более что на том же Tree House были отличные материалы по его изучению. В итоге я взял паузу чтобы изучить Swift, понять синтаксис и основные отличия от Objective-C. Прошла еще неделя занятий в среднем по 8 часов в день. Я бегло прошелся по основным обучающим материалам для Swift, и решил, что наконец готов осилить видео по созданию Flappy Bird. За пару дней я смог создать вот это:

Как сделать игру на айос. Смотреть фото Как сделать игру на айос. Смотреть картинку Как сделать игру на айос. Картинка про Как сделать игру на айос. Фото Как сделать игру на айос

Получив общее представление о работе с движком Sprite Kit, я наконец смог перейти к работе над своим приложением.

Как сделать игру на айос. Смотреть фото Как сделать игру на айос. Смотреть картинку Как сделать игру на айос. Картинка про Как сделать игру на айос. Фото Как сделать игру на айос

Концепция

Я думаю, что процентов 70% всех возникших у меня вопросов я смог разрешить с его помощью. К документации Apple я так же обращался но довольно редко. Может быть в 10% случаев максимум, и то когда других вариантов не было.

После очередной напряженной недели, во время которой я отдавал программированию почти все свое время – по 8-10 часов в день я смог сотворить вот это:

Как сделать игру на айос. Смотреть фото Как сделать игру на айос. Смотреть картинку Как сделать игру на айос. Картинка про Как сделать игру на айос. Фото Как сделать игру на айос

Прототип

Помимо перечисленного на сайте существует большой выбор всевозможных анимаций, текстур, звуков и прочих вещей чрезвычайно необходимых при создании приложений. Цены, на мой взгляд, так же весьма приемлемы. Например подобранный мной набор анимаций главного героя, помимо бонусов в виде различных объектов (монетки, алмазы и прочее), включает в себя 8 анимаций таких как – стреляет, бежит, прыгает, умирает и прочее.

Как сделать игру на айос. Смотреть фото Как сделать игру на айос. Смотреть картинку Как сделать игру на айос. Картинка про Как сделать игру на айос. Фото Как сделать игру на айос

Такой набор я приобрел за 7$. Единственный момент заключается в том, что на приобретенные у них товары действуют разные лицензии. Одни например, разрешают использовать продукт только в одном изделие для неограниченного бесплатного распространения, другие разрешают его перепродажу третьим лицам у которых цель – такое же неограниченное бесплатное распространение, третьи, как для музыки например, разрешают распространение только ограниченному количеству слушателей и тд. Стоимость этих лицензий разная и зачастую может отличаться в 4-5 раз.

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

Как сделать игру на айос. Смотреть фото Как сделать игру на айос. Смотреть картинку Как сделать игру на айос. Картинка про Как сделать игру на айос. Фото Как сделать игру на айос

Это результат моей работы в фотошоп созданный из пары десятков различных объектов – забор, асфальт, ямы, кучи мусора и тд. В целом на его создание ушло несколько дней. В дальнейшем я заглядывал на Envato раз 10, каждый раз докупая что-то необходимое.

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

Как сделать игру на айос. Смотреть фото Как сделать игру на айос. Смотреть картинку Как сделать игру на айос. Картинка про Как сделать игру на айос. Фото Как сделать игру на айос

Как сделать игру на айос. Смотреть фото Как сделать игру на айос. Смотреть картинку Как сделать игру на айос. Картинка про Как сделать игру на айос. Фото Как сделать игру на айос

Доработка игры

Как сделать игру на айос. Смотреть фото Как сделать игру на айос. Смотреть картинку Как сделать игру на айос. Картинка про Как сделать игру на айос. Фото Как сделать игру на айос

Спрайты из его коллекции вместе с набором анимаций стоят в среднем 15$. Самое главное, что в архиве со спрайтом идут файлы для программы Spriter.

Как сделать игру на айос. Смотреть фото Как сделать игру на айос. Смотреть картинку Как сделать игру на айос. Картинка про Как сделать игру на айос. Фото Как сделать игру на айос

Открыв Спрайт в этой программе и немного в ней разобравшись (очень проста в освоении), можно самому делать абсолютно любые анимации для своих персонажей с разной раскадровкой. В общем я подумал и купил всех персонажей на Envato, после чего своими силами обработал, добавил необходимые анимации и загрузил в приложение. Работа с текстурами надо сказать чрезвычайно утомительна и монотонна. Мне было необходимо выгрузить созданную анимацию из программы Spriter, затем обработать в фотошоп (развернуть, выставить размеры), далее сжать, переименовать, сделать картинки 1x, 2х, 3х. На обработку всех анимаций у меня ушло наверное с месяц, не меньше. Целый месяц монотонной и однообразной работы, благо я смог подключить к этой работе помощника. Но зато я разобрался во всем процессе, сделал себе такие анимации которые хотел переделывая их столько раз, сколько было нужно.

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

Как сделать игру на айос. Смотреть фото Как сделать игру на айос. Смотреть картинку Как сделать игру на айос. Картинка про Как сделать игру на айос. Фото Как сделать игру на айос

Во первых несмотря на то, что я сжал свои png текстуры с помощь этого онлайн сервиса: http://compresspng.com/ru/, это не привело к тому, что во время работы приложения они стали занимать меньше оперативки. Самое время для меня было узнать, что размер картинки не равен размеру требующейся для нее оперативной памяти.

Во вторых я открыл чудесный мир утечек памяти, инструментов Xcode для их отслеживания и все «прелести» «strong reference cycle». После того как я прогнал свою игру через инструменты то обнаружил порядка 3-х с половиной тысяч утечек.

В третьих я понял, что стандартное, для моей игры, разрешение текстуры для персонажа в 180×180 по сути дела избыточно велико и я вполне могу переделать все анимации на разрешение 117×117 без какого-либо ухудшения качества. Интересно что на момент создания анимаций я переживал, что не оставил исходников в разрешении 360×360. Так как размер картинки 2х у меня был 180х180 соответственно картинка 3х в моем понимании должна была быть 360х360, но по незнанию я их не сделал, и как оказалось слава Богу, так как в конечном итоге они не понадобились.

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

В итоге я был вынужден полностью переделать созданные мной атласы анимаций (как оказалось не в последний раз), для того чтобы снизить потребление оперативной памяти. Сжать и обрезать все картинки уменьшив их в среднем на 30%. Отказаться за ненадобностью от картинок 3х ограничившись лишь 1х и 2х. Провести большую работу по оптимизации и устранению утечек памяти и пр. Плюсом ко всему требовалась большая работа по завершению самого игрового процесса, так как сначала все кажется готовым и нужно только последние штрихи добавить, но на добавление этих штрихов уходит масса времени. В общем и целом это потребовало еще более месяца, правда уже не очень плотной работы в среднем по 4-5 часов в день, так как возможности всецело заниматься проектом не было. И к началу ноября все было более-менее готово.

Загрузка на App Store

Далее загрузка на App Store. Здесь, благодаря предыдущем опыту, никаких вопросов не было. За день я сделал скриншоты, простенькое описание, первую пришедшею в голову иконку (кстати как только у вас будет готовая иконка, ее лучше прогнать через этот сервис: https://makeappicon.com/, вы загружаете туда вашу иконку и он выдает вам ее обратно во всех необходимых размерах и разрешениях), и ключевые слова (их я подбирал с помощью сервиса https://sensortower.com/, сайт способен выдать вам тонны полезной информации о вашем либо о любом другом приложении, правда подписка стоит не дешево).

И вот приложение доступно в AppStore. Ура, Ура, но не совсем.

Как сделать игру на айос. Смотреть фото Как сделать игру на айос. Смотреть картинку Как сделать игру на айос. Картинка про Как сделать игру на айос. Фото Как сделать игру на айос

Ошибки, жуткие тормоза, пропавшие картинки, вылеты и пр. Вот что ждало меня при тестировании на разных Iphone-ах с разными версиями IOS. Тут же выяснилось, что несмотря на то что игра нормально работает на IOS 9, на 10-ки она работает с жуткими тормозами, и то и дело все время пропадает звук. Я был в «восторге» от такого подарка который несла в себе 10-ка, но деваться было некуда и я продолжил поиск и устранение ошибок. Мне в очередной раз пришлось полностью переделать систему размещения всех текстур в приложении, полностью переделать систему воспроизведения всех звуков и исправить немало дополнительных косяков. Особо теплые впечатления оставило необходимое, при работе с обновленным XCode, конвертирование кода со Swift 2.0 на Swift 2.3. Короче говоря я в очередной раз потратил больше месяца на доработку всего и только 13-го декабря, я смог загрузить более-менее рабочую версию. Хотя понятно, что это не последнее обновление.

Игру можно скачать и посмотреть в App Store бесплатно.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *