Рекомендации по C # (Mono) / Java 3D Game Engine [закрыто]

14

Можете ли вы порекомендовать хороший игровой движок на C # для кроссплатформенной разработки (Win / Mac / Linux, меня не волнуют консоли)?

У меня есть некоторый опыт работы с необработанным OpenGL, и я поиграл с привязками Java и JMonkeyEngine. Однако я несколько разочарован этими решениями, и я попробовал Ogre3D, который казался действительно многообещающим, но я бы не стал разрабатывать с PITA, который является C ++.

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

Может быть, есть и отличное Java-решение, о котором я не знаю?

Рауль
источник
Это должен быть C # - как насчет Java?
Дейв О.
1
Мне, конечно, было бы интересно, что вы порекомендуете.
Рауль
Я соответственно отредактировал вопрос
Рауль
Я прокомментировал соответствующий ответ
Дейв О.

Ответы:

14

Unity на самом деле использует Mono в своей задней части. Хотя во многих руководствах по написанию сценариев используется JavaScript, на самом деле вы можете полностью программировать Unity на C # / Mono.

Джефф
источник
Хотя Linux нет.
Кадж
Это отличный вариант для Win / Mac. Единство очень приятно.
Corv1nus
1
Мой ответ тоже. Единство это здорово. Позор о поддержке Linux, но, возможно, она когда-нибудь придет.
BerggreenDK
3

JMonkeyEngine действительно самый рекомендуемый 3D-движок для Java. Xith3D иногда рекомендуется в качестве альтернативы, так как это также графический движок в стиле сцены.

Вы можете использовать LWJGL или JOGL, но это не столько движки, сколько библиотеки, и вы будете писать сырой OpenGL.

Я не рекомендую Java3D, хотя, я думаю, что это почти заброшенный.

Я думаю, что LWJGL - лучшее, что вы получите, но опять же, это игровая библиотека, а не графический движок. OGRE - графический движок сцены, такой как JMonkeyEngine; LWJGL для Java - это то же самое, что SDL для C ++. Он предоставляет функции для OpenGL, аудио и ввода, и вы должны работать с этим. Мне лично нравится такая сила.

Ricket
источник
Я боялся этого. Я использовал JMonkeyEngine 1 и 2, но я не удовлетворен их методами разработки, и это ухудшается с JME3. Я думаю, что эти парни знают свои 3D-вещи, но не имеют ни малейшего представления о здравомыслящих методах разработки Java, не обижайтесь Я, конечно, знаю LWJGL и JOGL, но я не хочу реализовывать свой собственный API графа сцены и т. Д. (Пока, по крайней мере).
Рауль
@Raoul Вот что я бы порекомендовал: легковесная графическая библиотека Java, короткий LWJGL. Документация немного скудная, но обычно это всего лишь оболочка для OpenGL. Так что если вы немного знакомы с OpenGL, вы скоро почувствуете, что знакомы с LWJGL, плюс есть хорошие учебники. Tribaltrouble.com, например, был сделан с LWJGL :-)
Дейв О.
3

Я бы посмотрел на Ardor3D и еще раз взглянул на JMonkeyEngine.


Ardor3D

Созданный первоначальным разработчиком (-ями) JMonkeyEngine, который решил, что необходим чистый перерыв, чтобы они могли начать все сначала и использовать весь накопленный опыт, разрабатывая его для создания лучшего API и платформы.

Люди, которых я знаю, которые использовали Ardor3D, могут очень положительно сказать о его дизайне и API. Он находится в стадии активной разработки и имеет хорошее сообщество и хорошую API-документацию, хотя учебники немного ограничены, и, как правило, вы должны быть знакомы с концепциями трехмерного программирования, чтобы иметь возможность его освоить.


JMonkeyEngine

Это лидерство сообщества JMonkeyEngine, которое оставили разработчики Ardor3D, с момента выпуска JME3, которое устраняет ряд недостатков в дизайне JME2, становится все сильнее и сильнее.

Существует достаточно документации, включая учебные пособия и множество проектов, использующих его. Если у вас были проблемы с JMonkeyEngine 2 или более ранней версией, стоит взглянуть на версию 3.


другие

Чарльз Гудвин
источник
1

Аксиома 3D Engine основан на C # порт Огре. Он имеет DirectX, OpenGL и XNA рендеры, поэтому он очень переносим, ​​хотя некоторые платформы не очень активно поддерживаются.

Микайла Хатчинсон
источник
Кроме того, он поставляется с отличным редактором.
drxzcl
1

Взгляни на Ploobs Engine , сейчас он поддерживает XNA 4, он с открытым исходным кодом и имеет много интересных функций:

thelinuxlich
источник
0

Посмотрите на http://www.devmaster.net/engines/search.php, а также ознакомьтесь с платформой XNA.

Дэнни Варод
источник
1
Официальная платформа XNA Framework ограничена Windows и XBox360, но я верю, что есть попытка перевести ее на платформу Mono (выполните поиск по «MonoXNA»).
Майк Штробель
0

OpenTK используется для MonoGame . На данный момент MonoGame поддерживает только 2D API XNA, но вы упомянули, что у вас есть опыт работы с OpenGL, поэтому вы можете использовать оболочку OpenTK для создания 3D-графики. Вы также можете найти несколько библиотек графов сцен, которые реализованы в C # или C ++ с помощью оболочек C #.

Что касается аудио, OpenTK оборачивает OpenAL, или если вы хотите что-то более надежное и планируете выпустить игру в качестве бесплатного программного обеспечения, то FMOD ничего не стоит использовать. Это становится дорогим, если вы хотите взимать плату за свою игру. Более дешевой альтернативой будет BASS .

michael.bartnett
источник