Архив автора: Roman

SpriteKit — Автослалом (окончание) — Часть 16

11scr

Почему на скрине нарисован воздушный шар и вертолет робинсон я расскажу в конце статьи. А пока продолжим писать Автослалом. Это пародия на древнюю игру Электроника ИМ-23. В реализации нет ничего сложного, за исключением написания кастомного SKAction (см. предыдущую часть). Сегодня мы доделаем игру. Итак все по порядку:
Читать далее

SpriteKit — Автослалом (начало) — Часть 15

Очень долго придумывал пример по SpriteKit, рассматривал темы космических кораблей, вертолетов и воздушных шаров, но таких примеров в сети много и повторяться не хочется. Тут вспомнилась древняя игра Электроника Автослалом:
autoslalom
Внизу находится автомобиль, который может занимать одну из трех позиций — слева,в центре и справа. На автомобиль сверху надвигаются барьеры. Игрок должен перемещать автомобиль, чтобы избежать столкновения с препятствиями. За каждый пройденный барьер +1 балл. Чем больше очков, тем выше скорость. В оригинале есть два вида сложности и три жизни, у нас этого не будет. И само собой сделаем все красивее, чем в оригинале. Читать далее

Как я на хакатон Сбербанка ходил

Привет! Эти выходные я провел на хакатоне, организованном Сбербанком и apps4all. Вот ссылка http://sber.apps4all.ru. Хочу рассказать о своих впечатлениях. Если кто не знает, хакатон — это разновидность мероприятий спортивного программирования. Участникам надо за определенное короткое время создать работающее приложение или работающий прототип. Так было и с этим хакатоном.
IMG_0365
Проводился он в DI TELEGRAPH, в центральном телеграфе, на углу Газетного и Тверской, в самом центре. Читать далее

SpriteKit — Имитация физики — Столкновения и контакты — Часть 13

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

SpriteKit — Имитация физики — Настройка свойств — Часть 12

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

SpriteKit — Имитация физики — Часть 11

Моделирование физики в Sprite Kit осуществляется путем добавления физических тел (SKPhysicsBody) к сцене. Физическое тело моделирует физику для спрайта (дерева спрайтов) к которому оно подключено. Тело использует позицию и ориентацию спрайта. Каждое физическое тело имеет ряд характеристик, которые определяют, как происходит моделирование физики в нем. К ним относятся такие свойства физического объекта как, например, его масса или плотность или скорость. Эти характеристики определяют, как тело движется, как на него влияют силы в симуляции, и как оно реагирует на столкновения с другими телами. Каждый раз, когда сцена расчитывает новый кадр анимации, она имитирует эффекты сил и столкновений спрайтов с физтелами. SpriteKit вычисляет окончательную позицию, ориентацию и скорость для каждого физического тела. Затем, сцена обновляет положение каждого соответствующего спрайта. Читать далее

SpriteKit — Продолжаем писать игру Happy Airjet — Часть 10

Продолжим писать лайтовую версию Happy Airjet. В двух предыдущих частях в проект добавили фон с небольшой анимацией, летящие рандомно облака и Score. Сейчас добавим самолет, обработаем тап по экрану и займемся физикой — чтобы самолет падал вниз и сталкивался с облаками. Читать далее

SpriteKit — Продолжаем писать игру Happy Airjet — Часть 9

В прошлой части сделали самое простое. Теперь сделаем плывущие облака. Облака создаются «в столбик», случайным образом выбирается количество облаков в столбике — либо 1, либо 2. Если выпало создание двух облаков, первое встает на случайную высоту, а второе на определенный отступ от первого. Также каждое облако имеет 3 различных формы, которые тоже выбираются случайным образом. Весь этот «столбик» создается за границей экрана, а потом получает анимацию и плывет в другой конец экрана. Когда облако становится невидимым на другом конце экрана, мы его «убиваем». Также каждому сгенерированному облаку мы задаем SKPhysicsBody, это для отлавливания столкновений с самолетом. Вроде понятно написал, попробую изобразить для визуалов. Читать далее

SKScene — Построение сцены, пишем игру Happy Airjet — Часть 8

Итак, вы уже многое узнали о работе сцен. Подитожим главные факты:
— Сцены (объекты SKScene) используются для отображения вашего контента в SKView.
— Контент сцены создается в виде дерева объектов узлов. Сцена является корневым узлом.
— Во время отображения сцены работают действия (SKAction) и имитируется физика, для всего дерева узлов.
— Вы создаете собственные сцены наследованием класса SKScene.
Читать далее

Swift, SceneKit, SpriteKit, Metal

Закончилась стартовая презентация WWDC 2014, по итогам можно сказать только одно — Apple прокатила всех кроме девелоперов). Поэтому предлагаю небольшой обзор новинок: Swift, SceneKit, SpriteKit, Metal. Погнали Читать далее