Рекомендуемый 2D-игровой движок для прототипирования [закрыт]

Какой высокоуровневый игровой движок вы бы рекомендовали разработать прототип 2D-игры на окнах? (или mac /linux, если хотите)

То, что я подразумеваю под «высоким уровнем», включает (но определенно не ограничивается):

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

Мне кажется, что Flash - это пресловутый слон в комнате для этого запроса, но я очень хотел бы видеть разные ответы на основе всех видов языков или SDK.

76 голосов | спросил Thomas Dufour 1 Jam1000000amThu, 01 Jan 1970 03:00:00 +030070 1970, 03:00:00

26 ответов


31

Я использовал pygame , и у него много положительных результатов:

  • это библиотека для Python, которая является языком высокого уровня
  • у него хорошая четкая документация
  • у него активное сообщество.

Pygame - это оболочка вокруг SDL, кросс-платформенной 2D-графической библиотеки. Pygame также имеет обертки для звука, музыки и т. Д. Обратите внимание, что несмотря на то, что Python является языком программирования высокого уровня, pygame (по большей части) представляет собой довольно низкоуровневую графическую библиотеку.

ответил Dominic Cerisano 8 MonEurope/Moscow2014-12-08T23:59:34+03:00Europe/Moscow12bEurope/MoscowMon, 08 Dec 2014 23:59:34 +0300 2014, 23:59:34
35

Если вы хотите посмотреть на другие вещи. Вы можете проверить Löve (который использует Lua)

ответил Dominic Cerisano 8 MonEurope/Moscow2014-12-08T23:59:34+03:00Europe/Moscow12bEurope/MoscowMon, 08 Dec 2014 23:59:34 +0300 2014, 23:59:34
20

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

ответил Dominic Cerisano 8 MonEurope/Moscow2014-12-08T23:59:34+03:00Europe/Moscow12bEurope/MoscowMon, 08 Dec 2014 23:59:34 +0300 2014, 23:59:34
18

GameMaker выглядит как хороший вводный игровой прототип или инструмент для создания. Он основан на перетаскивании «без необходимости писать одну строку кода», поэтому выглядит нацеленным на новичков. (Я никогда не использовал его, просто произошло через него, но их веб-сайт, безусловно, выглядит скользким.:)

ответил Dominic Cerisano 8 MonEurope/Moscow2014-12-08T23:59:34+03:00Europe/Moscow12bEurope/MoscowMon, 08 Dec 2014 23:59:34 +0300 2014, 23:59:34
17

Ангел (C ++) и AngelXNA (C #) стоит посмотреть.

ответил Dominic Cerisano 8 MonEurope/Moscow2014-12-08T23:59:34+03:00Europe/Moscow12bEurope/MoscowMon, 08 Dec 2014 23:59:34 +0300 2014, 23:59:34
14

Адам Атомник Flixel также стоит упомянуть. Простой, современный, голой игровой движок, написанный во Flash. Вы можете узнать это за несколько минут, а не дней. И использование Flash (или Processing /Java) позволяет вам избежать одной из самых опасных ошибок прототипирования: вы не можете использовать код прототипа на любой серьезной платформе. Это игра, которую вы хотите прототипировать, а не код.

ответил Dominic Cerisano 8 MonEurope/Moscow2014-12-08T23:59:34+03:00Europe/Moscow12bEurope/MoscowMon, 08 Dec 2014 23:59:34 +0300 2014, 23:59:34
8

Это не специально игровой движок, а посмотрите Обработка . Вот некоторые из хороших моментов:

  • Требуется минимальная настройка. Вы можете получить что-то на экране через 30 секунд.
  • Может окунуться в Java в любое время для таких вещей, как коллекции, но много синтаксиса рисования, анимации и взаимодействия гораздо менее подробное, чем прямая Java.
  • Все, что вы пишете, будет совместимо с Processing.js , поэтому вы сможете работать с ним в любом месте, где есть современный браузер.
ответил Dominic Cerisano 8 MonEurope/Moscow2014-12-08T23:59:34+03:00Europe/Moscow12bEurope/MoscowMon, 08 Dec 2014 23:59:34 +0300 2014, 23:59:34
8

Я использую Novashell.

Я использовал Game Maker в качестве основного инструмента, но у меня была проблема с YoYo Games (я не буду здесь объяснять), затем я нашел Novashell.

Novashell - это ДЕЙСТВИТЕЛЬНО инструмент для создания прототипов, созданный человеком, который также создал «ЛОРД» («Легенда о красном драконе») и «Динк Смолвуд», чтобы он мог быстро сделать игры для Ludumdare (конкурс на 48 часов игры), редактор карт, поддерживает скрипты LUA, выполнен на C ++, имеет лицензию zlib (это означает, что вы можете делать все, что хотите, с источником, не считая, что вы изобрели вещи, которых у вас не было), и имеет физический движок (Box2D) , система частиц (Linear Particle для ClanLIB), поддерживает MikMod и Fmod, работает в Linux, Mac и Windows, прост в использовании, и вы можете задавать вопросы Seth!

ИЗМЕНИТЬ: Сет - это имя программиста (это также сделал ЛОРД)

ответил Dominic Cerisano 8 MonEurope/Moscow2014-12-08T23:59:34+03:00Europe/Moscow12bEurope/MoscowMon, 08 Dec 2014 23:59:34 +0300 2014, 23:59:34
7

Game Maker - это очень круто, он в основном делает все, что вы описали. Он имеет значки перетаскивания для начинающих и код для продвинутых пользователей. Однако, после использования C ++ исключительно в течение года, возвращение в Game Maker было ... болезненным.

Downsides:

  • Никаких пользовательских структур данных (ничего похожего на C-структуры или классы C ++, просто «объекты»)
  • Динамически типизированный (введите «varAwesome = 0» и о, мой бог, это просто появилось)
  • YoYo Games - это зло.

расквитаться:

  • Прост в использовании, трудно усвоить
  • Много ли вещей низкого уровня для вас.
  • Яркое и активное сообщество

Я начал создавать игры с помощью Game Maker в 2002 году.:)

ответил Dominic Cerisano 8 MonEurope/Moscow2014-12-08T23:59:34+03:00Europe/Moscow12bEurope/MoscowMon, 08 Dec 2014 23:59:34 +0300 2014, 23:59:34
5

Я использую DarkBASIC Professional в течение 2 лет и наслаждаюсь этим. Если вы не можете позволить себе купить полную версию, вы можете просто загрузить бесплатную версию, поддерживаемую рекламой. Создатели игр, создатели DBPro, также выпускают очередной информационный бюллетень, который делает довольно хорошее чтение, плюс у них довольно большое активное сообщество; все вышесказанное можно найти здесь:

https://www.thegamecreators.com/

Проверьте это, надеюсь, вы можете что-то там найти.

Cheers, BFM

ответил Dominic Cerisano 8 MonEurope/Moscow2014-12-08T23:59:34+03:00Europe/Moscow12bEurope/MoscowMon, 08 Dec 2014 23:59:34 +0300 2014, 23:59:34
5

cocos2d , который использует pyglet . Я использую эти две библиотеки Python для прототипирования.

Намного легче работать, чем pygame.

Я удивлен, что он еще не упоминался!

ответил Dominic Cerisano 8 MonEurope/Moscow2014-12-08T23:59:34+03:00Europe/Moscow12bEurope/MoscowMon, 08 Dec 2014 23:59:34 +0300 2014, 23:59:34
5

Я бы рекомендовал Scirra Construct для начинающих и быстрого прототипирования.

Сам игровой движок абстрагируется, поэтому вы можете полностью сосредоточиться на своей игре. Плагины обеспечивают дополнительную функциональность, «код» состоит из перетаскиваемых блоков событий, условий и действий и т. Д.

Конструкция находится в активной разработке и также имеет активное сообщество.

ответил Dominic Cerisano 8 MonEurope/Moscow2014-12-08T23:59:34+03:00Europe/Moscow12bEurope/MoscowMon, 08 Dec 2014 23:59:34 +0300 2014, 23:59:34
3

Прокрутка Game Development Kit версии 2 - вторая крупная итерация (переписывание) IDE разработки игр и рамки для такого рода прототипов и простое развитие 2D-игры. В качестве второй итерации он использует современные языки (C #) и технологии (отражение на пользовательском коде), а также разрабатывает некоторые фундаментальные недостатки в дизайне (теперь он позволяет размещать спрайты непосредственно в редакторе карт, а не только путь, который должен быть внешне связан с спрайтом, и он не пытается быть таким редактором Wysywig, потому что есть некоторые вещи, которые вы хотите выполнить только во время выполнения и другие, которые вы хотите только во время разработки).

Некоторые из представляющих интерес особенностей:

  1. Подавляющее большинство кода структуры раскрывается и редактируется в среде IDE. Если вам не нравится, как работает встроенная функция PushTowardSprite, вы можете вызвать редактор и изменить его или добавить свой собственный, который появится в списке справа вместе со всеми встроенными командами.
  2. Вы упомянули о возможности рисования полигонов. Эта структура основана на OpenTK, которая представляет собой оболочку .NET вокруг OpenGL. Таким образом, у вас есть все возможности OpenGL у вас под рукой. В коде фреймворка, который вы можете редактировать внутри IDE, есть один класс «Display.cs», добавьте все необходимые черты чертежа.
  3. Большая часть фреймворка ориентирована на физику боковой скроллера (идет по склонам, платформам верховой езды и т. д.), поэтому многие из этого кода уже сделаны для вас; конечно, вы можете настроить или проигнорировать его для других двухмерных типов игр. Игра Tetris написана вместе с ней.
  4. Прокрутка Parallax
  5. Альфа-полупрозрачность может быть встроена в графику или применена к чертежу любой графики.
  6. Все данные проекта сохраняются в одном XML-файле (набор данных .NET). Внешние редакторы могут получить доступ к файлу, тем самым расширяя возможности, доступные в IDE, если это необходимо.
  7. Проекты сначала скомпилированы для проектов C # (совместимых с Visual Studio), а затем с EXE-файлами (со всеми встроенными ресурсами). При необходимости вы можете загрузить проект в Visual Studio для расширенного интерфейса для отладки или разработки кода.
ответил Dominic Cerisano 8 MonEurope/Moscow2014-12-08T23:59:34+03:00Europe/Moscow12bEurope/MoscowMon, 08 Dec 2014 23:59:34 +0300 2014, 23:59:34
3

С PreviewLabs, компанией, специализирующейся на быстром прототипировании , мы часто используем Unity3D для прототипа 2D-игр.

Хотя это 3D-движок, есть несколько способов использовать его для 2D-прототипирования. Это основные преимущества:

  • Он может использоваться для платформ для ПК и Mac.
  • Платные версии также работают для iOS и Android, позволяя вам увидеть, как ваша концепция будет работать на другой платформе.
  • Он поставляется с физическим движком, который вы также можете использовать при прототипировании 2D-игр.

Я пишу серию сообщений в блогах о том, как Unity3D можно использовать для прототипирования 2D-игр; это первый: Прототипирование 2D-игр в Unity3D

ответил Dominic Cerisano 8 MonEurope/Moscow2014-12-08T23:59:34+03:00Europe/Moscow12bEurope/MoscowMon, 08 Dec 2014 23:59:34 +0300 2014, 23:59:34
3

Slick Framework , написанный на Java, является хорошим выбором. Это то, что я впервые использовал, чтобы научиться программировать. Преимущество заключается в том, что он выполняет кросс-платформу, может создавать апплеты для Интернета и имеет отличную поддержку инструментов /библиотек через Eclipse или что-то еще, что есть в среде Java. Тем не менее, я в конечном итоге переключился на Flash просто потому, что, если вы хотите распространять свои игры, нет ничего проще или эффективнее.

ответил Dominic Cerisano 8 MonEurope/Moscow2014-12-08T23:59:34+03:00Europe/Moscow12bEurope/MoscowMon, 08 Dec 2014 23:59:34 +0300 2014, 23:59:34
2

Я начал использовать FlashPunk для своего первого проекта разработки игр, и до сих пор он был действительно гладким. Это Flash-библиотека, созданная для игрового дизайна. Это игровой движок с голыми костями, похожий на Flixel, но больше похож на GameMaker, более удобный для новичков, чем у Flixel. FlashPunk вместе с редактором Ogmo очень эффективны, чтобы получить право на разработку дизайна без необходимости тратить много времени на кодирование. Более подробную информацию обо всех трех из них можно найти в Flash Dojo .

ответил Dominic Cerisano 8 MonEurope/Moscow2014-12-08T23:59:34+03:00Europe/Moscow12bEurope/MoscowMon, 08 Dec 2014 23:59:34 +0300 2014, 23:59:34
1

Я остановлю упоминание Game Maker. Я бы сказал, если каждый игровой движок попадает в континуум из «простого в использовании /обучения, но ограниченного в том, что вы можете делать», чтобы «действительно мощный, но занимает много времени, чтобы овладеть» ... Game Maker - это в значительной степени определение простой в использовании экстремум. Как говорит Циклоп, большинство базовых функций (спрайты, создание игровых объектов, движение, обнаружение столкновений, подсчет очков и т. Д.) Являются значками перетаскивания мышью. На самом деле это включает довольно сильный язык сценариев, который вы также можете использовать, как только вы начнете получать хорошие результаты ... но когда вы начнете писать всю свою игру на своем встроенном языке сценариев, возможно, пришло время «окончить» язык сценариев, например, Flash или PyGame.

Тем не менее, у меня был большой успех с Game Maker в качестве новичка, не требующего программирования инструмента для учеников игрового дизайна, и он не может рекомендовать его достаточно.

ответил Dominic Cerisano 8 MonEurope/Moscow2014-12-08T23:59:34+03:00Europe/Moscow12bEurope/MoscowMon, 08 Dec 2014 23:59:34 +0300 2014, 23:59:34
1

Я очень начинаю играть в игры, и я был впечатлен тем, что сумел сделать что-то из pygame так быстро и легко. Python + SDL = легкость.

ответил Dominic Cerisano 8 MonEurope/Moscow2014-12-08T23:59:34+03:00Europe/Moscow12bEurope/MoscowMon, 08 Dec 2014 23:59:34 +0300 2014, 23:59:34
1

Хорошо, если это для прототипирования, вам действительно не нужен гладкий back-end с управлением ресурсами и тому подобным. Пока вы можете загружать графику и отображать их, вы в основном устанавливаете. Я иду против зерна и предлагаю «написать свое». Вы потеряете нулевое время, выясняя, как использовать чей-то api. Если ваша запись на самом деле не вариант, DirectX поставляется с образцовой базой, которая предоставляет большинство базовых услуг. Не связанный рамками означает, что он не теряет времени, следуя его правилам, и не ограничивается его охватом. Я был прототипом как работа, и мои самые быстрые результаты были тогда, когда я мог просто вставлять код, не беспокоясь о карьере или не сдерживаясь. 2D-обложке действительно нужно не больше, чем загрузка изображений и возможность их отображения в x, y - возможно, с масштабированием, вращением и если вы хотите быть трипсированным, шейдером. Остальное можно закодировать по мере необходимости. Для прототипа, который есть - код не будет приятным.

ответил Dominic Cerisano 8 MonEurope/Moscow2014-12-08T23:59:34+03:00Europe/Moscow12bEurope/MoscowMon, 08 Dec 2014 23:59:34 +0300 2014, 23:59:34
1

Torque-2d от GarageGames - отличный игровой движок с отличным сообществом, некоторые действительно впечатляющие дополнения и встроенная поддержка Windows, Mac и Wii и даже iOS (по отдельной лицензии). Он стоит 99 долларов.

Unity3d (вы можете разработать 2d игры на нем) - еще один очень хороший высококачественный игровой движок с относительно низкий барьер для входа. Опять же, отличная община и действительно крутая многоплатформенная поддержка, включая iOS и Android, в дополнение к Win /Mac, Wii, Xbox, Playstation и сети.

Отличным игровым движком для iPhone является cocos2d для iOS.

ответил Dominic Cerisano 8 MonEurope/Moscow2014-12-08T23:59:34+03:00Europe/Moscow12bEurope/MoscowMon, 08 Dec 2014 23:59:34 +0300 2014, 23:59:34
1

Ваш вопрос о том, что нужно, чтобы написать прототип 2D-игры, но я думаю, что есть что-то еще: самое большое преимущество Flash - это то, что нужно, чтобы поделиться этим прототипом с другими. Почти у всех уже установлен Flash. Я могу загрузить SWF и передать URL кому-то через чат или электронную почту. Нет загрузки, без установки, без распаковки, без exe, без перекрестной платформы. Я закончил тем, что выбрал Flash, потому что так легко делиться и получать отзывы. Итерация включает в себя повторную загрузку и повторную загрузку, и мне нужна быстрая итерация для прототипирования. (Javascript + Canvas /SVG - еще один полезный вариант, и я уверен, что скоро мы увидим библиотеки, такие как Flixel /Flashpunk для JS).

ответил Dominic Cerisano 8 MonEurope/Moscow2014-12-08T23:59:34+03:00Europe/Moscow12bEurope/MoscowMon, 08 Dec 2014 23:59:34 +0300 2014, 23:59:34
1

HGE Кажется, Great.It есть Редактор Particle, Редактор графического интерфейса, И используется про-программистами.

ответил Dominic Cerisano 8 MonEurope/Moscow2014-12-08T23:59:34+03:00Europe/Moscow12bEurope/MoscowMon, 08 Dec 2014 23:59:34 +0300 2014, 23:59:34
1

Всегда есть GLBasic .

Это довольно высокий уровень языка и недавно расширяет мобильную поддержку.

  • Это 2D и 3D
  • Бесплатно для некоммерческих
  • Основные команды спрайтов с столкновением пикселей или блоков.
  • Напишите один раз и разверните на многих устройствах и платформах (в основном)
  • Поддержка Box2D через обертку (поисковые форумы)
  • ТИПЫ пользовательских данных с функциями (близкими к классу, но отсутствующими функциями OOP)
  • Может получить спрайт, перемещающийся по экрану за короткое время с несколькими строками кода.
ответил Dominic Cerisano 8 MonEurope/Moscow2014-12-08T23:59:34+03:00Europe/Moscow12bEurope/MoscowMon, 08 Dec 2014 23:59:34 +0300 2014, 23:59:34
1

PixieEngine - это веб-среда разработки и разработки игр. Он использует CoffeeScript для сценариев и предоставляет встроенные редакторы для пиксельного искусства и звуковых эффектов.

PixieEngine IDE

ответил Dominic Cerisano 8 MonEurope/Moscow2014-12-08T23:59:34+03:00Europe/Moscow12bEurope/MoscowMon, 08 Dec 2014 23:59:34 +0300 2014, 23:59:34
1

Я был в похожем квесте и наткнулся на несколько других инструментов, не упомянутых здесь:

  • Stencylworks - это среда IDE /dev для создания флеш-игр очень быстро и легко, визуальный интерфейс для существующих модулей. он, кажется, на 100% свободен, а не с открытым исходным кодом, а ключевыми преимуществами являются плавное кодирование без кодирования (это не похоже на скрипт /визуальный интерфейс Gamemaker). Я беспокоюсь о границах визуального интерфейса - неясно, насколько правильно объектно-ориентированное оно действительно; у него, безусловно, есть простой материал; по-видимому, редактор сценариев javascript где-то там, но еще не видел. Кажется, он предназначен для совместной разработки по своему ядру (чат встроен в среду IDE, все ресурсы и поведение размещены на сервере, вне зависимости от пользователя). Это может быть БОЛЬШОЙ для разработки прототипов. Я еще ничего не делал с этим, но учебник был мертв простым, и нет никаких признаков временной шкалы (поэтому нормальная Flash настолько плоха для игр, что метафорика времени не подходит для игр)

Я попробовал еще несколько более странных.

Алиса - это 3D-игра /среда для разработчиков, которая является открытым исходным кодом - выглядит довольно неуклюжей.

Kodu, выходящий за рамки Gamemaker в легком /ограниченном спектре, нацеленном на детей, позволяет создавать игры с контроллером Xbox. бесплатно от Microsoft Research

Scratch, из MIT Labs, является бесплатным и действительно базовым 2D, нацеленным на то, чтобы вовлечь детей в кодирование. Визуально неуклюжий. Гибкий, хотя.

Возвращаясь к логотипу Papert, компания Microworlds JR позволяет вам писать логотип, якобы. Необходимо, чтобы обновление было полезным, ИМО.

Для меня это доходит до Construct 2 vs Stencylworks ... хотя я проверю, как легко построить достойную 2D-игру в Unity, как я знаю, и как Unity.

ответил Dominic Cerisano 8 MonEurope/Moscow2014-12-08T23:59:34+03:00Europe/Moscow12bEurope/MoscowMon, 08 Dec 2014 23:59:34 +0300 2014, 23:59:34
0

FlatredBall Это бесплатный (не открытый исходный код) 2.5D (2d с 3d примитивами) игровой движок для XNA и Silverlight. Подробнее в функции .

ответил Dominic Cerisano 8 MonEurope/Moscow2014-12-08T23:59:34+03:00Europe/Moscow12bEurope/MoscowMon, 08 Dec 2014 23:59:34 +0300 2014, 23:59:34

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132