LINUX.ORG.RU

Игровой движок

 , , ,


2

1

Привет ЛОР, платиновый вопрос - хочу попробовать написать что-нибудь простенькое в 3D. Есть в этом вашем^Wнашем Open Source что-нибудь для этого?

Из того что хотелось бы иметь:

  • Платформы: Linux, Windows, Android, остальные приветствуются
  • Работа с сетью
  • Поддержка Blender (до этого с ним баловался, приятная вещь)
  • ЯП значения не имеет, но наличие C/C++, Python привязок приветствуется.

Из того что смотрел - порадовали Unigine и Unity3D, но оба платные и нешвабодные, хотя у Unity3D есть хотя бы бесплатная версия, почти без всего, но поиграться хватит.

Что по поводу Torque3D и Irrlicht можно сказать? Они вроде бы оба под Android пока что не собираются.

Еще смотрел Shiva3D, это что-то странное и совсем не Free и тем более Open Source и Esenthel - тоже что-то страшное.

И еще про UDK! Для Linux его пока что нет, хотя он относительно тесно связан с Steam'ом, то что думаю скоро появится.

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

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

Что по поводу Torque3D и Irrlicht можно сказать?

Сравниваете теплое с мягким. Unity, Unigine, Shiva, Torque это все ИГРОВЫЕ ДВИЖКИ, и сравнивать их с рендром Irrlicht некорректно.

По каждому из них мое мнение такое:
Unity - отличный, дешевый движок, есть свои камни, но это пожалуй лучшее из дешевых на сегодня решение, в секторе портативных девайсов, PC не его рынок.
UDK - не работал с ним, отпугнули рояльти.
Unigine - закрытый со всех сторон, не подойти не подъехать, с инди-девелоперами не больно-то охотно идут на контакт, завышенные цены да еще и требования к разработчикам, выдают индивидуально — на*** такой нужен.
Shiva - оптимизация хромает, лучше брать юнити, к тому же с последним будет проще и удобней + обширное сообщество.
Torque - не работал, не смотрел, но часто натыкался на треды с проблемами, которые не видны на поверхности, но возникают в процессе разработки, в основном по физике. Хотя сейчас код открыт, так что вполне можно рассматривать как вариант.
Irrlicht - это рендр, то есть, вы сначала пол-года из него будете игровой движок делать, прежде чем начнете делать игру. Простой для обывателя, компактный, легко осваивается, но устарел. Вместо него рекомендую Ogre (есть примеры для мобильных платформ, но сам я не смотрел это), либо OSG (вкусности по работе с огромными сценами).

Поддержка Blender (до этого с ним баловался, приятная вещь)

Блендер кстати сам движок неплохой, для поиграться вам его явно хватит с головой, причем с удобствами.

makeB ()
Ответ на: комментарий от makeB

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

По поводу Irrlicht извиняюсь, думал что там не только рендер. Ogre даже относительно давно смотрел, показался неплохим.

А что с Unity на PC именно не так? Если конечно говорить не о играх уровня Far Cry, TES и т. п., а скорее о простой инди игре уровня Humble Bundle.

Ну и можно все таки ссылку :3

voronin ()
Ответ на: комментарий от yacuken

Ноп, спасибо, по описанию и платформам неплохо, посмотрю поближе, он еще и от RiM, хотя страничка конечно пугает.

voronin ()
Ответ на: комментарий от voronin

по описанию и платформам неплохо

таки тут много описаний и платформ.
много старья конечно. но поискать есть из чего

yacuken ★★★★ ()

Либо попробуй скомпилить Ogre под андроид, либо жди, пока в libgdx появится поддержка 3д, её сейчас пилят.

PolarFox ★★★★★ ()
Ответ на: комментарий от makeB

Irrlicht - это рендр, то есть, вы сначала пол-года из него будете игровой движок делать

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

PolarFox ★★★★★ ()
Ответ на: комментарий от arte-at-marte

Пробовал писать, не очень понравилось, документация и сообщество относительно небольшие, Java, но может его и буду разбирать, хотя тут Unity заинтересовали.

voronin ()
Ответ на: комментарий от voronin

Да вы что? Оо Документация у jmonkeyengine просто отличная. Особенно по сравнению с другими движками. На нем много игр выходит. И это крупнейший свободный движoк на java. Так что с сообществом тоже все не идеально, но норм. У него даже форк есть - ardor3d.

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

Кстати не обязательно именно java использовать. Наверно даже лучше будет Clojure, Scala или Groovy.

arte-at-marte ()
Ответ на: комментарий от voronin

А что с Unity на PC именно не так? Если конечно говорить не о играх уровня Far Cry, TES и т. п., а скорее о простой инди игре уровня Humble Bundle.

С ним все нормально, просто в секторе PC конкуренция очень большая, unity нечем тягаться с unreal engine (не udk), cry engine. А если рассматривать решения подешевле, то и там есть куча более дешевых решений для PC, то же Leadwerks Engine <который к тому же с исходниками продается, в юнити вы исходники просто так не купите. А вот если рассматривать мобильные платформы, то юнити там вне конкуренции, самое дешевое и удобное решение.

Ну и можно все таки ссылку :3

Cafu 3D — Но вряд ли он вам подойдет, он довольно устарел, хотя физику там сейчас bullet подкрутили, но все равно, бсп-пространство это каменный век, замучаетесь ждать билда перед каждым изменение уровня, это уж не говоря про лейтмапы. И платформы только windows, linux. Но зато с открытыми исходниками, среди опенсорса я более целостных игровых движков не встречал.

makeB ()
Ответ на: комментарий от makeB

Можно спросить, в чем отличие движка от рендера? Всегда считал что irrlicht именно движок, видимо что-то не понимаю

Chubakur ★★ ()
Ответ на: комментарий от Chubakur

Всегда считал что irrlicht именно движок, видимо что-то не понимаю

Видимо да, и советую посмотреть структуры современных игровых движков, в особенности на менеджер сцен (не путать с менеджером сцен рендра), структуру типов объектов, и как вся эта машина рулится. Гхм, над структурой одних только типов объектов можно спорить до посинения, приводя аргументы, контраргументы за и против нужности какого либо типа. В игровом движке единственное что вы будете писать, это интеллект ботов, новые их виды, транспорт и код меню, все остальное за вас уже написано, вам не нужно будет месяц писать разруливание сцен, а потом понимать что получилось не эффективно, и все еще многое не охвачено. Для примера, подумайте пару суток хотя бы о структуре игровых состояний, попробуйте придумать эффективную в полной мере для любого жанра, попробуйте подумать какого уровня скриптового апи достаточно/рационально, а какой уровень излишен и почему, приведите сами себе аргументы — от таких головоломок спасает покупка готового игрового движка. Хотя можете гнуть пальцы как я и пилить свой, только это дурной тон.

makeB ()

Выбирать-то не из чего. Unity3D, можно быстро набросать очень базовую реализацию идеи на js прямо в редакторе, потом решать, куда двигаться дальше.

note173 ★★★★★ ()

Я только начал пилить нечто подобное но без поддержки ведроида.

netcat ★★ ()
Ответ на: комментарий от PolarFox

libgdx это просто прекрасно! Т. к. на оба посмотрел поверхностно, трудно сравнивать с JMonkeyEngine, но крайне годно! Почему его не было ни в одной выдаче гугла, сколько запросов не задавал. Может я еще что-то подобное пропустил?

voronin ()
Ответ на: комментарий от voronin

libgdx — лучшее, что я видел в нише простых кроссплатформенных игровых движков, странно что в гугле оно не лежит на поверхности. Но, повторюсь, поддержку 3д там стали делать совсем недавно. И актуальной документации помимо javadoc практически нет.

PolarFox ★★★★★ ()
Ответ на: комментарий от voronin

Если собираешься уплотняться в джаву, то для сетевых дел советую глянуть kryonet, простую в использовании джавалибу для обмена сообщениями по tcp/udp.

PolarFox ★★★★★ ()
Ответ на: комментарий от voronin

Решил допилить cube 2, т.к. довольно мощный и в коде реально разобраться.

netcat ★★ ()

как насчет Ogre3D? оно швабодное фичастое и куча платформ, в том числе андроид + под петон бинды есть и вроде как под сисярп

I-Love-Microsoft ★★★★★ ()

И еще про UDK!

Мне показался интересным, но людей готовых его осилить ух как мало. Из минусов - необходимость учить UnrealScript. Проект на нем забросил по причине - «нет людей» :)

Я бы порекомендовал начать путь из 2D игр, там все гораздо проще и «дешевле». Мой любимый 2D движок: cocos2d-x.

anonymous_ ()
Ответ на: комментарий от I-Love-Microsoft

Рендер же только. Ну можно конечно прикрутить остальное, тот же Bullet для физики и под андройд есть, кстати в libgdx он и используется, но полагаю что будет сложно, хотя тоже интересно.

Вообще решил пока что разбираться с libgdx, может действительно с 2D начать, т. к. из представленных в треде кроссплатформенных решений (ну включая андройд), судя по всему, самое годное это Unity, но вот SDK у них под Linux нет, только собирать под онтопик можно. Может конечно сделать билд сервер в виртуалке с виндой, но там же наверняка в SDK еще куча всего нужного. UDK действительно выглядит сложно несколько, во всяком случае чтобы сходу и просто из интереса, ну и SDK опять же отсутствует. Gameplay еще надо бы посмотреть, ну и еще раз JMonkeyEngine, может просто не распробовал. Спасибо всем, тред закрывать не буду, вдруг кто еще чего интересно кинет, а то так бы про libgdx и не узнал.

voronin ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.