Pull to refresh
5
0
Дмитрий Овчинников @texus

Service Desk Manager

Send message

Создание игры на движке Sprite Kit (Часть 1)

Reading time71 min
Views157K
С появлением iOS 7 мир узрел новый игровой движок от Apple — SpriteKit. В свете того, что он появился совсем недавно об этом движке еще мало что написано, конечно в сети можно найти несколько tutorial -ов по нему но в основном все они на Английском языке. И по этому я задалась целью написать подробный Туториал об этом замечательном движке.

Итак, что же такое SpriteKit?


SpriteKit — это 2D движок, оптимизированный для создание игр для устройств от компании Apple. В его основе лежит популярный физический движок Box 2D. Поскольку разработчики создавали его заточенным специально для устройств Apple он существенно выигрывает в скорости у остальных движков.
В SpriteKit всю роль по оптимизации и рисованию графики берет на себя OpenGl, это все происходит на низком уровне и по этому вы можете сосредоточить свои усилия на решении проблем более высокого уровня и создание больших 2D игр. Для создание игр на SpriteKit используется язык Objective-c, но с выходом iOS 8 и нового языка Swift, игры также можно создавать и на нем.
От себя хотела бы добавить, что в некотором роде на Swift писать даже легче, так что если вы только начинаете и думаете какой язык выбрать то советую выбрать Swift.

Ниже, я предоставила видео с демонстрацией игрового процесса SpriteKit, если вам стало интересно то милости прошу.



Подробности
Total votes 39: ↑36 and ↓3+33
Comments15

Создание приложения ToDo с помощью Realm и Swift

Reading time17 min
Views63K
С развитием смартфонов в последние годы было разработано много инструментов, чтобы упростить жизнь разработчикам, обеспечив их максимальной производительностью и качеством. Занимать лидирующие позиций в App Store сегодня не простое задание. А научить ваше приложение масштабироваться еще сложнее. Когда приложением пользуются миллионы пользователей, вы должны следить за приложением и при необходимости выполнять все операции моментально. Поэтому одной из проблем, с которой сталкиваются многие разработчики, является Database. Она действительно вызывает сильную головную боль для каждого из нас, и я думаю, что сегодня у вас есть только два варианта: SQLite и Core Data. Я был большим поклонником Core Data и его способностью работать с записями и сохраняющимися данными, но я понял, что впустую трачу много времени, работая с ним при разработке приложений. Недавно, я столкнулся с Realm, новой лучшей заменой SQLite и Core Data.

Realm and Swift
Читать дальше →
Total votes 14: ↑13 and ↓1+12
Comments18

Навигация между экранами с использованием xib файлов

Reading time4 min
Views12K
При чтении различных исходников сталкиваюсь с проектами, реализованными с использованием xib файлов. Мне самому больше нравится использование xib, вместо storyboard (не холивара ради пишу, storyboard тоже хорош), однако часто изучение навигации между экранами превращается в пытку. И поэтому хотелось бы поделится собственным опытом.

Читать дальше →
Total votes 11: ↑9 and ↓2+7
Comments13

Подготовка приложения для iOS 9

Reading time3 min
Views30K
9 сентября выйдет новый релиз iOS и OS X. Времени остается все меньше, и многие разработчики уже оптимизировали свои приложения для работы на новых ОС. Тем, кто этого ещё не сделал, предлагаю коротко рассмотреть, что необходимо для поддержки iOS 9.


Читать дальше →
Total votes 17: ↑15 and ↓2+13
Comments20

Немного о реализации головоломки «Кубики сома» (Swift & SceneKit)

Reading time4 min
Views9.4K
Около года назад я заметил, что в мобильных магазинах нет головоломки Пита Хейна «Soma Cubes», придуманной еще в 1933 году. Желание попробовать написать игру под iOS давно сверлило воспаленный мозг и я наконец решился, тем более что, дизайна особо не требовалось (нарисовать кубик в Blender не в счет). В головоломке 7 элементов из кубиков, из которых собираются другие разнообразные фигуры (Википедия).

Требования, сразу предъявленные к игре, сводились к двум пунктам:
1. Не использовать в разработке сторонние фреймворки.
2. Для управления фигурами и сценой не должны использоваться кнопки — только Recognizers.

По п.2 я подразумеваю, что сценарий, когда надо выделить объект и потом нажимать на кнопки управления, не подходит.
Подробности
Total votes 15: ↑11 and ↓4+7
Comments2

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

Reading time10 min
Views32K
Я не претендую на истину в последней инстанции, но и в разработке кое-чего все-таки смыслю. Посему решил поделиться с вами некоторыми результатами проделанной работы, поделиться некой компиляцией знания о навигационных контроллерах, так сказать. Может это и поможет какой-либо из бренных оболочек, способных именоваться далее моими читателями, создать более совершенный программный продукт.

Предметом исследования будет навигационный контроллер, а именно класс UINavigationController из стандартного фреймворка UIKit для работы с интерфейсом, который нам любезно предоставляет Apple.

Вкратце о...


«Контроллер» в данном случае — некий класс, инкапсулирующий логику, согласно концепции (еще называемой паттерном) MVC.





Навигационный контроллер (UINavigationController) — класс высокого уровня абстракции, содержит в себе иерархию других контроллеров представлений, между представлениями(вьюшками/UIView) которых способен осуществлять навигацию (в чем его, собственно, основная задача и состоит!), передавая в нужный момент управление соответствующему контроллеру. Кроме этого — композиционно содержит в себе навигационную панель (UINavigationBar), которую отображает на экране, и соответствующим образом меняет содержимое данной панели: в зависимости от активного контроллера.
Читать дальше →
Total votes 8: ↑8 and ↓0+8
Comments13

Как побеждать в компьютерных играх, часть II: конкретные примеры

Reading time6 min
Views54K


Напоминаю, есть мужик Дэвид Сирлин, который известен чемпионством по Street Fighter и в GameDev. Он написал книгу про то, как побеждать и готовиться к турнирам. Первая вступительная часть тут. Ниже — выжимка части II и мои комментарии.

Вот мы и дошли до настоящего мяса. Это разборы игровых ситуаций и конкретные примеры того, как думает оппонент. Например:
Если у тебя есть какой-то дурацкий шаблон действий, который убивает соперника, не надо задумываться над чем-то ещё. У такой техники ещё есть дополнительный бонус — она доводит людей до белого каления. Если кого-то бьют с помощью одной и той же повторяющейся тактики, то они обычно выходят из себя и срываются, в результате играют еще хуже, еще чаще ошибаются, становятся все злее, и так далее. Порочный круг.
Читать дальше →
Total votes 44: ↑37 and ↓7+30
Comments28

Python на Хабре

Reading time7 min
Views451K
Некоторое время назад, в силу определенных причин, мне пришла в голову мысль о том, чтобы начать изучать какой-нибудь новый язык программирования. В качестве альтернатив для этого начинания я определил два языка: Java и Python. После продолжительного метания между ними и сопутствующих нытья и долбежки головой о стену (у меня с новыми языками всегда так — сомнения, раздумья, проблема выбора и т.д.), я все-таки остановился на Python. Окей, выбор сделан. Что дальше? А дальше я стал искать материал для изучения…
Читать дальше →
Total votes 182: ↑162 and ↓20+142
Comments65

Борьба с 2D-физикой в Unity на примере бесконечной игры

Reading time9 min
Views83K


Мой странный творческий путь занес меня в разработку игр. Благодаря отличной студенческой программе от IT-компании, название которой СостоИт из одной Греческой МАленькой буквы, сотрудничающей с нашим университетом, удалось собрать команду, родить документацию и наладить Agile разработку игры под присмотром высококлассного QA-инженера (здравствуйте, Анна!)

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

Наша игра использовала физический движок неожиданным для него способом, что породило множество проблем с производительностью на мобильных платформах. В этой статье, на примере нашей игры, описана моя борьба с физическим движком и все те особенности его работы, которые были замечены на пути к жизнеспособной бета-версии.
Читать дальше →
Total votes 56: ↑49 and ↓7+42
Comments32

58 признаков хорошего интерфейса

Reading time16 min
Views380K
У хорошего интерфейса пользователя высокая конверсия и его просто использовать. То есть, он хорош и для бизнеса, и для использующих его людей. Вот список опробованных нами идей.

1 Один столбец вместо нескольких


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

image
Читать дальше →
Total votes 226: ↑182 and ↓44+138
Comments102

01 Ссылки для UX-специалистов

Reading time3 min
Views93K
В этой подборке я хочу поделиться информационными ресурсами, где можно почерпать новые знания, отследить новые методы, техники и аналитку, а также улучшить свои навыки в области UX. Полезно будет не только специалистам из области юзабилити, а также всем кто имеет отношение к разработке веб-продуктов.


Читать дальше →
Total votes 60: ↑57 and ↓3+54
Comments13

Играй на победу: как побеждать в играх и что нужно знать о профессиональных игроках в GameDev [часть 1]

Reading time6 min
Views127K


Давным-давно мы с друзьями играли в Starcraft по диалапному модему. Я часто проигрывал, пока не прочитал на одной из BBS фразу, которая всё поменяла. Принцип очень простой: в стратегиях реального времени выигрывает тот, кто постоянно атакует. Нужно было научиться мыслить категориями постоянного создания угроз.

К чему я это. Есть такой мужик — Дэвид Сирлин. Киберспортсмен, чемпион по Street Fighter, гейм-дизайнер, настольщик, киберспортивный тренер. У него есть целая теория на тему того, как тренироваться и играть так, чтобы выигрывать. Универсальная, применима ко всем играм. Ниже — основные тезисы первой части и мои комментарии. Прочитать про основные вещи из книги будет интересно и с точки зрения GameDev (в особенности — балансировки), и просто по жизни.
Читать дальше →
Total votes 76: ↑72 and ↓4+68
Comments57

Решебник по геймификации. Задача #1: интернет проект с UGC контентом

Reading time5 min
Views11K
image

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

Постановка задачи


Дано:


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

Найти:


Сами участники должны публиковать контент, оценивать и модерировать контент, выложенный другими пользователями.
Читать дальше →
Total votes 37: ↑33 and ↓4+29
Comments8

Игрофикация – свежий взгляд на мотивацию пользователей?

Reading time7 min
Views50K
Игрофикация сейчас является крайне популярной темой. В этом топике мы постараемся разобраться, что же это такое, а также убедить себя и окружающих в том, что игрофикация — всего лишь модное слово.
Поехали!
Total votes 50: ↑38 and ↓12+26
Comments32

Игрофикация в реальном мире. За и против

Reading time7 min
Views22K
В предыдущей статье мы поговорили об игрофикации и, в частности, пришли к мысли, что, несмотря на то, что внедрение игровых элементов может стимулировать активность пользователей, популярность этой дисциплины все-таки носит «трендовый» характер. На самом же деле успешно внедрить игровые элементы в реальном проекте и получить от этого ожидаемую выгоду совсем не так просто.



Не все представители хабрасообщества согласились с нашими выводами (и это здорово, на самом деле!), так что мы решили развить свою мысль и продемонстрировать плюсы и минусы игрофикации на примерах из реальной «корпоративной» жизни.
Вперед!
Total votes 41: ↑31 and ↓10+21
Comments18

Геймификация в деле

Reading time9 min
Views45K
image
О чем все это

В последнее время о геймификации говорят много. Рассказывают о сути технологии и истории возникновения, описывают механики, приводят в пример Foursquare, собирают статистику и проводят опросы. Теории в сети достаточно, а вот качественных примеров применения геймификации в бизнесе мало. Данная статья ставит перед собой цель показать на примере LiveTex, каким образом можно органично вписать инструментарий геймификации в бизнес-процессы компании.
Читать дальше →
Total votes 47: ↑39 and ↓8+31
Comments25

Реальный опыт внедрения системы геймификации в агентстве интернет-маркетинга

Reading time8 min
Views47K
Геймификация становится всё более и более популярным явлением. В этом посте я расскажу вам, как была реализована система геймификации в агентстве интернет-маркетинга Netpeak несколько лет назад, и во что выросла эта система к текущему моменту.



Сначала очень кратко о компании, в которой внедрялась система: в Netpeak работают около 110 человек. Агентство сфокусированно на SEO и PPC. Им скоро будет 8 лет, два из которых они работают над системой геймификации, о чём и будет идти речь далее в статье.

Читать дальше →
Total votes 36: ↑32 and ↓4+28
Comments47

Ручное обновление базы данных часовых поясов в старых дистрибутивах Линукс

Reading time2 min
Views27K
Все может быть, что данная заметка пригодится тем суркам-администраторам, которые до сих пор (о, ужас!) не перевели системные часы своих серверов, позволив умным машинам установить зимнее время. Да, конечно, мы-то с Вами к таким не относимся и вовремя пропатчили свою любимую ОС, под которой крутится успешно не один сайт.

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

Обновим на них базу данных временных поясов вручную.
Это несложно и именно об этом пойдет речь в этой заметке.

Читать дальше →
Total votes 25: ↑20 and ↓5+15
Comments34

Все самые знаменитые видеоматериалы со Стивом Джобсом на русском языке

Reading time3 min
Views40K
Привет, Хабр! 24 февраля 2013 года Стиву Джобсу исполнилось бы 58 лет, и все поклонники помнят об этом. По случаю дня рождения этого легендарного человека я решил сделать подборку видеоматериал с его участием — это интересно, для многих познавательно, а некоторые смогут еще чему-то обучиться. Возможно, некоторые материалы уже встречались на хабре, но я считаю в этом топике собраны все самые знаменитые видео и все они на русском языке.

A Tribute to Steve Jobs


Наследие, которое Стив Джобс подарил нашему миру. Потрясающее видео, содержащие в себе нарезку из презентаций всех инновационных продуктов компании Apple. Последняя минута для меня самая впечатлительная — реакция публики на первый Mac. Такое ощущение, что Стив показал людям будущее. Овации не заканчиваются…

Это видео нельзя встроить, поэтому при желании посмотреть придется перейти по ссылке

23 минуты 1980 года со Стивом Джобсом


В это время первым массовым персональным компьютером, выпускавшимся миллионами экземпляров, стал компьютер Apple II. В Apple работают над новыми продуктами. Даже одна аналогия из этого видео имеет глубокий смысл: сравнивая потребление калорий различных животных и человека для преодоления определенной дистанции, человек занимает далеко от первого место, но на велосипеде он тратит в два раза меньше энергии. В этом основное преимущество человека, и для Apple задача сделать «велосипед для мозга».


Читать дальше →
Total votes 61: ↑30 and ↓31-1
Comments9

Музей компьютеров в Bletchley Park

Reading time5 min
Views8.9K
Давно хотел написать про свой визит в Bletchley Park, который был подарен мне моей девушкой на день рождения. Финальный толчок был дан недавним постом, однако в отличии от begoon, я почти не видел самого парка, зато немало времени провел в компьютерном музее The National Museum of Computing, располагающемся в одном из его зданий, о котором и хочу рассказать в этом пятничном посте.

Осторожно, под катом прячется траффик!



Добро пожаловать в удивительный мир старого железа
Total votes 66: ↑66 and ↓0+66
Comments20

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Date of birth
Registered
Activity