На какой платформе разрабатывать веб-игры? - PullRequest
8 голосов
/ 11 марта 2010

Я думаю о написании новой веб-игры и спрашиваю себя, есть ли у кого-нибудь какие-либо предложения относительно того, какую платформу мне выбрать.

Игра будет основана на 2D спрайтах, но должна поддерживать приличную частоту кадров в секунду (вероятно, будет одновременно перемещаться до 20 вещей). Все это будет управляться с помощью мыши.

Я пользуюсь .NET ежедневно, поэтому Silverlight кажется мне естественным выбором, но я хочу убедиться, что как можно больше людей смогут играть в него ...

  • Могут ли игры Silverlight разрабатываться прямо из Visual Studio (у меня VS 2008) или мне нужно дополнительное программное обеспечение (и стоит ли оно ...)
  • Какие ограничения есть у Silverlight в отношении версии .NET (могу ли я использовать .NET 3.5, например?)
  • Какие физические движки я могу использовать?
  • Будет ли Flash лучшим выбором? Существуют ли для этого бесплатные среды разработки (это хорошо)? (Меня не волнует вопрос обучения)
  • Является ли Java еще вариантом?

Так что я просто хотел получить отзыв о том, что для меня лучше всего использовать в простой 2D-игре на основе сети.

EDIT:

Можете ли вы предоставить больше информации? является это один игрок / мультиплеер? какие такой жанр? будет ли много участвует классический интерфейс (много форм с большим количеством кнопок / флажков, датагрид и т. д.)? будет много анимации и эффектов?

  • Одиночная игра с «волнами атаки» врагов
  • враги - это единственное, что движется, игрок просто указывает и нажимает
  • нет классического интерфейса, просто нажмите на кнопки (без списков / выпадающих списков и т. Д.)
  • минимальная анимация и эффекты, только графические требования - движение врагов (что потребует небольшой анимации)

Ответы [ 6 ]

6 голосов
/ 11 марта 2010

Я также заинтересован в сетевых 2-мерных играх. Я лично предпочитаю Silverlight, потому что:

  1. Я уже знаком с c # /. Net.
  2. У этого есть много возможностей, даже если это не так много, как полномасштабный WPF. Я слышал, что LINQ хорош для игр. Локальное хранилище также может быть плюсом. Существует богатый выбор элементов управления, которые вы можете использовать для частей игры. Честно говоря, WPF проигрывает Silverlight с точки зрения интересных элементов управления.
  3. Это абсолютно бесплатно. Вам необходимо скачать инструментарий silverlight для VS, но это не проблема.

Одна крутая вещь - вы можете делать полноэкранные дисплеи. Я также обнаружил, что он достаточно быстр (на моем ноутбуке Core2 Duo) для обработки приличного количества объектов. Тот факт, что Silverlight станет важной частью winmobile 7, также является хорошим моментом (хотя нам нужно будет посмотреть, как это получится).

Существует множество игр с поддержкой Silverlight, чтобы вы могли увидеть возможности.

Полагаю, главный минус - это мобильность и заставляет людей устанавливать «еще один плагин». Очевидно, что у Flash самая широкая база пользователей, но если ваша игра достаточно приличная, люди, вероятно, не будут возражать против установки плагина. Это безболезненная установка.

С точки зрения физических движков, FarseerPhysics , о которых упоминал TomTom, наиболее популярен.

Есть еще одна вещь, которая мне показалась действительно крутой и убедительной: http://www.codeplex.com/silversprite. С сайта:

Запуск игр XNA без изменений кода в Silverlight 3. Только графика на основе SpriteBatch, без 3D. Поскольку игра компилируется в простой код Silverlight, она будет работать везде, где может Silverlight. [выделение добавлено]

Подход XNA-in-Silverlight потенциально очень хорош (особенно для более сложных игр, в которых вы, возможно, захотите заработать), потому что это также открывает вам доступ к Xbox с минимальными усилиями по переносу. Однако у меня нет никакого опыта в этом, поэтому я не могу комментировать дальше.

Редактировать в ответ на редактирование ОП:

Поскольку ваша игра звучит даже проще, чем я себе представлял, если вы не возражаете против кривой обучения или потенциальных трудностей с подходом чистого HTML + CSS + Javascript (который на самом деле может быть не таким уж большим), я скажу, может быть, это лучший маршрут в конце концов. Это из-за портативности.

Тем не менее, я ленивый, и мне все равно, если несколько человек пропустят мою игру, поэтому я просто буду придерживаться серебряного света. = Р

2 голосов
/ 11 марта 2010

Если вы хотите пойти по пути HTML + JavaScript, вы можете взглянуть на processing.js . Это порт Javascript (автор Джон Резиг) языка обработки.

Плюсы:

  • Абсолютно бесплатно.
  • Простой синтаксис.
  • Портативность. Нет плагинов.

Минусы:

  • Все еще в разработке, некоторые функции обработки (например, 3D-функции) еще не перенесены

Кроме того, посмотрите игру защиты башни Джона Резига в Processing.js.

2 голосов
/ 11 марта 2010

Если вам нужна максимальная играбельность, сделайте это со всеми HTML и javascript и даже не используйте canvas, и тогда игра будет работать практически везде, включая мобильные. Вы можете сбалансировать, какая дополнительная работа может вам помешать против разработки для Flash или Silverlight и очень ограниченной мобильной аудитории. Вы также можете проверить processing.js.

1 голос
/ 11 марта 2010

Как заявил Бенни, Silverlight - отличная платформа, если вы уже знакомы с .NET, и большая часть необходимых вам инструментов встроена в Visual Studio (VS2010 имеет встроенный конструктор, но текущая версия RC не ' t поддержка следующего Silverlight 4).

Отличная особенность Silverlight - это возможность использовать графический процессор. Это должно обеспечить хороший прирост производительности. Я не знаю, предлагает ли Flash это.

Время выполнения Silverlight очень мало (до 5 МБ). И вы можете легко включить поддержку вне браузера, чтобы ваша игра могла быть запущена с помощью ярлыка на рабочем столе, например, без необходимости запуска браузера (и в режиме онлайн). Silverlight 4 добавляет возможность использовать повышенные привилегии (это дает вам доступ к собственному сетевому стеку вместо изолированного стека браузера). С SL4 вы также получаете поддержку веб-камеры, если это важно для ваших игр.

1 голос
/ 11 марта 2010

ИМХО Java по-прежнему является опцией, в частности JavaFX (http://www.javafxgame.com может быть хорошей отправной точкой).

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

0 голосов
/ 11 марта 2010
  • Silverlight МОЖЕТ нуждаться в дополнительных инструментах для Visual Studio, но это бесплатная загрузка. По сути, 2008 был сделан до Silverlight, поэтому вам нужно скачать инструмент для него.

  • Silverlight работает в ограниченной версии - прочитайте документацию.

  • В общих чертах я бы поехал .NEt 4.0, Silverlight 4.0, Visual Studio 2010 - все это за углом, и вы все равно будете развивать дольше, чем месяц.

  • Java - не извините, почему. Я имею в виду, теоретически да, но если вы человек .NET, у вас больше знаний, siverlight - это XAML (аналогичный WPF опыт, всегда приятный). Зачем вам все это для использования Java?

  • Вспышка - ЧЕРТ, НЕТ;) Серьезно;) Вы не хотите иметь с этим дело, если не обязаны.

  • Физический движок - понятия не имею. Нужно проверить. Не уверен, что есть много для этого. Ты гуглил? http://www.codeplex.com/FarseerPhysics появляется первым.

Я думаю, что это хороший подход. Silverlight - это небольшая загрузка, поэтому я не думаю, что вы потеряете слишком много людей. Я бы сделал это.

...