Agile язык для 2d прототипов игры? - PullRequest
5 голосов
/ 10 февраля 2011

Иногда (читай: когда мой жених позволяет) я люблю создавать прототипы разных игр или похожих на игру идей, которые у меня есть. Обычно я использую Java или C # (пока не xna), потому что это те языки, с которыми я больше всего практикуюсь. Однако я хотел бы узнать что-то более подходящее для гибкой разработки; язык, на котором было бы легче выбивать быстрые прототипы.

На моей работе я недавно работал с более слабыми (слабыми / динамически типизированными) языками, особенно с python и groovy, и я думаю, что что-то подобное подойдет для того, что я ищу.

Итак, мой вопрос: What languages (and framework/engine) would be good for rapidly developing prototypes of 2d game concepts?

Несколько заметок:

  • Мне не нужно молниеносное быстродействие. В этом случае я бы предпочел простоту разработки над производительностью.
  • Я хотел бы использовать язык со здоровым сообществом, что для меня означает достаточное количество поддерживаемых сторонних библиотек.
  • Мне бы хотелось, чтобы этот язык был кроссплатформенным, я работаю на различных операционных системах и хотел бы что-то переносимое с минимальными усилиями.
  • Я не могу представить, что использую язык без приличных опций для отладки и поддержки подсветки синтаксиса редактора.

Примечание. Если вам известна библиотека / фреймворк Java или C #, которые, по вашему мнению, упрощают создание прототипов игр, я также открываю для себя что-то новое для этих языков

Ответы [ 5 ]

3 голосов
/ 10 февраля 2011

У меня были отличные ранние результаты с использованием Clojure для разработки 2D-игр.

Причины этого:

  • Динамический язык - отлично подходит для интерактивного прототипирования с использованием REPL , например, в Roguelike I'mразрабатывая, вы можете играть в игру, одновременно интерактивно запрашивая / манипулируя игровым состоянием
  • Чрезвычайно продуктивно (как только вы получите руку с синтаксисом Лиспа) - мне, вероятно, нужно написать меньше строк Clojure, чемлюбой другой язык из-за макросов, функций более высокого порядка, STM и т. д.
  • Он отлично взаимодействует с Java, поэтому вы можете напрямую позаимствовать все фантастические библиотеки с открытым исходным кодом Java-библиотеки .например, Swing / Java2D отлично подходит для простых 2D-игр, но вы могли бы пойти до конца и использовать что-то вроде jMonkeyEngine , если вы действительно этого хотите.Вы также можете использовать все библиотеки Java netowrking и IO и т. Д.
  • Производительность в целом хорошая - хотя по умолчанию она должна быть динамической за счет абсолютной скорости, вы можете добавить примитив / типподсказки, чтобы получить очень высокую производительность, если вы попали в узкое место.
  • Кроссплатформенный - работает везде, где вы можете найти JVM, без необходимости перестройки / перекомпиляции.Приложения с графическим интерфейсом прекрасно работают на всех платформах, если вы придерживаетесь чистых Java-библиотек, таких как Swing.Вы также можете создавать апплеты или запускать их через веб-запуск Java, если хотите запустить в браузере.
  • Отличное сообщество - само сообщество Clojure небольшое, но поддерживающее, дружелюбное, инновационное и быстро растущее.И это также является частью огромного / широкого сообщества Java, поэтому у вас есть огромная экосистема проверенных библиотек и инструментов, когда они вам нужны.
3 голосов
/ 10 февраля 2011

Python + pyglet или cocos2d

Я использовал pyglet для создания прототипа игры для iPhone, которую я недавно закончил.Работать с ним было радостно и определенно быстро.

1 голос
/ 10 февраля 2011

Microsoft SmallBasic

Разработка настолько проста, насколько это возможно, проверьте размещенные приложения - исходные коды прилагаются.Еще одним преимуществом является то, что вы можете повторно использовать свои знания .NET.

Самой большой проблемой здесь является мультиплатформенность - его приложения работают с использованием Silverlight, который является своего рода кроссплатформенным (Windows + MacOS X, Moonlight для Linux,но я не уверен, что он поддерживает SmallBasic).Но AFAIK среда разработки только для Windows.

1 голос
/ 10 февраля 2011

Проверьте PyGame на http://www.pygame.org/news.html

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

Для C # использование быстрой формы Windows или приложения WPF в сочетании с примитивами рисования также хорошо работает.

0 голосов
/ 10 февраля 2011

В зависимости от типа игры, которую вы ищете, прототип AS3 / Flex является правильным выбором. Flash Develop - приличная IDE с открытым исходным кодом, а сам SDK - с открытым исходным кодом.

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

...