2013-03-01 4 views
0

Я пытаюсь придумать метод «сорта программных» оправляемых спрайтов в игре. Цель этого заключается в том, чтобы избежать создания ~ 20-50 кадров каждого спрайта (очень много времени), а затем запустить цикл для последовательности кадров, создавая таким образом желаемую анимацию. Ниже приведен один пример спрайта, который я хотел бы оживить. Желаемая анимация должна давать «волны» изображению, происходящим в центре и расширяющимся наружу. Это заставит акварель выглядеть живым или как будто она еще влажная и мерцающая. Я использую Cocos2D, поэтому каждый спрайт уже имеет эти методы: перемещение, поворот, масштабирование. Моя первоначальная мысль - использовать систему частиц Cocos2D, чтобы попытаться создать этот эффект, но я беспокоюсь об эффективности работы системы, возможно, около 50 спрайтов. Есть ли способ лучше?Анимация спрайта программно

'play game button'

ответ

2

То, что вы хотите достичь, вероятно, лучше всего сделать с настраиваемой вершиной/пиксельным шейдером. К сожалению, не многие примеры плавают вокруг, поэтому вам нужно посмотреть. Но чтобы вы начали, посмотрите here, там может быть один рядом с вашими желаниями. Остерегайтесь, шейдеры могут быть сложными и вряд ли являются «переходом от хранилища с открытым исходным кодом» к вашему типу программного кода. Требуется некоторая настройка, ваш пробег будет отличаться.

для взрыва 'intro' на openGL, шейдеры и прочее, если вы склонны, this blog был очень полезен для меня. Следуйте ссылкам.

+0

+1 Это также хороший ответ. Остерегайтесь, пользовательские шейдеры могут занять некоторое время, чтобы получить хорошее представление и работать, как вы хотите. – dqhendricks

+0

hahaha ... yep yep yep ... твердая кривая обучения, но я начинаю пожинать плоды. – YvesLeBorg

0

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

Большинство людей используют предварительно созданные плитки для воды, которые оживляют. Таким образом, у каждой плитки будет 4 кадра анимации или что-то еще, и при создании вы будете устанавливать каждый из них для анимации через эти 4 кадра.

Возможно, вы также захотите изучить действие CCRipple3D.

Смежные вопросы