2012-02-01 19 views
3

Я в настоящее время разрабатываю игру для android & iphone & Я хочу знать, следует ли мне разрабатывать, используя анимацию кадра за кадром, требующую много последовательности изображений или использование Opengl для создания анимации?Является ли opengl необходимым для разработки мобильных игр?

Что рекомендуется в случае разработки игр для обработки изображений?

Также для Iphone, что я должен начать с среди различных механизмов, обеспечиваемых (Cocas2D, Core Animation, Core Image, кварц и т.д.)

+0

Можете ли вы объяснить немного лучше о двух вариантах здесь? Вы можете визуализировать разные изображения с помощью OpenGL. Поэтому я не понимаю, как это выбор. Кроме того, ваш второй вопрос - это отдельный вопрос (а не конструктивный, поскольку это просто приглашение для обсуждения). –

ответ

0

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

Но использование 3D-анимаций может быть хорошим, если у вас есть средства для создания активов.

Итак, реальный ответ на ваш вопрос: нет необходимости использовать 3D (я предполагаю, что это то, что вы подразумеваете под OpenGL). Но это может быть лучший способ пойти, в зависимости от ваших потребностей.

На iPhone я рекомендую Cocos2D в качестве рамки, так как он имеет много приятных функций и довольно стабилен. Это не значит, что другие плохи. Просто, что Кокос хорош. :)

5

Я разберу свой ответ на 3 раздела: iOS, Android и Windows Phone, так как это самые распространенные мобильные операционные системы.

IOS

OPENGL не является необходимым, если вы не хотите, чтобы сделать высокопроизводительные игры. Это означает, что вы можете нарисовать простые 2d-файлы по программному обеспечению (cpu), но вы не сможете нарисовать удивительные 3D-миры (эго-шутер, 3D-гоночные игры и т. Д.) Или 2-е игры со слишком сложными эффектами. В новых версиях iOS (не помню фактическую версию) материал 2d ui также аппаратно ускоряется. Для использования opengl вы должны использовать стороннюю библиотеку, такую ​​как вы упомянули.

Android

Здесь в основном так же, как на IOS применяется - Вам не нужно использовать OpenGL, но если вы у вас есть больше возможностей в сложности, графики и гибкости.

До версии Android 3.0 (API 11) вы можете включить аппаратное ускорение даже для двухмерной холст-графики.

Windows Phone 7

Здесь вы определенно не будете использовать OpenGL. Какие? Не удивительные игры в wp7? Хех, конечно, это имя Direct3D 9. Это подвеска MS для open source opengl. Direct3d, короче говоря, намного проще в использовании, имеет намного больше возможностей и, в основном, обеспечивает лучшую производительность. И все это, даже direct3d 9 немного устарело, текущая версия - 11.1, что действительно потрясающе. Im ни wp7, ни windows fanboy, но direct3d просто получил более простой apis. Дополнительно Visual Studio обеспечивает лучшую интеграцию для разработки игр (XNA + VS).

Разное

Я программировал на всех трех платформах, в основном на Android, таким образом, говоря: Разработка игр на Android является самым сложным на всех трех, потому что нет никакой прямой поддержки со стороны IDE и он быстро может успокойся.Я рекомендую использовать стороннюю библиотеку, такую ​​как LibGDX, которую я делаю. Затем идет iOS, что обеспечивает небольшую поддержку XCode для разработки игр. И, наконец, Windows Phone 7, где Visual Studio обеспечивает полноценную поддержку разработки игр.

Заключение

Наконец сказал: Для простой обработки изображений (вращение, перевод) вам не нужно OPENGL. Для сложных транзисторов, даже если они 2d, вы действительно должны использовать openGL. Лично я никогда не буду делать игру без аппаратного ускорения - из-за производительности и незначительной гибкости. Вы не можете сказать, что произойдет в будущем!

+0

«Direct3d, короче говоря, намного проще в использовании, имеет намного больше возможностей и, как правило, демонстрирует лучшую производительность». Это утверждение является ложным/спорно и мнение одного человека. Если хотите, я могу указать вам на обратное. – GrendleM

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