Я хотел разработать простой образец проекта, где у меня есть изображение игрока, у меня есть логика для прыжка этого игрока с помощью простой UIViewAnimation теперь я хочу сделать этот объект игрока или прогулка как я могу достичь этого обычным UIViewAnimation вид вещей без использования cocos2D или OpenGL. Любая помощь приветствуется заранее.Простая UIViewAnimation для движения объекта
ответ
привет здесь также один пример проекта я надеюсь, что это поможет вам понять ....
образец кода Here
Если вы хотите сделать это с помощью UIViewAnimation
то вам придется создать ряд изображений, известных как ImageView анимации, в котором вы должны отобразить каждый работающий образ или ходьбе изображение. Это создаст впечатление, что изображение идет или работает. Тогда вам не понадобится openGL или cocos2d.
BTW wat do u хотите достичь?
спасибо за ответ, я просто пытаюсь подготовить статью, в которой основное внимание уделяется базовая задача программирования c, здесь я хочу показать пример демонстрационного проекта, где объект запускается и перескакивает в макете. –
http://liehacker.dyndns.org/blog/wp-content/uploads/Picnic.zip. Может быть, эта ссылка поможет вам :) – IronManGill
Классический способ сделать это в играх 2d - создать спрайт с кадрами анимации запуска для персонажа игрока. Spritesheet - это растровое изображение, состоящее из сетки вспомогательных изображений. Каждое вспомогательное изображение содержит один кадр анимации запуска. Чтобы воспроизвести анимацию прогона вперед, вам нужно создать список вспомогательного изображения для отображения для каждого номера кадра. Анимация запуска начнется с кадра 0 и будет воспроизводиться с заданной частотой кадров. Вы можете создать таймер, который периодически срабатывает в конце каждого кадра. Когда таймер срабатывает, увеличьте число кадров. Затем используйте номер кадра, чтобы индексировать в список вспомогательных изображений, чтобы выбрать правильное вспомогательное изображение для отображения текущего кадра анимации. Недействительный вид, содержащий изображение проигрывателя, и когда система запрашивает просмотр плеера для воспроизведения, нарисуйте суб изображение для текущего кадра анимации. Запуск анимации повторяется в цикле, пока проигрыватель работает. Чтобы зацикливать анимацию, вы должны проверить значение счетчика кадров после того, как он будет увеличен при срабатывании таймера. Если значение счетчика кадров равно количеству кадров анимации для анимации запуска, сбросьте счетчик кадров на ноль. Затем используйте счетчик кадров для индекса в списке упорядоченных вспомогательных изображений для анимации. Проигрыватель должен также перемещаться в том направлении, в котором игрок запускается каждый раз, когда срабатывает таймер анимации. Вы вычисляете расстояние, на которое можно перемещать представление игрока, умножая время между кадрами анимации на скорость игрока.
Чтобы нарисовать текущий кадр анимации эффективно, сохраните вспомогательные изображения как объекты NSValue, содержащие CGRect в NSArray. Каждый CGRect является суб-прямоугольником, содержащим рамку анимации в спрайте. Дополнительный прямоугольник можно использовать для обрезания кадра анимации из спрайта, чтобы рисовать только один кадр анимации, когда спрайт втягивается в вид плеера. Spritesheet должен быть смещен за счет начала суб прямоугольника, так что верхний левый из кадра анимации совпадает с левым верхним углу игрового представления. Счетчик кадров используется в качестве индекса для поиска текущего кадра анимации из массива.
Спасибо за образец, я получил точный снимок –
@GrahamBell продолжает задавать вопросы .... – Spynet